关于 PostgreSQL
PostgreSQL 是一款 MCP 服务,供大模型查看 PostgreSQL 表结构并执行只读 SQL 查询。它将列名和数据类型作为结构资源提供,查询均在只读事务中运行。
主要功能
- 01执行只读 SQL 查询
- 02查看表结构
- 03显示列名和数据类型
- 04在只读事务中运行查询
适用场景
- 01检查数据库结构
- 02对 PostgreSQL 执行只读查询
- 03向大模型提供数据库结构
MCP 相关
向 MCP 客户端提供查询工具和表结构资源。SQL 查询在只读事务中运行。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
PostgreSQL
一个提供 PostgreSQL 数据库只读访问权限的模型上下文协议服务。此服务可让大模型检查数据库架构并执行只读查询。
组件
工具
- query
- 对连接的数据库执行只读 SQL 查询
- 输入:
sql(字符串):要执行的 SQL 查询 - 所有查询均在 READ ONLY 事务中执行
资源
此服务为数据库中的每个表提供架构信息:
- 表架构(
postgres://<host>/<table>/schema)- 每个表的 JSON 架构信息
- 包含列名和数据类型
- 根据数据库元数据自动发现
在 Claude Desktop 中使用
要在 Claude Desktop 应用中使用此服务,请将以下配置添加到 claude_desktop_config.json 的 "mcpServers" 部分:
Docker
- 在 macOS 上运行 Docker 时,如果服务在主机网络上运行(例如 localhost),请使用 host.docker.internal
- 可在 PostgreSQL URL 中添加用户名/密码:
postgresql://user:password@host:port/db-name
{
"mcpServers": {
"postgres": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp/postgres",
"postgresql://host.docker.internal:5432/mydb"]
}
}
}
NPX
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres",
"postgresql://localhost/mydb"
]
}
}
}
将 /mydb 替换为你的数据库名称。
构建
Docker:
docker build -t mcp/postgres -f src/postgres/Dockerfile .
许可证
此 MCP 服务采用 MIT License 授权。这意味着你可以自由使用、修改和分发此软件,但须遵守 MIT License 的条款和条件。更多详情请参阅项目仓库中的 LICENSE 文件。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。