AnalyticDB for Postgres MCP 服务器
AnalyticDB PostgreSQL MCP 服务器作为 AI 代理与 AnalyticDB PostgreSQL 数据库之间的通用接口。它实现了 AI 代理与 AnalyticDB PostgreSQL 的无缝通信,帮助 AI 代理检索数据库元数据并执行 SQL 操作。
服务介绍
AnalyticDB PostgreSQL MCP 服务器
AnalyticDB PostgreSQL MCP 服务器作为 AI 代理和 AnalyticDB PostgreSQL 数据库之间的通用接口。它实现了 AI 代理和 AnalyticDB PostgreSQL 之间的无缝通信,帮助 AI 代理检索数据库元数据并执行 SQL 操作。
配置
下载
从 Github 下载
git clone git@github.com:aliyun/alibabacloud-adbpg-mcp-server.git
MCP 集成
在 MCP 客户端配置文件中添加以下配置:
"mcpServers": {
"adbpg-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/adbpg-mcp-server",
"run",
"adbpg-mcp-server"
],
"env": {
"ADBPG_HOST": "host",
"ADBPG_PORT": "port",
"ADBPG_USER": "username",
"ADBPG_PASSWORD": "password",
"ADBPG_DATABASE": "database"
}
}
}
组件
工具
execute_select_sql: 在 AnalyticDB PostgreSQL 服务器上执行 SELECT SQL 查询execute_dml_sql: 在 AnalyticDB PostgreSQL 服务器上执行 DML (INSERT, UPDATE, DELETE) SQL 查询execute_ddl_sql: 在 AnalyticDB PostgreSQL 服务器上执行 DDL (CREATE, ALTER, DROP) SQL 查询analyze_table: 收集表统计信息explain_query: 获取查询执行计划
资源
内置资源
adbpg:///schemas: 获取数据库中的所有模式
资源模板
adbpg:///{schema}/tables: 列出特定模式中的所有表adbpg:///{schema}/{table}/ddl: 获取表 DDLadbpg:///{schema}/{table}/statistics: 显示表统计信息
环境变量
MCP 服务器需要以下环境变量来连接到 AnalyticDB PostgreSQL 实例:
ADBPG_HOST: 数据库主机地址ADBPG_PORT: 数据库端口ADBPG_USER: 数据库用户名ADBPG_PASSWORD: 数据库密码ADBPG_DATABASE: 数据库名称
依赖项
- Python 3.10 或更高版本
- 必需包:
- mcp >= 1.4.0
- psycopg >= 3.1.0
- python-dotenv >= 1.0.0
- pydantic >= 2.0.0
运行
# 创建并激活虚拟环境
uv venv .venv
source .venv/bin/activate # Linux/Mac
# 或
.venvScriptsactivate # Windows
# 安装依赖项
uv pip install -e .
# 运行服务器
uv run adbpg-mcp-server