mcp-graphql
Un servidor GraphQL que admite el Protocolo de Contexto de Modelo (MCP), permitiendo que los Modelos de Lenguaje Grande (LLMs) interactúen con APIs de GraphQL mediante introspección de esquemas y ejecución de consultas.
Documentación
mcp-graphql
Un servidor del Protocolo de Contexto de Modelos (MCP) que permite a los LLMs interactuar con APIs de GraphQL. Esta implementación proporciona capacidades de introspección de esquemas y ejecución de consultas, permitiendo a los modelos descubrir y usar APIs de GraphQL de forma dinámica.
Uso
Ejecuta mcp-graphql con el endpoint correcto, automáticamente intentará introspectar tus consultas.
Argumentos de Línea de Comandos
| Argumento | Descripción | Valor por Defecto |
|---|---|---|
--endpoint | URL del endpoint de GraphQL | http://localhost:4000/graphql |
--headers | Cadena JSON que contiene encabezados para las solicitudes | {} |
--enable-mutations | Habilitar operaciones de mutación (deshabilitadas por defecto) | false |
--name | Nombre del servidor MCP | mcp-graphql |
--schema | Ruta a un archivo de esquema GraphQL local (opcional) | - |
Ejemplos
# Basic usage with a local GraphQL server
npx mcp-graphql --endpoint http://localhost:3000/graphql
# Using with custom headers
npx mcp-graphql --endpoint https://api.example.com/graphql --headers '{"Authorization":"Bearer token123"}'
# Enable mutation operations
npx mcp-graphql --endpoint http://localhost:3000/graphql --enable-mutations
# Using a local schema file instead of introspection
npx mcp-graphql --endpoint http://localhost:3000/graphql --schema ./schema.graphql
Herramientas Disponibles
El servidor proporciona dos herramientas principales:
-
introspect-schema: Esta herramienta recupera el esquema de GraphQL. Úsala primero si no tienes acceso al esquema como recurso. Esto utiliza ya sea el archivo de esquema local o una consulta de introspección.
-
query-graphql: Ejecuta consultas de GraphQL contra el endpoint. Por defecto, las mutaciones están deshabilitadas a menos que se especifique
--enable-mutations.
Recursos
- graphql-schema: El servidor expone el esquema de GraphQL como un recurso al que los clientes pueden acceder. Esto es ya sea el archivo de esquema local o basado en una consulta de introspección.
Instalación
Instalación mediante Smithery
Para instalar GraphQL MCP Toolkit para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install mcp-graphql --client claude
Instalación Manual
Se puede instalar manualmente en Claude:
{
"mcpServers": {
"mcp-graphql": {
"command": "npx",
"args": ["mcp-graphql", "--endpoint", "http://localhost:3000/graphql"]
}
}
}
Consideraciones de Seguridad
Las mutaciones están deshabilitadas por defecto como medida de seguridad para evitar que un LLM modifique tu base de datos o datos del servicio. Considera cuidadosamente antes de habilitar mutaciones en entornos de producción.
Personaliza para tu propio servidor
Esta es una implementación muy genérica que permite una introspección completa y que tus usuarios hagan lo que quieran (incluyendo mutaciones). Si necesitas una implementación más específica, te sugiero crear tu propio MCP y restringir las llamadas a herramientas para que los clientes solo ingresen campos de consulta y/o variables específicos. Puedes usar esto como referencia.