GraphQL
About
Schema introspection and query execution capabilities, allowing models to discover and use GraphQL APIs dynamically.
Details
- Author
- blurrah
- Repository
- blurrah/mcp-graphql
- GitHub stars
- 210
- Downloads
- 476
- License
- MIT License
- Categories
- Developer Tools, Other, AI, Design, Search, API, Security, Frontend
- Tags
- #visualization
Jump to
- Schema introspection via introspect-schema tool or graphql-schema resource
- Execute GraphQL queries with the query-graphql tool
- Support for custom headers (e.g., authentication tokens)
- Option to provide a local or remote schema file instead of introspection
- Mutations disabled by default for security; enable with ALLOW_MUTATIONS=true
Setting up with Highlight
Follow these steps to add this server as a custom Highlight plugin:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
GraphQLCommand (node, npx, python, etc.)npxArguments-
Argument 1
mcp-graphql
Environment-
ENDPOINT
http://localhost:3000/graphql
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Installing Via Smithery
To install GraphQL MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-graphql --client claude
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) | - |
Basic Usage With A Local Graphql Server
ENDPOINT=http://localhost:3000/graphql npx mcp-graphql
Installing Manually
It can be manually installed to Claude:
{
"mcpServers": {
"mcp-graphql": {
"command": "npx",
"args": ["mcp-graphql"],
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
}
}
}
}
introspect-schema
Retrieves the GraphQL schema. Use this tool first if you don't have access to the schema as a resource. It utilizes either a local schema file, a schema file hosted at a URL, or performs an introspection query.
query-graphql
Executes GraphQL queries against the endpoint. By default, mutation operations are disabled unless the 'ALLOW_MUTATIONS' environment variable is set to 'true'.
The server provides two main tools:
1. 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.
2. query-graphql: Execute GraphQL queries against the endpoint. By default, mutations are disabled unless ALLOW_MUTATIONS is set to true.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"graphql": {
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
},
"args": [
"mcp-graphql"
],
"command": "npx"
}
}
}
Linux
{
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
},
"args": [
"mcp-graphql"
],
"command": "npx"
}
Macos
{
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
},
"args": [
"mcp-graphql"
],
"command": "npx"
}
Windows
{
"env": {
"ENDPOINT": "http://localhost:3000/graphql"
},
"args": [
"/c",
"npx",
"mcp-graphql"
],
"command": "cmd"
}
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.
<a href="https://glama.ai/mcp/servers/4zwa4l8utf"></a>
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
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





