Track MCP LogoTrack MCP
Track MCP LogoTrack MCP

The world's largest repository of Model Context Protocol servers. Discover, explore, and submit MCP tools.

Product

  • Categories
  • Top MCP
  • New & Updated
  • Submit MCP

Company

  • About

Legal

  • Privacy Policy
  • Terms of Service
  • Cookie Policy

© 2026 TrackMCP. All rights reserved.

Built with ❤️ by Krishna Goyal

    Mcp Graphql

    Model Context Protocol server for GraphQL TypeScript-based implementation.

    313 stars
    TypeScript
    Updated Nov 3, 2025
    ai
    llm
    mcp
    mcp-server
    modelcontextprotocol

    Table of Contents

    • Usage
    • Environment Variables (Breaking change in 1.0.0)
    • Examples
    • Resources
    • Available Tools
    • Installation
    • Installing via Smithery
    • Installing Manually
    • Security Considerations
    • Customize for your own server

    Table of Contents

    • Usage
    • Environment Variables (Breaking change in 1.0.0)
    • Examples
    • Resources
    • Available Tools
    • Installation
    • Installing via Smithery
    • Installing Manually
    • Security Considerations
    • Customize for your own server

    Documentation

    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.

    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 VariableDescriptionDefault
    ENDPOINTGraphQL endpoint URLhttp://localhost:4000/graphql
    HEADERSJSON string containing headers for requests{}
    ALLOW_MUTATIONSEnable mutation operations (disabled by default)false
    NAMEName of the MCP servermcp-graphql
    SCHEMAPath to a local GraphQL schema file or URL (optional)-

    Examples

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

    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.

    Installation

    Installing via Smithery

    To install GraphQL MCP Server for Claude Desktop automatically via Smithery:

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

    Installing Manually

    It can be manually installed to Claude:

    json
    {
        "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.

    Similar MCP

    Based on tags & features

    • MC

      Mcp Open Library

      TypeScript·
      42
    • AN

      Anilist Mcp

      TypeScript·
      57
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k
    View All MCP Servers

    Similar MCP

    Based on tags & features

    • MC

      Mcp Open Library

      TypeScript·
      42
    • AN

      Anilist Mcp

      TypeScript·
      57
    • MC

      Mcp Ipfs

      TypeScript·
      11
    • LI

      Liveblocks Mcp Server

      TypeScript·
      11

    Trending MCP

    Most active this week

    • PL

      Playwright Mcp

      TypeScript·
      22.1k
    • SE

      Serena

      Python·
      14.5k
    • MC

      Mcp Playwright

      TypeScript·
      4.9k
    • MC

      Mcp Server Cloudflare

      TypeScript·
      3.0k