使用说明

项目简介

AnalyticDB PostgreSQL MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为 AI Agent 提供访问阿里云 AnalyticDB PostgreSQL 数据库的统一接口。它允许 AI Agent 通过标准化的方式检索数据库元数据、执行 SQL 查询以及进行数据库管理操作,从而实现 AI 应用与数据库的无缝集成。

主要功能点

  • 资源管理: 提供对 AnalyticDB PostgreSQL 数据库 Schema、表结构、表统计信息等资源的访问能力。
  • 工具集成: 内置多种数据库操作工具,包括执行 SELECT/DML/DDL SQL 查询、分析表统计信息、获取查询执行计划等。
  • 标准化接口: 遵循 MCP 协议,提供标准的 JSON-RPC 接口,方便各种 MCP 客户端集成。
  • 易于部署: 通过简单的配置和启动命令即可运行,支持环境变量配置数据库连接信息。

安装步骤

  1. 下载代码: 从 GitHub 仓库克隆代码到本地:
    git clone https://github.com/aliyun/alibabacloud-adbpg-mcp-server.git
    cd alibabacloud-adbpg-mcp-server
  2. 创建并激活虚拟环境 (可选但推荐):
    uv venv .venv
    source .venv/bin/activate   # Linux/macOS
    .venv\Scripts\activate  # Windows
  3. 安装依赖: 安装项目所需的 Python 包:
    uv pip install -e .

服务器配置

MCP 客户端需要配置以下 JSON 对象以连接到 AnalyticDB PostgreSQL MCP Server。请根据实际安装路径和数据库连接信息进行修改。

{
  "adbpg-mcp-server": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/alibabacloud-adbpg-mcp-server",  // 修改为 alibabacloud-adbpg-mcp-server 仓库的绝对路径
      "run",
      "adbpg-mcp-server"
    ],
    "env": {
      "ADBPG_HOST": "your_adbpg_host",        // 替换为您的 AnalyticDB PostgreSQL 主机地址
      "ADBPG_PORT": "your_adbpg_port",        // 替换为您的 AnalyticDB PostgreSQL 端口号
      "ADBPG_USER": "your_adbpg_username",      // 替换为您的 AnalyticDB PostgreSQL 用户名
      "ADBPG_PASSWORD": "your_adbpg_password",  // 替换为您的 AnalyticDB PostgreSQL 密码
      "ADBPG_DATABASE": "your_adbpg_database"    // 替换为您的 AnalyticDB PostgreSQL 数据库名
    }
  }
}

配置参数说明:

  • '"adbpg-mcp-server"': 服务器名称,客户端用于标识和引用该服务器。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv run' 运行 Python 脚本。
  • '"args": [...]"': 传递给 'uv run' 命令的参数列表:
    • '"--directory"': 指定脚本所在的目录,请替换为 alibabacloud-adbpg-mcp-server 仓库的绝对路径
    • '"run"': 'uv run' 命令的子命令,用于运行 Python 模块。
    • '"adbpg-mcp-server"': 要运行的 Python 模块名,对应 'adbpg_mcp_server.py' 文件。
  • '"env": {...}': 设置服务器运行所需的环境变量,用于配置数据库连接:
    • '"ADBPG_HOST"': AnalyticDB PostgreSQL 主机地址。
    • '"ADBPG_PORT"': AnalyticDB PostgreSQL 端口号。
    • '"ADBPG_USER"': AnalyticDB PostgreSQL 用户名。
    • '"ADBPG_PASSWORD"': AnalyticDB PostgreSQL 密码。
    • '"ADBPG_DATABASE"': AnalyticDB PostgreSQL 数据库名。

注意: 请务必将 '/path/to/alibabacloud-adbpg-mcp-server' 替换为您实际的代码仓库路径,并将 'your_adbpg_host'、'your_adbpg_port' 等占位符替换为您的 AnalyticDB PostgreSQL 数据库的真实连接信息。请勿将密码等敏感信息硬编码在配置文件中,建议使用更安全的配置管理方式。

基本使用方法

  1. 确保 AnalyticDB PostgreSQL MCP Server 已成功启动并运行。
  2. 在 MCP 客户端中配置上述服务器连接信息。
  3. 使用 MCP 客户端提供的功能,通过资源 URI 或工具名称与服务器进行交互,例如:
    • 列出所有 Schema: 使用资源 URI 'adbpg:///schemas'。
    • 列出指定 Schema 的表: 使用资源 URI 'adbpg:///{schema}/tables',将 '{schema}' 替换为实际的 Schema 名称。
    • 执行 SQL 查询: 调用 'execute_select_sql' 工具,并提供 SQL 查询语句作为参数。

具体操作请参考您的 MCP 客户端的使用文档。

信息

分类

数据库与文件