Token导航 LogoToken导航

MCP Server · 数据服务

PostgreSQL MCP AllAccess

PostgreSQL MCP AllAccess是一个生产就绪的PostgreSQL连接池服务,提供全局连接池管理、PgBouncer集成和AWS RDS自动密码轮换功能。

stdio官方级别未说明来源级核验工具 12
数据分析PythonClaude

快速开始

作者 / 组织
yty-build
提供方
yty-build
运行时
Python

工具数量

12

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

2 个

MCP World

选型结论

PostgreSQL MCP AllAccess 属于数据服务类 MCP Server,公开资料标注 12 个工具,通过stdio 本地进程接入,适配 Claude,有可以直接复制的安装命令;接入前要先准备 密钥。

分类

数据服务

传输方式

stdio

认证方式

无需认证(安装命令里要填 密钥)

部署方式

公开资料未说明

安装与配置

安装命令

python3 deploy_with_aws_secrets.py

客户端配置示例

{
  "mcpServers": {
    "postgres-mcp-allaccess": {
      "command": "python3",
      "args": [
        "deploy_with_aws_secrets.py"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 12 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

PostgreSQL MCP 全访问权限

适用于生产的PostgreSQL MCP服务器,具备全局连接池、PgBouncer集成以及AWS RDS自动密码轮换功能。

快速入门(2分钟)

使用 AWS Secrets Manager

# 1. Set AWS credentials
export AWS_ACCESS_KEY_ID=your_key
export AWS_SECRET_ACCESS_KEY=your_secret
export AWS_REGION=us-west-2

# 2. Deploy (fetches DB credentials from AWS)
python3 deploy_with_aws_secrets.py

# 3. Restart Claude Code to connect
# The deploy script shows the URL - it's http://localhost:3000/sse

搞定!MCP服务器现已启动,Claude Code 将自动检测到它。

可选: 设置自定义的AWS密钥名称:

export AWS_SECRET_NAME=your/secret/name
export AWS_PASSWORD_SECRET_NAME=rds!your-password-id
python3 deploy_with_aws_secrets.py

不使用AWS(简单凭证)

# 1. Copy .env.example and fill in your database credentials
cd /path/to/postgres_mcp_allaccess
cp .env.example .env
# Edit .env and fill in the REQUIRED fields (first 5 lines)

# 2. Deploy (docker-compose reads .env automatically)
docker-compose up -d

# 3. Restart Claude Code to connect
# MCP server is at http://localhost:3000/sse

你将获得

✅ 全局连接池 - 最多15个到PostgreSQL的连接(可配置) ✅ 自动密码轮换 - AWS轮换密码时无停机时间 ✅ 事务级池化 - 在所有查询中高效重用连接 ✅ 已准备好投入生产 - 内置健康检查、日志记录、监控功能

它是如何工作的

Multiple Claude Sessions → MCP Server → PgBouncer → PostgreSQL
   (90+ clients)          (max 15)     (max 15)    (sees ≤15 connections)
  • PgBouncer 强制限制最大 15 个连接 到您的 PostgreSQL 数据库
  • 自动排队 - 额外请求暂存,待连接空闲时处理
  • 无需配置 - 默认设置适用于大多数使用场景

常见任务

检查它是否正在运行

curl http://localhost:3000/health
# Should show: "OK - Pool: 2/15 connections"

查看日志

docker-compose logs -f

停止服务器

docker-compose down

更改连接限制

编辑 pgbouncer/pgbouncer.ini:

default_pool_size = 10      # Max connections to PostgreSQL

然后重新部署: docker-compose up -d --build

可用工具(在Claude中使用)

查询执行:

  • list_tables - 列出模式中的表
  • execute_query - 运行任何SQL查询
  • describe_table - 查看表结构
  • execute_file - 从文件运行SQL

模式操作:

  • list_schemas - 列出所有模式
  • search_tables - 按名称模式查找表
  • get_database_context - 数据库结构概述

分析:

  • explain_query - 获取查询执行计划
  • analyze_query - 性能分析
  • suggest_indexes - 索引建议

会议/会话:

  • get_session_info - 当前会话状态
  • get_query_history - 查看查询历史

故障排除

克劳德·科德无法连接

解决方案: 部署MCP服务器后,重启Claude代码。

“池未初始化”错误

解决方案: 首先运行任何查询 - 连接池在首次使用时初始化。

容器无法启动

# Check what went wrong
docker-compose logs

# Common fixes:
# 1. Port 3000 in use: Change MCP_SSE_PORT in .env
# 2. Bad credentials: Check .env file or AWS secrets
# 3. Build cache issue: docker-compose up -d --build --force-recreate

连接超时

增加连接池超时时间(默认30秒):

export POSTGRES_POOL_TIMEOUT=60
python3 deploy_with_aws_secrets.py  # or docker-compose up -d

连接到 PostgreSQL 的连接数过多

检查你的限额:

docker exec -e PGPASSWORD='your_pass' postgres-mcp-allaccess \
  psql -h localhost -p 6432 -U your_user -d your_db \
  -c "SELECT count(*) FROM pg_stat_activity WHERE usename='your_user'"

应显示2-15个连接(不会超过 default_pool_size)。

配置

连接池设置

环境变量 (在部署前设置):

POSTGRES_MAX_CONNECTIONS=15     # MCP pool size
POSTGRES_MIN_CONNECTIONS=2      # Warm connections
POSTGRES_POOL_TIMEOUT=30        # Queue wait time (seconds)

PgBouncer 限制 (编辑 pgbouncer/pgbouncer.ini):

default_pool_size = 15          # MAX connections to PostgreSQL
min_pool_size = 2               # MIN kept alive
pool_mode = transaction         # Release after each transaction

了解这个水池

问题: 如果同时查询90个Claude会话,PostgreSQL会看到90个连接吗?

答案: 不! PostgreSQL 最多看到 15 个连接(或你设置的任意数量) default_pool_size)。

  • 自动释放连接 每次查询后
  • 额外请求队列 当连接释放时进行处理
  • 无需会话管理 - 一切都是自动的

自动密码轮换

当AWS更换您的密码时:

  1. 下一个查询因认证错误而失败
  2. MCP 从 AWS Secrets Manager 获取新密码
  3. 更新MCP池和PgBouncer
  4. 重试查询 - 成功!

零停机时间。 无需重启。

要求:

  • 使用(某工具/方法)进行部署 deploy_with_aws_secrets.py (AWS 凭据可用)
  • 已配置AWS密钥名称(自动完成)

安全

✅ 永远不要承诺:

  • .env 文件
  • *.log 文件
  • config/postgres_config.ini

✅ 可以放心提交:

  • AWS 密钥 名字 (例如,“postgres/dev/db”)
  • 数据库 主机名 (例如,“mydb.rds.amazonaws.com”)

所有敏感数据都会自动被Git忽略。

高级的

项目结构

postgres_mcp_allaccess/
├── deploy_with_aws_secrets.py   # AWS deployment script
├── docker-compose.yml            # Container orchestration
├── Dockerfile                    # Single container (MCP + PgBouncer)
├── docker-entrypoint.sh          # Startup script
├── pgbouncer/pgbouncer.ini       # Connection pool config
└── src/postgres_mcp_allaccess/
    ├── server.py                 # MCP server
    ├── database.py               # Global pool + auto rotation
    ├── pgbouncer_manager.py      # PgBouncer control
    └── transports/sse_transport.py  # HTTP/SSE transport

健康监测

# Health check endpoint
curl http://localhost:3000/health

# Check PgBouncer process
docker exec postgres-mcp-allaccess ps aux | grep pgbouncer

# View all environment variables
docker exec postgres-mcp-allaccess env | grep -E "POSTGRES|AWS|PGBOUNCER"

手动刷新密码

# Force refresh from AWS (if auto-rotation fails)
docker-compose restart

许可证

Apache许可证2.0 - 详见 许可证 文件中有详细信息。

支持

  • 问题: https://github.com/yty-build/postgres_mcp_allaccess/issues 翻译为中文是:“https://github.com/yty-build/postgres_mcp_allaccess/issues(GitHub上的问题页面链接)”。不过,通常在中文语境下,我们不会直接翻译网址,而是说明其含义,即“这是GitHub上yty-build用户或组织的postgres_mcp_allaccess项目的问题跟踪页面”
  • 讨论: https://github.com/yty-build/postgres_mcp_allaccess/讨论区(或“讨论版”)
  • 安全: 通过(以下方式)私下举报:

工具与能力

工具数量

12

资源数量

0

提示词数量

0

能力标签

PostgreSQLPython本地部署连接池PgBouncerAWSRDS数据库管理

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

用自然语言查库

不用手写 SQL,直接问数据,让模型组织查询语句。

数据巡检

定期拉指标、做对比,把异常项整理成一段说明。

打通业务数据

把数据库、数仓和接口接进同一个上下文,减少导出再上传。

选择建议

值得选的地方

  • 工具数量 12 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备密钥,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到密钥的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
PostgreSQL MCP AllAccess

MCP World · 本页

12stdio有2 个2026-05-17
Memory 9d25f64e

MCP World

9未说明未标注1 个2026-05-17
Prisma MCP Server

MCP World

0stdio有3 个2026-05-17
Astr Bot

MCP World

0stdio有1 个2026-05-17
Getzep MCP

MCP World

9stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

PostgreSQL MCP AllAccess 怎么安装?

公开资料给出的安装命令是 python3 deploy_with_aws_secrets.py,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

PostgreSQL MCP AllAccess 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

PostgreSQL MCP AllAccess 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

PostgreSQL MCP AllAccess 需要 API Key 吗?

安装命令里要填 密钥,说明还是要凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

PostgreSQL MCP AllAccess 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP