mcp-graphql
A GraphQL server that supports the Model Context Protocol (MCP), enabling Large Language Models (LLMs) to interact with GraphQL APIs through 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.
Command Line Arguments
| Argument | Description | Default |
|---|---|---|
--endpoint | GraphQL endpoint URL | http://localhost:4000/graphql |
--headers | JSON string containing headers for requests | {} |
--enable-mutations | Enable mutation operations (disabled by default) | false |
--name | Name of the MCP server | mcp-graphql |
--schema | Path to a local GraphQL schema file (optional) | - |
Examples
# 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
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 or an introspection query.
-
query-graphql: Execute GraphQL queries against the endpoint. By default, mutations are disabled unless
--enable-mutationsis specified.
Resources
- graphql-schema: The server exposes the GraphQL schema as a resource that clients can access. This is either the local schema file or based on an introspection query.
Installation
Installing via Smithery
To install GraphQL MCP Toolkit 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", "--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
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
nREPL MCP Server
Interact with a running Clojure nREPL instance for code evaluation, namespace inspection, and other utilities.
Figma
Interact with the Figma API to access and manage design files and resources.
Debugger MCP Server
A development tool for real-time debugging, code quality monitoring, and AI insights for React/Next.js applications.
Sapiom
One API key gives agents access to 80+ tools: web search, deep search, browser automation, screenshots, 400+ LLM models, image generation, text-to-speech, sound effects, and phone verification. Pay-per-use with spend governance built in.
x64dbgMCP
An MCP server that connects LLMs with the x64dbg debugger, enabling natural language control over debugging functions.
GhidraMCP
Enables LLMs to autonomously reverse engineer applications by exposing core Ghidra functionality.
MCP Everything
A demonstration server for the Model Context Protocol (MCP) showcasing various features like tools, resources, and prompts in TypeScript and Python.
SnapState
Persistent state for AI agent workflows. Save, resume, and replay multi-step workflows across sessions, crashes, and agent handoffs. Free tier included.
Claude Project Memory MCP
Manages project memory and implementation logs for Claude Code using local project files.
SYKE - AI Code Impact Analysis
Live dependency graph and impact analysis MCP server for AI coding agents. Runs PASS/WARN/FAIL build gates before code changes to prevent cascade failures. Supports TS, Python, Dart, Go, Rust, Java, C++, Ruby.