使用说明

项目简介

本项目 '阿里云RDS OpenAPI MCP服务器' 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在通过阿里云的 RDS OpenAPI 接口,为大型语言模型 (LLM) 客户端提供访问和管理阿里云关系型数据库服务 (RDS) 的能力。它允许LLM客户端通过标准化的 MCP 协议,安全、便捷地调用阿里云 RDS 的各种功能,例如查询数据库实例信息、监控数据库性能、修改数据库配置等。

主要功能点

  • RDS 实例管理: 提供创建、查询RDS数据库实例的功能。
  • RDS 实例监控: 支持查询RDS实例的性能指标、错误日志和慢SQL报告,帮助用户了解数据库运行状态。
  • RDS 参数配置: 允许修改RDS实例的参数,例如调整数据库性能参数。
  • RDS 规格变更: 支持修改RDS实例的规格,例如升级或降级实例配置。
  • VPC 和 VSwitch 查询: 提供查询阿里云专有网络 (VPC) 和虚拟交换机 (VSwitch) 的功能,方便用户在创建RDS实例时选择网络环境。
  • 慢日志查询: 支持查询RDS实例的慢查询日志,用于分析和优化数据库性能。

安装步骤

  1. 安装 'uv': 按照 Astral 官方文档GitHub README 说明安装 'uv' 包管理器。

  2. 安装 Python: 使用 'uv' 安装 Python 3.12 版本,命令为 'uv python install 3.12'。

  3. 配置阿里云凭证: 确保您已拥有阿里云账号,并已开通 RDS 服务。配置阿里云 Access Key ID 和 Access Key Secret 环境变量,以便服务器可以访问您的阿里云资源。

    export ALIBABA_CLOUD_ACCESS_KEY_ID=$your_access_id
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET=$your_access_key

服务器配置

MCP 客户端需要配置 MCP 服务器的启动命令才能连接到 '阿里云RDS OpenAPI MCP服务器'。以下是配置示例,以 JSON 格式提供:

"mcpServers": {
  "rds-openapi-mcp-server": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/alibabacloud-rds-openapi-mcp-server/src/rds_openapi_mcp_server", // 请替换为您的仓库 src/rds_openapi_mcp_server 目录的绝对路径
      "run",
      "server.py"
    ],
    "env": {
      "ALIBABA_CLOUD_ACCESS_KEY_ID": "your_access_id",      // 请替换为您的阿里云 Access Key ID
      "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "your_access_key" // 请替换为您的阿里云 Access Key Secret
    }
  }
}

配置参数说明:

  • '"rds-openapi-mcp-server"': 服务器名称,客户端用此名称引用。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv' 包管理器。
  • '"args"': 启动命令的参数列表:
    • '"--directory"': 指定服务器代码所在的目录。请将 '"/path/to/alibabacloud-rds-openapi-mcp-server/src/rds_openapi_mcp_server"' 替换为您实际的代码路径。
    • '"run"': 'uv' 命令的子命令,用于运行 Python 脚本。
    • '"server.py"': 服务器启动脚本的文件名。
  • '"env"': 启动服务器所需的环境变量:
    • '"ALIBABA_CLOUD_ACCESS_KEY_ID"': 阿里云 Access Key ID。请将 '"your_access_id"' 替换为您实际的 Access Key ID。
    • '"ALIBABA_CLOUD_ACCESS_KEY_SECRET"': 阿里云 Access Key Secret。请将 '"your_access_key"' 替换为您实际的 Access Key Secret。

基本使用方法

  1. 下载代码: 从 GitHub 仓库克隆代码到本地。
    git clone https://github.com/aliyun/alibabacloud-rds-openapi-mcp-server.git
  2. 配置环境变量: 设置阿里云 Access Key ID 和 Access Key Secret 环境变量。
  3. 启动 MCP 服务器: 使用 'uv' 运行 'server.py' 脚本。您可以选择使用 SSE 或 Stdio 传输协议,通过设置 'SERVER_TRANSPORT' 环境变量来指定,例如 'export SERVER_TRANSPORT=sse;' 或 'export SERVER_TRANSPORT=stdio;'。 默认使用 Stdio。
    uv --directory alibabacloud-rds-openapi-mcp-server/src/rds_openapi_mcp_server run server.py
    服务器成功启动后,您将看到类似 'Uvicorn running on http://0.0.0.0:8000' (如果使用 SSE) 或其他指示服务器正在运行的信息。
  4. 配置 MCP 客户端: 在您的 MCP 客户端(如 Cline 或 Claude)中,配置上述的服务器配置信息,指定服务器名称、启动命令、参数和环境变量。
  5. 通过 MCP 客户端调用工具: 配置完成后,您就可以在 MCP 客户端中使用预定义的工具,例如 'describe_db_instances' (查询实例列表) 或 'create_db_instance' (创建实例) 等,来与阿里云 RDS 服务进行交互。 具体工具的使用方法请参考代码中的工具函数定义和参数说明。

信息

分类

数据库与文件