MCP服务器聚合器

open-mcp

OpenMCP是一个项目,它包含两层含义: 一个标准:用于将各类WebAPI转换为符合特定规范的MCP服务器。 一个开源注册表:维护着遵循此标准的服务器列表。 每个OpenMCP服务器都能使M...

标签:

OpenMCP 是一个项目,它包含两层含义:

  1. 一个标准:用于将各类 Web API 转换为符合特定规范的 MCP 服务器。
  2. 一个开源注册表:维护着遵循此标准的服务器列表。

每个 OpenMCP 服务器都能使 MCP 客户端(特别是底层的 LLMs,即大型语言模型)以 Token 高效(节省 Token 消耗)的方式请求特定的 Web API。注册表中的服务器汇集了广泛的服务,赋能客户端 LLMs 代表用户跨多个领域获取数据并执行操作。

项目的关键内容包括:

  • 创建服务器
  • 将 OpenMCP 服务器添加到 MCP 客户端
  • 将 Web API 转换为 OpenMCP 标准

创建服务器

OpenMCP 定义了创建符合标准的服务器的方法。更详细的信息和指南可以在以下链接找到:https://www.open-mcp.org/servers/creating-a-server

将 OpenMCP 服务器添加到 MCP 客户端

OpenMCP 服务器可以添加到兼容的 MCP 客户端中,以便客户端能够调用这些服务。支持远程托管和本地托管两种方式。以下是本地托管的一些详细说明和示例:

本地托管

要求:

  • Node.js v18 或更高版本(包含 npx 和 npm 工具)
  • 兼容的 MCP 客户端,例如 Claude desktop 或 Cursor。

添加服务器通常通过命令行界面 (CLI) 工具进行。使用 npx @open-mcp/config add 命令来配置。

Claude desktop:

使用以下命令将 OpenMCP 服务器添加到 Claude desktop 的配置中。请将 {服务器ID} 替换为你要添加的服务器的实际 ID,--环境变量名=值 替换为服务器所需的具体配置或认证信息:

bash
npx @open-mcp/config add {服务器ID} \
/Library/Application\ Support/Claude/claude_desktop_config.json \
--环境变量名=值

执行命令后,需要重启 Claude desktop 应用程序以加载新添加的工具(即 OpenMCP 服务器)。

Cursor:

对于 Cursor 客户端,你可以选择将服务器添加到当前项目的配置中,或添加到所有 Cursor 项目的全局配置中。

  • 添加到当前项目: 在你的项目根目录运行命令。
  • 添加到所有项目: 在你的用户主目录 ~ 运行命令。

命令示例(将 {服务器ID} 替换为实际 ID,--环境变量名=值 替换为实际参数):

bash
npx @open-mcp/config add {服务器ID} \
.cursor/mcp.json \
--环境变量名=值

添加后,你需要前往 Cursor > Settings > Cursor Settings,然后点击 MCP 选项,确保新添加的服务器已启用。

其他客户端:

对于其他兼容 OpenMCP 标准的客户端,添加方法类似,但需要指定客户端的配置文件路径。使用以下命令格式:

bash
npx @open-mcp/config add {服务器ID} \
/你的客户端配置文件路径 \
--环境变量名=值

并根据具体客户端的说明进行后续配置和启用步骤。

替代方案:

如果你不想使用上述 CLI 工具,也可以采取手动安装的方式。首先使用 npm 手动安装相应的 OpenMCP 服务器包,然后在你的客户端配置文件中,添加一个 node 命令,并指定使用该包的 dist/index.js 文件的绝对路径。具体的安装和配置细节,通常可以在各个 OpenMCP 服务器项目的 README 文件中找到。

将 Web API 转换为 OpenMCP

OpenMCP 标准定义了如何将不同技术栈和格式的 Web API 转换为统一的 MCP 服务器接口。这使得客户端可以通过标准化的方式访问各种服务。支持的 API 类型及其常用的描述文件格式包括:

  • REST (使用 openapi.yaml 或 openapi.json 进行描述)
  • gRPC (使用 service.proto 文件进行描述)
  • JSON-RPC (使用 openrpc.json 文件进行描述)
  • GraphQL (使用 schema.gql 文件进行描述)
  • SOAP (使用 service.wsdl 文件进行描述)
  • PostgREST (通常使用 schema.sql 来反映结构)

通过将这些不同类型的 API 映射到 OpenMCP 标准,可以为 LLM 客户端提供一个统一、高效的访问层。

数据统计

相关导航

暂无评论

暂无评论...