AWS Aurora DSQL MCP Server

AWS Aurora DSQL MCP Server

AWS Aurora DSQL MCP 服务器是一个专门的 MCP 服务器,提供对 Aurora PostgreSQL 兼容数据库的分布式 SQL (DSQL) 访问,支持 LLM 驱动的应用程序和 AI 助手安全查询和管理 Amazon Aurora 集群中的大型分布式关系数据。

Author: awslabs


查看协议

什么是 AWS Aurora DSQL MCP 服务器?

AWS Aurora DSQL MCP 服务器是 Aurora 的 PostgreSQL 兼容分布式 SQL 引擎与模型上下文协议 (MCP) 之间的集成点。它允许 LLM 驱动的应用程序通过标准化的 MCP 端点本地访问、查询和操作 Aurora 集群中的分布式关系数据。通过将分布式 SQL 与 MCP 生态系统连接,它使 AI 助手和工作流程能够直接在 Aurora 上支持复杂、可扩展的分析工作负载,充分利用高级 SQL 特性、并发性和高可用性。

如何配置

  1. 先决条件

    • 一个启用了分布式 SQL 的活动 Amazon Aurora PostgreSQL 兼容集群。
    • 访问集群资源 ARN 和必要的 AWS 凭证。
    • 安装了 uv 的 Python 环境。
  2. 服务器参数(在你的 MCP 客户端配置文件中进行配置,如 mcp.json):

    {
      "awslabs.aurora-dsql-mcp-server": {
        "command": "uvx",
        "args": ["awslabs.aurora-dsql-mcp-server@latest"],
        "env": {
          "AWS_PROFILE": "your-aws-profile",
          "AWS_REGION": "us-east-1",
          "AURORA_RESOURCE_ARN": "arn:aws:rds:us-east-1:123456789012:cluster:my-aurora-cluster",
          "AURORA_SECRET_ARN": "arn:aws:secretsmanager:us-east-1:123456789012:secret:mysecret",
          "AURORA_DATABASE": "your_database"
        }
      }
    }
    
  3. 环境变量

    • AURORA_RESOURCE_ARN: Aurora 集群的 ARN。
    • AURORA_SECRET_ARN: 包含数据库凭证的密钥 ARN。
    • AURORA_DATABASE: 目标数据库名称。
    • AWS_PROFILE: AWS CLI 配置文件(或通过环境变量的等效凭证)。
  4. 部署

    • 将配置添加到适当的 MCP 客户端配置文件 (~/.aws/amazonq/mcp.json, .cursor/mcp.json, 等)。
    • 确保 IAM 权限允许访问 Aurora 的 Data API 和检索 Secrets Manager。
    • 启动你的 MCP 客户端或代码助手以开始服务器连接。

如何使用

  1. 打开你的 LLM 驱动的代码助手或支持 MCP 的工具(如 Amazon Q、Cursor、Cline)。
  2. 确保 AWS Aurora DSQL MCP 服务器在 MCP 服务器列表中已启用。
  3. 使用自然语言或明确的提示(例如:“使用 Aurora DSQL MCP 服务器,执行一个分析查询...”)请求数据或进行操作。
  4. MCP 客户端将根据需要调用服务器工具(如 sql_query、list_tables),并将结果或操作返回到你的工作流程中。
  5. 可选地,根据你的客户端设置批准或审核每次服务器工具调用。
  6. 结果(记录、元数据、诊断)将在你的 AI 助手的对话或输出面板中显示。

主要特点

  • 在 Aurora 上支持 PostgreSQL 兼容的分布式 SQL 查询执行
  • 安全的基于角色的访问,利用 AWS 凭证和 Secrets Manager
  • 完全集成于 MCP 生态系统和 LLM 驱动的代理中
  • 提供数据库架构发现、数据探索和分析的工具
  • 大规模并发、事务和读取扩展性(Aurora DSQL 的优势)
  • 支持参数化 SQL 输入,以降低注入风险
  • 无缝集成于对话式、自主或后台 AI 工作流程中

使用案例

  • 对话式数据分析: 使 AI 聊天机器人能够通过实时分布式 SQL 查询回答业务问题。
  • 自动化 ETL 管道: 在 LLM 驱动的数据工作流程中触发分布式转换和汇总。
  • 云原生数据探索: 允许开发者和数据科学家通过自然语言查询在 IDE 中探索分布式 Aurora 数据库。
  • 审计和合规: 使用 LLM 自动检索合规报告或对分布式数据集进行安全审核。
  • 仪表板和报告: 与仪表板工具或 BI 代理集成,将实时数据输入可视化和决策工具。

常见问题解答

Q1: 这个服务器支持普通的 PostgreSQL 集群还是仅支持 Aurora 分布式 SQL?
A1: 该服务器专为启用了分布式 SQL 的 Aurora PostgreSQL 兼容集群设计。对于标准 Aurora 或本地 PostgreSQL,请使用 Aurora PostgreSQL MCP 服务器。

Q2: 支持什么级别的 SQL 语法?
A2: 该服务器支持 Aurora DSQL 实现的完整 PostgreSQL 方言,包括高级分析和分布式查询功能。出于安全原因,某些物理或系统级语句可能会受到限制。

Q3: 身份验证和授权是如何工作的?
A3: 该服务器依赖于 AWS IAM 身份验证,允许访问 Aurora Data API 和包含数据库凭证的 Secrets Manager。所有操作都基于你配置的 IAM 角色和数据库权限进行授权。

Q4: MCP 服务器可以修改数据库状态还是仅执行只读查询?
A4: 默认情况下,支持读和写(INSERT、UPDATE、DELETE)操作,具体取决于配置。为了提高安全性,可以通过环境设置配置服务器为只读访问。

Q5: 如何检测和解决查询性能问题?
A5: 该服务器返回每次工具调用的执行诊断(时长、错误、状态)。要进行高级调优,应该直接使用标准的 Aurora/PostgreSQL 监控工具(CloudWatch、性能洞察)。