GraphQL

by blurrah

210 stars
476 downloads
Not rated
GitHub

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

- 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:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name GraphQL
    Command (node, npx, python, etc.) npx
    Arguments
    • 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.

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

smithery badge

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">mcp-graphql MCP server</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

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.