Token导航 LogoToken导航TokenDH.com
MCP Server Postgres logo
数据服务stdio官方级别未说明来源级核验

MCP Server Postgres

MCP Server

PG-MCP是为PostgreSQL数据库设计的模型上下文协议服务器,提供AI代理发现、连接、查询和理解PostgreSQL数据库的全面API,支持多数据库连接和丰富的目录信息。

工具数

4

提示词数

0

GitHub Stars

0

资源数

0
数据分析AI代理PostgreSQLClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

tanster1234

提供方

tanster1234

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

PostgreSQL模型上下文协议(PG-MCP)服务器

PostgreSQL数据库的模型上下文协议(MCP)服务器,具有增强的AI代理功能。

概述

PG-MCP是 模型上下文协议 PostgreSQL数据库。它通过MCP面向资源的架构,为人工智能代理发现、连接、查询和理解PostgreSQL数据库提供了一个全面的API。

此实现建立并扩展了 参考Postgres MCP实现 有几个关键的增强功能:

  1. 完整服务器实施:作为具有SSE传输的完整服务器构建,用于生产使用
  2. 多数据库支持:同时连接到多个PostgreSQL数据库
  3. 丰富的目录信息:从数据库目录中提取并公开表/列描述
  4. 扩展上下文:提供有关PostgreSQL扩展(如PostGIS和pgvector)的详细基于YAML的知识
  5. 查询说明:包括一个用于分析查询执行计划的专用工具
  6. 强健的连接管理:具有安全连接ID处理的数据库连接的正确生命周期

特性

连接管理

  • 连接工具:注册PostgreSQL连接字符串并获取安全连接ID
  • 断开工具:完成后显式关闭数据库连接
  • 连接池:通过池化实现高效的连接管理

查询工具

  • pg_query:使用连接ID执行只读SQL查询
  • pg_解释:以JSON格式分析查询执行计划

架构发现资源

  • 列出带有描述的模式
  • 列出带有描述和行数的表
  • 获取包含数据类型和描述的列详细信息
  • 查看表约束和索引
  • 探索数据库扩展

数据访问资源

  • 示例表数据(带分页)
  • 获取近似行数

扩展上下文

PostgreSQL扩展的内置上下文信息,如:

  • PostGIS:空间数据类型、函数和示例
  • pg载体:矢量相似性搜索功能和最佳实践

可以通过YAML配置文件轻松添加其他扩展名。

安装

先决条件

  • Python 3.13+
  • PostgreSQL数据库

使用Docker

# Clone the repository
git clone https://github.com/stuzero/pg-mcp.git
cd pg-mcp

# Build and run with Docker Compose
docker-compose up -d

手动安装

# Clone the repository
git clone https://github.com/stuzero/pg-mcp.git
cd pg-mcp

# Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install using uv
uv sync --frozen

# Run the server
python -m server.app

用法

测试服务器

存储库包括用于验证服务器功能的测试脚本:

# Basic server functionality test
python test.py "postgresql://username:password@hostname:port/database"

# Claude-powered natural language to SQL conversion
python client/claude_cli.py "Show me the top 5 customers by total sales"

claude_cli.py 脚本需要环境变量:

# .env file
DATABASE_URL=postgresql://username:password@hostname:port/database
ANTHROPIC_API_KEY=your-anthropic-api-key
PG_MCP_URL=http://localhost:8000/sse

对于AI代理

与代理一起使用的示例提示:

Use the PostgreSQL MCP server to analyze the database. 
Available tools:
- connect: Register a database connection string and get a connection ID
- disconnect: Close a database connection
- pg_query: Execute SQL queries using a connection ID
- pg_explain: Get query execution plans

You can explore schema resources via:
pgmcp://{conn_id}/schemas
pgmcp://{conn_id}/schemas/{schema}/tables
pgmcp://{conn_id}/schemas/{schema}/tables/{table}/columns

建筑

此服务器构建于:

  • 主控程序:模型上下文协议基础
  • FastMCP:MCP的Python库
  • asyncpg:异步PostgreSQL客户端
  • 格式:有关扩展上下文信息

安全考虑

  • 默认情况下,服务器以只读模式运行(通过事务设置强制执行)
  • 连接详细信息永远不会在资源URL中公开,只有不透明的连接ID
  • 在初始连接期间只需要发送一次数据库凭据

贡献

欢迎投稿!扩展区域:

  • 其他PostgreSQL扩展上下文文件
  • 更多模式自检资源
  • 查询优化建议

目录标签

目录标签

数据分析AI代理PostgreSQLClaudePython本地部署数据库管理查询分析模式发现

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP