GraphQL MCP
Interact with GraphQL APIs using LLMs. Supports schema introspection and query execution.
mcp-graphql
A Model Context Protocol server that enables LLMs to interact with GraphQL APIs. This implementation provides schema introspection and query execution capabilities, allowing models to discover and use GraphQL APIs dynamically.
Usage
Run mcp-graphql with the correct endpoint, it will automatically try to introspect your queries.
Environment Variables (Breaking change in 1.0.0)
Note: As of version 1.0.0, command line arguments have been replaced with environment variables.
| Environment Variable | Description | Default |
|---|---|---|
ENDPOINT | GraphQL endpoint URL | http://localhost:4000/graphql |
HEADERS | JSON string containing headers for requests | {} |
ALLOW_MUTATIONS | Enable mutation operations (disabled by default) | false |
NAME | Name of the MCP server | mcp-graphql |
SCHEMA | Path to a local GraphQL schema file or URL (optional) | - |
Examples
# Basic usage with a local GraphQL server
ENDPOINT=http://localhost:3000/graphql npx mcp-graphql
# Using with custom headers
ENDPOINT=https://api.example.com/graphql HEADERS='{"Authorization":"Bearer token123"}' npx mcp-graphql
# Enable mutation operations
ENDPOINT=http://localhost:3000/graphql ALLOW_MUTATIONS=true npx mcp-graphql
# Using a local schema file instead of introspection
ENDPOINT=http://localhost:3000/graphql SCHEMA=./schema.graphql npx mcp-graphql
# Using a schema file hosted at a URL
ENDPOINT=http://localhost:3000/graphql SCHEMA=https://example.com/schema.graphql npx mcp-graphql
Resources
- graphql-schema: The server exposes the GraphQL schema as a resource that clients can access. This is either the local schema file, a schema file hosted at a URL, or based on an introspection query.
Available Tools
The server provides two main tools:
-
introspect-schema: This tool retrieves the GraphQL schema. Use this first if you don't have access to the schema as a resource. This uses either the local schema file, a schema file hosted at a URL, or an introspection query.
-
query-graphql: Execute GraphQL queries against the endpoint. By default, mutations are disabled unless
ALLOW_MUTATIONSis set totrue.
Installation
Installing via Smithery
To install GraphQL MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-graphql --client claude
Installing Manually
It can be manually installed to Claude:
{
"mcpServers": {
"mcp-graphql": {
"command": "npx",
"args": ["mcp-graphql"],
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
}
}
}
}
Security Considerations
Mutations are disabled by default as a security measure to prevent an LLM from modifying your database or service data. Consider carefully before enabling mutations in production environments.
Customize for your own server
This is a very generic implementation where it allows for complete introspection and for your users to do whatever (including mutations). If you need a more specific implementation I'd suggest to just create your own MCP and lock down tool calling for clients to only input specific query fields and/or variables. You can use this as a reference.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Studio MCP
Turns any command-line interface (CLI) command into a simple StdIO-based MCP server.
lenderwiki
Query 13,000+ US consumer lenders with eligibility criteria, rates, CFPB complaints, and ratings. Find matching lenders by borrower profile, get full profiles, compare lenders, and check eligibility.
Azure DevOps
Manage Azure DevOps projects, work items, builds, and releases.
LLMKit
AI cost tracking MCP server with 11 tools for spend analytics, budget enforcement, and session costs across Claude Code, Cursor, and Cline.
MCP Time Server
Provides tools for getting the current time and date, and formatting timestamps in various formats and timezones.
JVM MCP Server
A server for monitoring and analyzing Java Virtual Machine (JVM) processes using Arthas, with a Python interface.
Oso Cloud MCP Server
Understand, develop, and debug authorization policies in Oso Cloud.
Ethereum Tools for Claude
A comprehensive toolkit for Ethereum blockchain analysis directly within Claude AI.
MCP Docs Server
Provides direct access to local documentation files through a context.md file in the project root.
Design System Server
An MCP server for accessing and managing design system documentation from a GitHub repository.