AWS Aurora DSQL MCP Server

AWS Aurora DSQL MCP Server

O AWS Aurora DSQL MCP Server é um servidor MCP especializado que fornece acesso SQL distribuído (DSQL) a bancos de dados compatíveis com Aurora PostgreSQL. Isso permite que aplicativos impulsionados por LLM e assistentes de IA consultem e gerenciem de forma segura grandes dados relacionais distribuídos em clusters do Amazon Aurora.

Author: awslabs


Ver Protocolo

O que é AWS Aurora DSQL MCP Server?

O AWS Aurora DSQL MCP Server é um ponto de integração entre o mecanismo de SQL distribuído compatível com PostgreSQL do Aurora e o Protocolo de Contexto de Modelo (MCP). Ele permite que aplicativos com LLM acessem, consultem e manipulem nativamente dados relacionais distribuídos em clusters Aurora através de pontos de extremidade MCP padronizados. Ao conectar SQL distribuído com o ecossistema MCP, ele capacita assistentes de IA e fluxos de trabalho a suportar cargas de trabalho analíticas complexas e escaláveis diretamente no Aurora, aproveitando recursos avançados de SQL, concorrência e alta disponibilidade.

Como Configurar

  1. Pré-requisitos:

    • Um cluster do Amazon Aurora compatível com PostgreSQL e com SQL distribuído habilitado.
    • Acesso ao ARN do recurso do cluster e às credenciais necessárias da AWS.
    • Ambiente Python com uv instalado.
  2. Argumentos do Servidor (configure no seu arquivo de configuração do cliente MCP, como mcp.json):

    {
      "awslabs.aurora-dsql-mcp-server": {
        "command": "uvx",
        "args": ["awslabs.aurora-dsql-mcp-server@latest"],
        "env": {
          "AWS_PROFILE": "seu-perfil-aws",
          "AWS_REGION": "us-east-1",
          "AURORA_RESOURCE_ARN": "arn:aws:rds:us-east-1:123456789012:cluster:meu-cluster-aurora",
          "AURORA_SECRET_ARN": "arn:aws:secretsmanager:us-east-1:123456789012:secret:meusecreto",
          "AURORA_DATABASE": "seu_banco_de_dados"
        }
      }
    }
    
  3. Variáveis de Ambiente:

    • AURORA_RESOURCE_ARN: ARN do cluster Aurora.
    • AURORA_SECRET_ARN: ARN do segredo que contém as credenciais do banco de dados.
    • AURORA_DATABASE: Nome do banco de dados alvo.
    • AWS_PROFILE: Perfil da CLI da AWS (ou credenciais equivalentes via ambiente).
  4. Implantação:

    • Adicione a configuração ao arquivo de configuração do cliente MCP apropriado (~/.aws/amazonq/mcp.json, .cursor/mcp.json, etc.).
    • Certifique-se de que as permissões do IAM permitam o acesso à API de Dados do Aurora e a recuperação do Secrets Manager.
    • Inicie seu cliente MCP ou assistente de código para iniciar a conexão com o servidor.

Como Usar

  1. Abra seu assistente de código impulsionado por LLM ou ferramenta capaz de MCP (ex: Amazon Q, Cursor, Cline).
  2. Certifique-se de que o AWS Aurora DSQL MCP Server esteja habilitado na lista de servidores MCP.
  3. Utilize linguagem natural ou comandos explícitos (ex: "Usando o Aurora DSQL MCP Server, execute uma consulta analítica para...") para solicitar dados ou realizar operações.
  4. O cliente MCP invocará ferramentas do servidor (por exemplo, sql_query, list_tables) conforme necessário, retornando resultados ou ações ao seu fluxo de trabalho.
  5. Opcionalmente, aprove ou revise cada invocação de ferramenta do servidor de acordo com as configurações do seu cliente.
  6. Resultados (registros, metadados, diagnósticos) aparecem na conversa ou painéis de saída do seu assistente de IA.

Principais Recursos

  • Execução de consultas SQL distribuídas com compatibilidade com PostgreSQL no Aurora
  • Acesso seguro baseado em papéis, aproveitando credenciais da AWS e Secrets Manager
  • Totalmente integrado ao ecossistema MCP e agentes impulsionados por LLM
  • Ferramentas para descoberta de esquema de banco de dados, exploração de dados e análises
  • Concorrência em larga escala, transações e escalabilidade de leitura (vantagens do Aurora DSQL)
  • Suporte para entradas SQL parametrizadas para reduzir riscos de injeção
  • Integração perfeita como parte de fluxos de trabalho autônomos, conversacionais ou em segundo plano da IA

Casos de Uso

  • Análises de Dados Conversacionais: Habilitar chatbots de IA para responder a perguntas de negócios usando consultas SQL distribuídas ao vivo.
  • Pipelines ETL Automatizados: Acionar transformações e agregações distribuídas como parte de fluxos de trabalho de dados impulsionados por LLM.
  • Exploração de Dados Nativa na Nuvem: Permitir que desenvolvedores e cientistas de dados explorem bancos de dados distribuídos do Aurora através de consultas em linguagem natural em IDEs.
  • Auditoria e Conformidade: Usar LLMs para recuperar automaticamente relatórios de conformidade ou realizar revisões de segurança em conjuntos de dados distribuídos.
  • Dashboards e Relatórios: Integrar com ferramentas de dashboard ou agentes de BI para puxar dados ao vivo para visualizações e ferramentas de tomada de decisão.

FAQ

Q1: Este servidor suporta clusters PostgreSQL regulares ou apenas Aurora Distributed SQL?
A1: Este servidor foi projetado especificamente para clusters compatíveis com PostgreSQL do Aurora com SQL distribuído habilitado. Use o Aurora PostgreSQL MCP Server para Aurora padrão ou PostgreSQL local.

Q2: Qual nível de sintaxe SQL é suportado?
A2: O servidor suporta o dialeto completo do PostgreSQL conforme implementado pelo Aurora DSQL, incluindo recursos avançados de análise e consultas distribuídas. Algumas declarações em nível físico ou de sistema podem ser restritas por motivos de segurança.

Q3: Como funciona a autenticação e a autorização?
A3: O servidor depende da autenticação AWS IAM com acesso tanto à API de Dados do Aurora quanto ao segredo do Secrets Manager que contém as credenciais do banco de dados. Todas as operações são autorizadas com base no seu papel IAM configurado e nas permissões do banco de dados.

Q4: O servidor MCP pode modificar o estado do banco de dados ou apenas realizar consultas de leitura?
A4: Por padrão, operações de leitura e gravação (INSERT, UPDATE, DELETE) são suportadas, sujeito a configuração. Para maior segurança, você pode configurar o servidor para acesso apenas leitura através de configurações de ambiente.

Q5: Como podem ser detectados e resolvidos problemas de desempenho de consulta?
A5: O servidor retorna diagnósticos de execução (tempos, erros, status) para cada invocação de ferramenta. Para ajustes avançados, o monitoramento padrão do Aurora/PostgreSQL (CloudWatch, Performance Insights) deve ser utilizado diretamente.