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. 前提條件

    • 有效的 Amazon Aurora PostgreSQL 相容群集,並啟用分散式 SQL。
    • 存取羣集資源 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 的數據 API 存取及密碼管理器的檢索。
    • 啟動您的 MCP 客戶端或代碼助手以初始化伺服器連接。

如何使用

  1. 打開基於 LLM 的代碼助手或具備 MCP 功能的工具 (例如,Amazon Q、Cursor、Cline)。
  2. 確保在 MCP 伺服器列表中啟用了 AWS Aurora DSQL MCP 伺服器。
  3. 使用自然語言或明確提示 (例如,“使用 Aurora DSQL MCP 伺服器,執行分析查詢...”)來請求數據或執行操作。
  4. MCP 客戶端將根據需要調用伺服器工具 (例如,sql_query、list_tables),將結果或行動返回到您的工作流程中。
  5. 根據客戶端設定,可選擇批准或審核每個伺服器工具的調用。
  6. 結果 (記錄、元數據、診斷信息) 將出現在 AI 助手的對話或輸出面板中。

主要特點

  • 在 Aurora 上具有 PostgreSQL 相容性的分散式 SQL 查詢執行
  • 利用 AWS 憑證和密碼管理器提供安全的基於角色的存取
  • 完全整合 MCP 生態系統和基於 LLM 的代理
  • 用於資料庫結構發現、數據探索和分析的工具
  • 大規模併發性、事務和讀取可擴展性 (Aurora DSQL 的優勢)
  • 支持參數化 SQL 輸入以降低注入風險
  • 作為對話式、自動或背景 AI 工作流程的一部分進行無縫整合

使用案例

  • 對話式數據分析:使 AI 聊天機器人能夠使用實時分散式 SQL 查詢來回答業務問題。
  • 自動化 ETL 管道:在基於 LLM 的數據工作流程中觸發分散式轉換和匯總。
  • 雲原生數據探索:允許開發人員和數據科學家通過自然語言查詢在 IDE 中探索分散式 Aurora 資料庫。
  • 審核和合規性:利用 LLM 自動檢索合規報告或對分散數據集進行安全性審查。
  • 儀表板和報告:與儀表板工具或 BI 代理整合,將實時數據提取到可視化和決策工具中。

常見問題

Q1: 此伺服器支援常規 PostgreSQL 群集還是僅支援 Aurora 分散式 SQL?
A1: 此伺服器專為啟用分散式 SQL 的 Aurora PostgreSQL 相容群集設計。請使用 Aurora PostgreSQL MCP 伺服器以獲取標準的 Aurora 或內部部署的 PostgreSQL。

Q2: 支援什麼層級的 SQL 語法?
A2: 此伺服器支援 Aurora DSQL 實現的完整 PostgreSQL 方言,包括先進的分析和分散式查詢功能。出於安全原因,某些物理或系統級語句可能會受到限制。

Q3: 認證和授權是如何運作的?
A3: 此伺服器依賴於 AWS IAM 認證,存取 Aurora 數據 API 和包含資料庫憑證的密碼管理器。所有操作根據您配置的 IAM 角色和資料庫權限進行授權。

Q4: MCP 伺服器能夠修改資料庫狀態還是僅執行只讀查詢?
A4: 默認情況下,支持讀取和寫入 (INSERT、UPDATE、DELETE) 操作,但受配置限制。為了提高安全性,您可以通過環境設定配置伺服器為只讀存取。

Q5: 如何檢測和解決查詢性能問題?
A5: 此伺服器會返回每個工具調用的執行診斷信息(時間、錯誤、狀態)。對於高級調整,應直接使用標準的 Aurora/PostgreSQL 監控工具 (CloudWatch、Performance Insights)。