MCP ExplorerExplorer

GraphQL Schema Model Context Protocol

@hannesjon 12 days ago
27 MIT
FreeCommunity
Dev Tools
#GraphQL#LLMs#Schema#API
Allow LLMs to explore large GraphQL schemas without bloating the context.

Overview

What is GraphQL Schema Model Context Protocol

The MCP GraphQL Schema Server is a Model Context Protocol server designed to expose information about GraphQL schemas, enabling Large Language Models (LLMs) like Claude to explore and understand the structure and components of GraphQL APIs through a set of specialized tools.

Use cases

This server is useful for developers and language models to query, mutate, and subscribe to data in GraphQL APIs. It can be employed to gain insights into available queries, mutations, and subscriptions, as well as to understand type definitions and field attributes, improving efficiency in API interaction and development.

How to use

To use the MCP server, it can be run via the command line with options to specify the GraphQL schema file. The server also supports integration with Claude Desktop and Claude Code by configuring the appropriate JSON files to register the MCP server and invoke it for queries about the GraphQL schema.

Key features

Key features include loading specified GraphQL schema files, exploring various fields like queries, mutations, and subscriptions, obtaining detailed type definitions, searching for types and fields using pattern matching, and simplifying field information while filtering internal GraphQL types for clarity.

Where to use

This MCP server can be utilized in development environments, particularly when working with GraphQL APIs. It is suitable for use within tools like Claude Desktop and Claude Code, offering developers enhanced capabilities to understand and interact with the schema of the APIs they are working with.

Content

GraphQL Schema Model Context Protocol Server

smithery badge
A Model Context Protocol (MCP) server that exposes GraphQL schema information to Large Language Models (LLMs) like Claude. This server allows an LLM to explore and understand GraphQL schemas through a set of specialized tools.

Features

  • Load any GraphQL schema file specified via command line argument
  • Explore query, mutation, and subscription fields
  • Look up detailed type definitions
  • Search for types and fields using pattern matching
  • Get simplified field information including types and arguments
  • Filter out internal GraphQL types for cleaner results

Usage

Command Line

Run the MCP server with a specific schema file:

# Use the default schema.graphqls in current directory
npx -y mcp-graphql-schema

# Use a specific schema file (relative path)
npx -y mcp-graphql-schema ../schema.shopify.2025-01.graphqls

# Use a specific schema file (absolute path)
npx -y mcp-graphql-schema /absolute/path/to/schema.graphqls

# Show help
npx -y mcp-graphql-schema --help

Installing via Smithery

To install GraphQL Schema for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @hannesj/mcp-graphql-schema --client claude

Claude Desktop Integration

To use this MCP server with Claude Desktop, edit your claude_desktop_config.json configuration file:

{
  "mcpServers": {
    "GraphQL Schema": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-graphql-schema",
        "/ABSOLUTE/PATH/TO/schema.graphqls"
      ]
    }
  }
}

Location of the configuration file:

  • macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: $env:AppData\Claude\claude_desktop_config.json

Claude Code Integration

To use this MCP server with Claude Code CLI, follow these steps:

  1. Add the GraphQL Schema MCP server to Claude Code

    # Basic syntax
    claude mcp add graphql-schema npx -y mcp-graphql-schema
    
    # Example with specific schema
    claude mcp add shopify-graphql-schema npx -y mcp-graphql-schema  ~/Projects/work/schema.shopify.2025-01.graphqls
    
  2. Verify the MCP server is registered

    # List all configured servers
    claude mcp list
    
    # Get details for your GraphQL schema server
    claude mcp get graphql-schema
    
  3. Remove the server if needed

    claude mcp remove graphql-schema
    
  4. Use the tool in Claude Code

    Once configured, you can invoke the tool in your Claude Code session by asking questions about the GraphQL schema.

Tips:

  • Use the -s or --scope flag with project (default) or global to specify where the configuration is stored
  • Add multiple MCP servers for different schemas with different names (e.g., main API schema, Shopify schema)

MCP Tools

The server provides the following tools for LLMs to interact with GraphQL schemas:

  • list-query-fields: Lists all available root-level fields for GraphQL queries
  • get-query-field: Gets detailed definition for a specific query field in SDL format
  • list-mutation-fields: Lists all available root-level fields for GraphQL mutations
  • get-mutation-field: Gets detailed definition for a specific mutation field in SDL format
  • list-subscription-fields: Lists all available root-level fields for GraphQL subscriptions (if present in schema)
  • get-subscription-field: Gets detailed definition for a specific subscription field (if present in schema)
  • list-types: Lists all types defined in the GraphQL schema (excluding internal types)
  • get-type: Gets detailed definition for a specific GraphQL type in SDL format
  • get-type-fields: Gets a simplified list of fields with their types for a specific GraphQL object type
  • search-schema: Searches for types or fields in the schema by name pattern (case-insensitive regex)

Examples

Example queries to try:

What query fields are available in this GraphQL schema?
Show me the details of the "user" query field.
What mutation operations can I perform in this schema?
List all types defined in this schema.
Show me the definition of the "Product" type.
List all fields of the "Order" type.
Search for types and fields related to "customer".

Tools

No tools

Comments