PostgreSQL MCP Server
简介
让 AI 客户端直接连接 PostgreSQL 数据库,执行只读查询、分析表结构、生成 SQL 报表。对数据分析、DBA 工作流非常实用。
核心能力
| 工具 | 功能 |
|---|---|
query | 执行 SQL 查询(只读模式) |
list_tables | 列出所有表 |
describe_table | 查看表结构 |
list_schemas | 列出 schema |
配置
Claude Code
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres",
"postgresql://user:password@localhost:5432/mydb"
]
}
}
}
安全配置(推荐只读账号)
-- 创建只读账号
CREATE USER ai_readonly WITH PASSWORD 'your_password';
GRANT USAGE ON SCHEMA public TO ai_readonly;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO ai_readonly;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO ai_readonly;
实战场景
场景 1:自然语言查询
请查询过去 7 天注册用户数,
按日期分组,
并生成趋势分析
场景 2:表结构理解
列出数据库所有表,
找出与"订单"相关的表,
说明它们之间的关系
场景 3:数据异常排查
查询 orders 表中 amount 字段为负数的记录,
列出可能的业务原因
注意事项
- 默认只读:server 默认以只读模式运行,禁止 DML/DDL
- 连接池:每次查询新建连接,高并发场景建议加连接池中间件
- 大结果集:默认限制 100 行,避免 OOM
- 凭证安全:连接串中的密码建议用环境变量传入
类似 Server
@modelcontextprotocol/server-mysql- MySQL 版本@modelcontextprotocol/server-sqlite- SQLite 版本- 第三方
mcp-server-mongodb- MongoDB 版本