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

smithery badge

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

ArgumentoDescripciónValor por Defecto
--endpointURL del endpoint de GraphQLhttp://localhost:4000/graphql
--headersCadena JSON que contiene encabezados para las solicitudes{}
--enable-mutationsHabilitar operaciones de mutación (deshabilitadas por defecto)false
--nameNombre del servidor MCPmcp-graphql
--schemaRuta 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:

  1. 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.

  2. 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.