Servidor MCP para AWS Labs Aurora DSQL - Amazon Aurora DSQL

Servidor MCP para AWS Labs Aurora DSQL

Um servidor de protocolo de contexto para modelos (MCP) do AWS Labs para Aurora DSQL

Recursos

  • Converter perguntas e comandos legíveis por humanos em consultas SQL estruturadas compatíveis com o Postgres e executá-las no banco de dados Aurora DSQL configurado.

  • Somente leitura por padrão, transações habilitadas com --allow-writes

  • Reutilização de conexão entre solicitações para melhorar a performance

  • Acesso integrado à documentação, pesquisa e recomendações de práticas recomendadas do Aurora DSQL

Ferramentas disponíveis

Operações de banco de dados

  • readonly_query: execute consultas SQL somente leitura em seu cluster DSQL.

  • transact: execute operações de gravação em uma transação (requer --allow-writes).

  • get_schema: recupera informações do esquema da tabela.

Documentação e recomendações

  • dsql_search_documentation: pesquise a documentação do Aurora DSQL.

    • Parâmetros: search_phrase (obrigatório), limit (opcional).

  • dsql_read_documentation: leia páginas específicas de documentação do DSQL.

    • Parâmetros: url (obrigatório), start_index (opcional), max_length (opcional).

  • dsql_recommend: receba recomendações sobre as práticas recomendadas do DSQL.

    • Parâmetros: url (obrigatórios)

Pré-requisitos

  1. Uma conta da AWS com um cluster do Aurora DSQL.

  2. Esse servidor MCP só pode ser executado localmente no mesmo host que o seu cliente LLM.

  3. Configurar credenciais da AWS com acesso aos serviços da AWS

    • Você precisa de uma conta da AWS com um perfil que inclua essas permissões:

      • dsql:DbConnectAdmin: conecte-se aos clusters do DSQL como usuário administrador.

      • dsql:DbConnect: conecte-se a clusters do DSQL com perfis de banco de dados personalizados (necessário somente se estiver usando usuários que não sejam administradores).

    • Configurar credenciais da AWS com aws configure ou variáveis de ambiente

Instalação

Usar o uv

  1. Instale uv por meio do Astral ou do LEIAME do GitHub.

  2. Instale o Python usando uv python install 3.10.

Configure o servidor MCP na configuração do seu cliente MCP (por exemplo, para Amazon Q Developer CLI, edite ~/.aws/amazonq/mcp.json):

{ "mcpServers": { "awslabs.aurora-dsql-mcp-server": { "command": "uvx", "args": [ "awslabs.aurora-dsql-mcp-server@latest", "--cluster_endpoint", "[your dsql cluster endpoint, e.g. abcdefghijklmnopqrst234567.dsql.us-east-1.on.aws]", "--region", "[your dsql cluster region, e.g. us-east-1]", "--database_user", "[your dsql username, e.g. admin]", "--profile", "default" ], "env": { "FASTMCP_LOG_LEVEL": "ERROR" }, "disabled": false, "autoApprove": [] } } }

Instalação do Windows

Para usuários do Windows, o formato de configuração do servidor MCP é um pouco diferente:

{ "mcpServers": { "awslabs.aurora-dsql-mcp-server": { "disabled": false, "timeout": 60, "type": "stdio", "command": "uv", "args": [ "tool", "run", "--from", "awslabs.aurora-dsql-mcp-server@latest", "awslabs.aurora-dsql-mcp-server.exe" ], "env": { "FASTMCP_LOG_LEVEL": "ERROR", "AWS_PROFILE": "your-aws-profile", "AWS_REGION": "us-east-1" } } } }

Verificar a instalação

No caso da CLI do Amazon Q Developer, execute /mcp para ver o status do servidor MCP.

Opções de configuração do servidor

--allow-writes

Por padrão, o servidor mcp do dsql não permite operações de gravação (“modo somente leitura”). Todas as invocações da ferramenta de transação falharão nesse modo. Para usar a ferramenta de transação, permita gravações transmitindo o parâmetro --allow-writes.

Recomendamos usar o acesso com privilégio mínimo ao se conectar ao DSQL. Por exemplo, os usuários devem usar um perfil que seja somente leitura quando possível. O modo somente leitura tem uma aplicação no lado do cliente, em regime de melhor esforço, para rejeitar mutações.

--cluster_endpoint

Esse é um parâmetro obrigatório para especificar o cluster ao qual se conectar. Esse deve ser o endpoint completo do seu cluster, por exemplo, 01abc2ldefg3hijklmnopqurstu.dsql.us-east-1.on.aws.

--database_user

Esse é um parâmetro obrigatório para especificar o usuário com o qual se conectar. Por exemplo: admin ou my_user. Observe que as credenciais da AWS que você está usando devem ter permissão para fazer login como esse usuário. Para acessar mais informações sobre como configurar e usar perfis de banco de dados no DSQL, consulte Usar perfis de banco de dados com perfis do IAM.

--profile

Você pode especificar o perfil da aws a ser usado para suas credenciais. Observe que isso não é aceito na instalação do docker.

O uso da variável de ambiente AWS_PROFILE em sua configuração do MCP também é aceito:

"env": { "AWS_PROFILE": "your-aws-profile" }

Se nenhum for fornecido, o servidor MCP usa como padrão o perfil “padrão” em seu arquivo de configuração da AWS.

--region

Esse é um parâmetro obrigatório para especificar a região do seu banco de dados DSQL.

--knowledge-server

Parâmetro opcional para especificar o endpoint remoto do servidor MCP para ferramentas de conhecimento do DSQL (pesquisa, leitura e recomendações de documentação). Por padrão, ele é pré-configurado.

Exemplo:

--knowledge-server https://custom-knowledge-server.example.com

Observação: por questões de segurança, use somente endpoints confiáveis do servidor de conhecimento. O servidor deve ser um endpoint HTTPS.

--knowledge-timeout

Parâmetro opcional para especificar o tempo limite em segundos para solicitações ao servidor de conhecimento.

Padrão: 30.0

Exemplo:

--knowledge-timeout 60.0

Aumente esse valor se você tiver tempos limite ao acessar a documentação em redes lentas.