使用说明
项目简介
GraphQL Explorer MCP服务器是一个基于Model Context Protocol (MCP) 构建的后端应用,旨在为LLM客户端提供探索和查询GraphQL API的能力。通过注册工具和资源,使得LLM可以连接到GraphQL端点、获取GraphQL模式信息、执行查询等操作,从而扩展LLM在GraphQL数据源上的应用能力。
主要功能点
- 连接GraphQL API: 通过 'setup_connection' 工具,可以配置GraphQL API的端点URL和可选的认证Token,建立与GraphQL服务的连接。
- 执行GraphQL查询: 通过 'execute_query' 工具,可以向已连接的GraphQL API发送查询请求,并获取查询结果。注意,为了安全考虑,目前只允许执行查询 (query) 操作,禁止执行变更 (mutation) 操作。
- 获取GraphQL Schema: 通过 'get_schema' 资源,可以获取当前连接的GraphQL API的完整Schema信息,用于理解API结构和可用数据。
- 获取类型信息: 通过 'get_type_info' 工具,可以查询GraphQL Schema中特定类型的详细信息,例如字段、描述等。
- 列出所有类型: 通过 'list_types' 工具,可以获取GraphQL Schema中所有可用类型的列表,方便用户浏览和探索。
安装步骤
该项目无需复杂的安装步骤,只需确保您的运行环境中安装了Python和所需的依赖库。
- 环境准备: 确保您的系统安装了Python 3.6或更高版本。
- 安装依赖: 使用pip安装项目所需的Python库,在项目根目录下执行命令:
(实际上,根据提供的代码,只需要 'fastmcp' 和 'gql' 库,'aiohttp' 是 'gql' 的依赖,会自动安装。建议安装 'fastmcp' 和 'gql' 即可。)pip install gql fastmcp aiohttp
服务器配置
为了让MCP客户端能够连接到GraphQL Explorer MCP服务器,您需要提供以下配置信息。这些信息通常配置在MCP客户端的应用设置中。
{ "server_name": "graphql-explorer", "command": "python", "args": ["server.py"] }
配置参数说明:
- 'server_name': 服务器名称,这里设置为 "graphql-explorer",用于在MCP客户端中标识该服务器。
- 'command': 启动服务器的命令,这里使用 'python' 命令来运行Python脚本。
- 'args': 命令参数,这里指定要运行的Python脚本为 'server.py'。
注意: 请确保 'server.py' 文件与您运行 'python server.py' 命令时的工作目录一致,或者在 'args' 中提供 'server.py' 文件的完整路径。
基本使用方法
- 启动MCP服务器: 在安装好依赖并配置好MCP客户端后,在项目根目录下运行命令 'python server.py' 启动GraphQL Explorer MCP服务器。服务器成功启动后,会监听MCP客户端的请求。
- MCP客户端操作: 在MCP客户端中,配置上述服务器配置信息,客户端将尝试连接到GraphQL Explorer MCP服务器。
- 调用工具和资源: 连接成功后,在MCP客户端中,您可以调用以下工具和资源来探索和查询GraphQL API:
- 工具 (Tools):
- 'setup_connection': 用于配置GraphQL API连接,需要提供 'endpoint_url' (GraphQL端点URL) 和可选的 'auth_token' (认证Token) 作为参数。
- 'execute_query': 用于执行GraphQL查询,需要提供 'query' (GraphQL查询字符串) 和可选的 'variables' (查询变量) 作为参数。
- 'get_type_info': 用于获取类型信息,需要提供 'type_name' (GraphQL类型名称) 作为参数。
- 'list_types': 用于列出所有类型,无需参数。
- 资源 (Resources):
- 'schema://graphql': 用于获取GraphQL Schema,无需参数,直接访问该资源即可获取。
- 工具 (Tools):
请参考MCP客户端的文档,了解如何在客户端中配置和调用MCP服务器提供的工具和资源。
信息
分类
网页与API