
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://acuvity.ai
https://acuvity.aihttps://acuvity.ai
https://bsky.app/profile/acuvity.bsky.social
描述: 通过RDS Data API将自然语言转换为AWS Aurora Postgres的PostgreSQL查询
该镜像由Acuvity打包,并从awslabs.postgres-mcp-server的原始https://github.com/awslabs/mcp/tree/HEAD/src/postgres-mcp-server发布到我们的精选MCP服务器https://mcp.acuvity.ai。
快速链接:
| 特性 | 描述 |
|---|---|
| 隔离执行 | 所有工具在安全的容器化沙箱内运行,强制执行进程隔离,防止横向移动 |
| 默认非root用户 | 遵循最小权限原则,减少潜在安全漏洞的影响 |
| 只读文件系统 | 确保运行时不可变性,防止未授权修改 |
| 版本固定 | 通过锁定工具和依赖版本,保证部署的一致性和可复现性 |
| CVE扫描 | 使用https://docs.docker.com/scout/持续扫描镜像中的已知漏洞,支持主动缓解 |
| SBOM与溯源 | 通过嵌入元数据和可追溯的构建信息,提供完整的供应链透明度 |
| 容器签名(Cosign) | 使用https://github.com/sigstore/cosign实现镜像签名,确保容器镜像的完整性和真实性 |
Minibridge集成:https://github.com/acuvity/minibridge建立安全的Agent-to-MCP连接,支持Rego/HTTP-based策略执行 🕵️,并简化编排。
ARC容器包含https://github.com/acuvity/mcp-servers-registry/tree/main/mcp-server-aws-postgres/docker/policy.rego,提供一组运行时https://github.com/acuvity/mcp-servers-registry/tree/main/mcp-server-aws-postgres#️-guardrails,帮助执行服务的安全、隐私和正确使用规范。以下是提供的防护措施列表:
| 防护措施 | 摘要 |
|---|---|
resource integrity | 嵌入所有暴露资源的哈希值,确保其真实性并防止未授权修改,抵御供应链***和工具元数据的动态变更 |
covert-instruction-detection | 检测请求中的隐藏或混淆指令 |
sensitive-pattern-detection | 标记暗示敏感数据或文件系统暴露的模式 |
shadowing-pattern-detection | 识别覆盖或影响其他工具描述的模式 |
schema-misuse-prevention | 对输入数据强制执行严格的 schema 合规性 |
cross-origin-tool-access | 控制对外部服务或API的调用 |
secrets-redaction | 防止凭证或敏感值暴露 |
basic authentication | 允许配置共享密钥,限制对MCP服务器的未授权访问,确保仅批准的客户端可连接 |
这些控制确保了强大的运行时完整性,防止未授权行为,并为安全设计的系统操作提供基础。
[!NOTE]
默认情况下,除resource integrity外,所有防护措施均关闭。您可以单独启用或禁用每个措施,确保仅激活您环境所需的保护。
维护者:
获取帮助:
提交问题:
支持的架构:
amd64arm64基础镜像:
ghcr.io/astral-sh/uv:python3.12-alpine资源:
最新标签:
latest → 1.0.0-1.0.16 → 1.0.16使用https://github.com/sigstore/cosign验证签名:
bashcosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-aws-postgres:latest cosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-aws-postgres:1.0.16 cosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-aws-postgres:1.0.0-1.0.16
[!TIP]
鉴于mcp-server-aws-postgres的操作范围,它可以在任何地方托管。
环境变量与密钥:
AWS_PROFILE 可选(未设置)AWS_REGION 可选(未设置)AWS_ACCESS_KEY_ID 可选(未设置)AWS_SECRET_ACCESS_KEY 可选(未设置)READ_ONLY 可选(true)RESOURCE_ARN 必须设置SECRET_ARN 必须设置DATABASE_NAME 必须设置DATABASE_REGION 必须设置更多信息和额外配置可参考https://github.com/awslabs/mcp/tree/HEAD/src/postgres-mcp-server。
以下是配置大多数使用MCP提升Copilot体验的客户端的步骤。
[!NOTE]
这些集成在所有Minibridge模式下原生工作。为简洁起见,此处仅涵盖docker本地运行设置。
您可以使用以下“一键式”链接立即开始:
按 ctrl + shift + p 并输入 Preferences: Open User Settings JSON,添加以下部分:
json{ "mcp": { "servers": { "acuvity-mcp-server-aws-postgres": { "env": { "DATABASE_NAME": "TO_BE_SET", "DATABASE_REGION": "TO_BE_SET", "RESOURCE_ARN": "TO_BE_SET", "SECRET_ARN": "TO_BE_SET" }, "command": "docker", "args": [ "run", "-i", "--rm", "--read-only", "-e", "RESOURCE_ARN", "-e", "SECRET_ARN", "-e", "DATABASE_NAME", "-e", "DATABASE_REGION", "docker.io/acuvity/mcp-server-aws-postgres:1.0.16" ] } } } }
在您的工作区中创建 .vscode/mcp.json 文件,并添加以下部分:
json{ "servers": { "acuvity-mcp-server-aws-postgres": { "env": { "DATABASE_NAME": "TO_BE_SET", "DATABASE_REGION": "TO_BE_SET", "RESOURCE_ARN": "TO_BE_SET", "SECRET_ARN": "TO_BE_SET" }, "command": "docker", "args": [ "run", "-i", "--rm", "--read-only", "-e", "RESOURCE_ARN", "-e", "SECRET_ARN", "-e", "DATABASE_NAME", "-e", "DATABASE_REGION", "docker.io/acuvity/mcp-server-aws-postgres:1.0.16" ] } } }
要传递密钥,您应使用https://code.visualstudio.com/docs/copilot/chat/mcp-servers中描述的
promptString输入类型。
在 ~/.codeium/windsurf/mcp_config.json 中添加以下部分:
json{ "mcpServers": { "acuvity-mcp-server-aws-postgres": { "env": { "DATABASE_NAME": "TO_BE_SET", "DATABASE_REGION": "TO_BE_SET", "RESOURCE_ARN": "TO_BE_SET", "SECRET_ARN": "TO_BE_SET" }, "command": "docker", "args": [ "run", "-i", "--rm", "--read-only", "-e", "RESOURCE_ARN", "-e", "SECRET_ARN", "-e", "DATABASE_NAME", "-e", "DATABASE_REGION", "docker.io/acuvity/mcp-server-aws-postgres:1.0.16" ] } } }
更多信息请参见https://docs.windsurf.com/windsurf/mcp。
将以下JSON块添加到您的mcp配置文件:
~/.cursor/mcp.json.cursor/mcp.jsonjson{ "mcpServers": { "acuvity-mcp-server-aws-postgres": { "env": { "DATABASE_NAME": "TO_BE_SET", "DATABASE_REGION": "TO_BE_SET", "RESOURCE_ARN": "TO_BE_SET", "SECRET_ARN": "TO_BE_SET" }, "command": "docker", "args": [ "run", "-i", "--rm", "--read-only", "-e", "RESOURCE_ARN", "-e", "SECRET_ARN", "-e", "DATABASE_NAME", "-e", "DATABASE_REGION", "docker.io/acuvity/mcp-server-aws-postgres:1.0.16" ] } } }
更多信息请参见https://docs.cursor.com/context/model-context-protocol。
在 claude_desktop_config.json 配置文件中添加以下部分:
json{ "mcpServers": { "acuvity-mcp-server-aws-postgres": { "env": { "DATABASE_NAME": "TO_BE_SET", "DATABASE_REGION": "TO_BE_SET", "RESOURCE_ARN": "TO_BE_SET", "SECRET_ARN": "TO_BE_SET" }, "command": "docker", "args": [ "run", "-i", "--rm", "--read-only", "-e", "RESOURCE_ARN", "-e", "SECRET_ARN", "-e", "DATABASE_NAME", "-e", "DATABASE_REGION", "docker.io/acuvity/mcp-server-aws-postgres:1.0.16" ] } } }
更多信息请参见https://docs.anthropic.com/en/docs/agents-and-tools/mcp。
pythonasync with MCPServerStdio( params={ "env": {"DATABASE_NAME":"TO_BE_SET","DATABASE_REGION":"TO_BE_SET","RESOURCE_ARN":"TO_BE_SET","SECRET_ARN":"TO_BE_SET"}, "command": "docker", "args": ["run","-i","--rm","--read-only","-e","RESOURCE_ARN","-e","SECRET_ARN","-e","DATABASE_NAME","-e","DATABASE_REGION","docker.io/acuvity/mcp-server-aws-postgres:1.0.16"] } ) as server: tools = await server.list_tools()
pythonasync with MCPServerSse( params={ "url": "http://<ip>:<port>/sse", } ) as server: tools = await server.list_tools()
更多信息请参见https://openai.github.io/openai-agents-python/mcp/。
在您的客户端配置中设置:
dockerrun -i --rm --read-only -e RESOURCE_ARN -e SECRET_ARN -e DATABASE_NAME -e DATABASE_REGION docker.io/acuvity/mcp-server-aws-postgres:1.0.16直接运行:
consoledocker run -it -p 8000:8000 --rm --read-only -e RESOURCE_ARN -e SECRET_ARN -e DATABASE_NAME -e DATABASE_REGION docker.xuanyuan.run/acuvity/mcp-server-aws-postgres:1.0.16
然后在您的应用/客户端中,可配置为:
json{ "mcpServers": { "acuvity-mcp-server-aws-postgres": { "url": "http://localhost:8000/sse" } } }
您可能需要为不同工具使用不同端口。
本节假设您熟悉TLS和证书,需要:
- 具有与工具部署匹配的正确DNS/IP字段的服务器证书
- 用于签署客户端证书的client-ca
以backend模式启动服务器
-e MINIBRIDGE_MODE=backend-v $PWD/certs:/certs)添加TLS证书(推荐)-e MINIBRIDGE_TLS_SERVER_CERT=/certs/server-cert.pem-e MINIBRIDGE_TLS_SERVER_KEY=/certs/server-key.pem-e MINIBRIDGE_TLS_SERVER_KEY_PASS=optional-e MINIBRIDGE_TLS_SERVER_CLIENT_CA=/certs/client-ca.pem本地以frontend模式启动minibridge:
在您的客户端配置中,Minibridge像任何其他STDIO命令一样工作。
Claude Desktop示例:
json{ "mcpServers": { "acuvity-mcp-server-aws-postgres": { "command": "minibridge", "args": ["frontend", "--backend", "wss://<remote-url>:8000/ws", "--tls-client-backend-ca", "/path/to/ca/that/signed/the/server-cert.pem/ca.pem", "--tls-client-cert", "/path/to/client-cert.pem", "--tls-client-key", "/path/to/client-key.pem"] } } }
就是这样。
Minibridge提供许多额外功能。如需分步指南,请访问wiki。如有任何不清楚的地方,请随时联系我们!
此chart需要一些必填信息才能安装。
可选密钥:
AWS_ACCESS_KEY_ID 密钥需设置为secrets.AWS_ACCESS_KEY_ID,可通过.value或现有资源的.valueFrom设置AWS_SECRET_ACCESS_KEY 密钥需设置为secrets.AWS_SECRET_ACCESS_KEY,可通过.value或现有资源的.valueFrom设置必填环境变量:
RESOURCE_ARN 环境变量需通过env.RESOURCE_ARN设置SECRET_ARN 环境变量需通过env.SECRET_ARN设置DATABASE_NAME 环境变量需通过env.DATABASE_NAME设置DATABASE_REGION 环境变量需通过env.DATABASE_REGION设置可选环境变量:
AWS_PROFILE="" 可通过env.AWS_PROFILE=""修改AWS_REGION="" 可通过env.AWS_REGION=""修改READ_ONLY="true" 可通过env.READ_ONLY="true"修改您可以查看chart的README:
consolehelm show readme oci://docker.io/acuvity/mcp-server-aws-postgres --version 1.0.0
您可以查看可配置的values:
consolehelm show values oci://docker.io/acuvity/mcp-server-aws-postgres --version 1.0.0
使用helm安装:
consolehelm install mcp-server-aws-postgres oci://docker.io/acuvity/mcp-server-aws-postgres --version 1.0.0
默认情况下,您的MCP服务器mcp-server-aws-postgres可通过集群内的Kubernetes服务mcp-server-aws-postgres在端口8000上通过http/sse访问。您可以通过values.yaml文件的service部分更改此设置。
部署将创建一个带有healthPort的Kubernetes服务,用于活跃度探针和就绪探针。此健康端口也可用于您选择的监控栈,并在/metrics路径下暴露指标。
有关设置和运行时安全(包括防护措施激活)的更多详细信息,请参见完整的charts https://github.com/acuvity/mcp-servers-registry/tree/main/mcp-server-aws-postgres/charts/mcp-server-aws-postgres/README.md。
💬 有问题?请提交issue或联系我们 ***。
📦 欢迎贡献!
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务