GraphQL MCP服务器

一个Node.js/TypeScript服务器,实现模型上下文协议(MCP),作为MCP客户端与目标GraphQL API之间的桥梁。

  • by jorgeraad
  • TypeScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 jorgeraad/mcp4gql

使用说明

mcp4gql-GraphQL MCP服务器

这个项目是一个Node.js/TypeScript服务器,它实现了模型上下文协议(MCP)。它充当一个桥梁,允许MCP客户端(如Cursor)与目标GraphQL API交互。

特性

  • MCP服务器: 实施MCP Server 类从 @modelcontextprotocol/sdk.
  • 标准运输: 通过标准输入/输出与客户沟通。
  • GraphQL客户端: 用途 axios 向配置的GraphQL端点发送请求。
  • 通用GraphQL工具: 向MCP客户端公开以下工具:
    • introspectGraphQLSchema:使用内省获取目标GraphQL API架构。
    • executeGraphQLOperation:针对目标API执行任意GraphQL查询或突变 query,可选 variables,可选 operationName 作为输入。

配置

服务器需要以下环境变量:

  • GRAPHQL_ENDPOINT:目标GraphQL API的URL。
  • AUTH_TOKEN:可选的不记名代币 Authorization: Bearer <token> 用于使用GraphQL API进行身份验证的头。

客户端配置

要允许Cursor或Claude Desktop等客户端使用此服务器提供的工具,您需要将其配置为运行 npx 命令。

光标

  1. 转到光标MCP设置(光标>设置>光标设置>MCP)

  2. 转到+添加新的全局MCP服务器

  3. 将以下内容添加到您的Cursor MCP配置中:

    {
      "mcpServers": {
        "mcp4gql": {
          "command": "npx",
          "type": "stdio",
          "args": ["-y", "mcp4gql"],
          "env": {
            "GRAPHQL_ENDPOINT": "YOUR_GRAPHQL_ENDPOINT_URL",
            "AUTH_TOKEN": "YOUR_OPTIONAL_AUTH_TOKEN"
          }
        }
      }
    }
    

克劳德桌面

  1. 打开克劳德桌面设置(克劳德>设置)。

  2. 转到开发人员>编辑配置。

  3. 添加到配置中:

    {
      "mcpServers": {
        "mcp4gql": {
          "command": "npx",
          "args": ["-y", "mcp4gql"],
          "env": {
            "GRAPHQL_ENDPOINT": "YOUR_GRAPHQL_ENDPOINT_URL",
            "AUTH_TOKEN": "YOUR_OPTIONAL_AUTH_TOKEN"
          }
        }
      }
    }
    

配置后,MCP客户端应该能够列出并调用 introspectGraphQLSchema 和 executeGraphQLOperation 此服务器在相关时提供的工具。记住设置所需的环境变量(GRAPHQL_ENDPOINT 并且可选 AUTH_TOKEN)在配置中,以便服务器可以连接到您的API。