Servidor MCP de Aurora DSQL de Laboratorios de AWS
Un servidor de protocolo de contexto para modelos (MCP) de Laboratorios de AWS para Aurora DSQL
Características
-
Conversión de preguntas y comandos legibles por humanos en consultas SQL estructuradas compatibles con Postgres y ejecutarlas en la base de datos de Aurora DSQL configurada.
-
De forma predeterminada, son de solo lectura y las transacciones están habilitadas con
--allow-writes -
Reutilización de conexiones entre solicitudes para mejorar el rendimiento
-
Acceso integrado en la documentación, la búsqueda y las recomendaciones de prácticas recomendadas de Aurora DSQL
Herramientas disponibles
Operaciones de base de datos
-
readonly_query: ejecute consultas SQL de solo lectura en el clúster de DSQL
-
transact: ejecute operaciones de escritura en una transacción (obligatorio
--allow-writes) -
get_schema: recupere la información del esquema de la tabla
Documentación y recomendaciones
-
dsql_search_documentation: busque en la documentación de Aurora DSQL
-
Parámetros:
search_phrase(obligatorio),limit(opcional)
-
-
dsql_read_documentation: lee páginas específicas de documentación de DSQL
-
Parámetros:
url(obligatorio),start_index(opcional),max_length(opcional)
-
-
dsql_recommend: obtenga recomendaciones sobre las prácticas recomendadas de DSQL
-
Parámetros:
url(obligatorio)
-
Requisitos previos
-
Una cuenta de AWS con un clúster de Aurora DSQL
-
Este servidor MCP solo se puede ejecutar localmente en el mismo host que el cliente de LLM.
-
Configuración de las credenciales de AWS con acceso a los servicios de AWS
-
Necesita una cuenta de AWS con un rol que incluya los siguientes permisos:
-
dsql:DbConnectAdmin: conéctese a los clústeres de DSQL como usuario administrador -
dsql:DbConnect: conéctese a los clústeres de DSQL con roles de base de datos personalizados (solo es necesario si se utilizan usuarios que no sean administradores)
-
-
Configuración de las credenciales de AWS con
aws configureo variables de entorno
-
Instalación
Uso de uv
-
Instalación de
uvdesde Astralo README de GitHub -
Instalación de Python mediante
uv python install 3.10
Configure el servidor MCP en la configuración del cliente de MCP (por ejemplo, para la CLI de Amazon Q Developer, 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": [] } } }
Instalación de Windows
Para los usuarios de Windows, el formato de configuración del servidor MCP es ligeramente 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" } } } }
Verificación de la instalación
Para la CLI de Amazon Q Developer, ejecute /mcp para ver el estado del servidor MCP.
Opciones de configuración del servidor
--allow-writes
De forma predeterminada, el servidor mcp de dsql no permite operaciones de escritura (“modo de solo lectura”). Cualquier invocación de la herramienta de transacciones producirá un error en este modo. Para usar la herramienta de transacciones, permita escribir pasando el parámetro --allow-writes.
Recomendamos utilizar el acceso con privilegios mínimos al conectarse a DSQL. Por ejemplo, los usuarios deben usar un rol de solo lectura siempre que sea posible. El modo de solo lectura hace todo lo posible por parte del cliente para rechazar las mutaciones.
--cluster_endpoint
Este parámetro es obligatorio para especificar el clúster al que se va a conectar. Debe ser el punto de conexión completo del clúster, por ejemplo, 01abc2ldefg3hijklmnopqurstu.dsql.us-east-1.on.aws
--database_user
Este parámetro es obligatorio para especificar el usuario como el que se va a conectar. Por ejemplo, admin o my_user. Tenga en cuenta que las credenciales de AWS que utilice deben tener permiso para iniciar sesión como ese usuario. Para obtener más información sobre la configuración y el uso de los roles de base de datos en DSQL, consulte Uso de los roles de base de datos con los roles de IAM.
--profile
Puede especificar el perfil de AWS que va a utilizar para las credenciales. Tenga en cuenta que esto no es compatible con la instalación de docker.
También se admite el uso de la variable de entorno AWS_PROFILE en la configuración de MCP:
"env": { "AWS_PROFILE": "your-aws-profile" }
Si no se proporciona ninguno de los dos, el servidor MCP utilizará de forma predeterminada el perfil “predeterminado” del archivo de configuración de AWS.
--region
Se trata de un parámetro obligatorio para especificar la región de la base de datos de DSQL.
--knowledge-server
Parámetro opcional para especificar el punto de conexión remoto del servidor MCP para las herramientas de conocimiento de DSQL (búsqueda de documentación, lectura y recomendaciones). De forma predeterminada, está preconfigurado.
Ejemplo:
--knowledge-server https://custom-knowledge-server.example.com
Nota: por motivos de seguridad, utilice solo puntos de conexión del servidor de información de confianza. El servidor debe ser un punto de conexión HTTPS.
--knowledge-timeout
Parámetro opcional para especificar el tiempo de espera en segundos para las solicitudes al servidor de información.
Valor predeterminado: 30.0
Ejemplo:
--knowledge-timeout 60.0
Aumente este valor si se agotan los tiempos de espera al acceder a la documentación en redes lentas.