SuperAPI AI 工具集

mcp-graphql

mcp-graphql 是一个面向 GraphQL 的 Model Context Protocol(MCP)服务器,让大语言模型能够与 GraphQL API 交互。它提供模式自省(schema introspection)和查询执行能力,使模型可以动态发现并使用 GraphQL API。服务器可暴露 GraphQL schema 作为资源,该 schema 可来自本地 schema 文件、托管在 URL 上的 schema 文件,或基于自省查询生成。使用时以正确端点运行 mcp-graphql,它会自动尝试对查询进行自省。自 1.0.0 版本起,命令行参数已被环境变量取代。主要工具包括 introspect-schema(获取 GraphQL schema)和 query-graphql(针对端点执行 GraphQL 查询);默认禁用 mutations,除非设置 ALLOW_MUTATIONS 为 true。

访问官网

工具介绍

mcp-graphql 是一个 Model Context Protocol(MCP)服务器,用于让大语言模型(LLM)与 GraphQL API 进行交互。该实现提供模式自省和查询执行能力,允许模型动态发现并使用 GraphQL API。

用途与定位 该项目充当 LLM 与 GraphQL 服务之间的桥梁:以正确端点运行 mcp-graphql 后,它会自动尝试对查询进行自省,使模型能够了解可用的 GraphQL schema 并执行查询。

主要能力

  • 模式自省:将 GraphQL schema 作为客户端可访问的资源暴露出来,来源可以是本地 schema 文件、托管在 URL 上的 schema 文件,或基于自省查询生成。
  • 查询执行:提供 query-graphql 工具,针对配置的端点执行 GraphQL 查询。
  • 两个主要工具:introspect-schema 用于获取 GraphQL schema(在没有以资源形式访问 schema 时首先使用);query-graphql 用于执行 GraphQL 查询。

使用方式

  • 环境变量:自 1.0.0 版本起,命令行参数已被环境变量取代,属于破坏性变更。graphql-schema 用于指定 schema 来源(本地文件、远程 URL 或自省查询)。
  • 安装:可通过 Smithery 自动为 Claude Desktop 安装 GraphQL MCP Server;也可手动安装到 Claude。
  • 安全默认值:mutations 默认被禁用,除非将 ALLOW_MUTATIONS 设置为 true。

适用场景

  • 让 LLM 动态发现和使用 GraphQL API。
  • 在需要时先自省 schema,再针对端点执行只读查询。

限制与安全考虑

  • 默认禁用 mutations,作为一项安全措施,防止 LLM 修改数据库或服务数据;在生产环境中启用 mutations 前应审慎考虑。
  • 该实现非常通用,允许完整自省和用户进行包括 mutations 在内的任意操作;若需要更具体的实现,建议自行创建 MCP,并将客户端的工具调用锁定为仅能输入特定查询字段和/或变量,可将此项目作为参考。