MCP Registry Mirror & API Server
使用说明
-
项目简介
- 本仓库实现了一个 MCP Registry Protocol 的服务器端组件,包含注册表镜像(镜像官方注册表数据)、核心 API 服务,以及用于校验与管理 server.json 的验证工具。核心功能包括:托管和提供 MCP 服务器元数据(Resources)、暴露服务器版本及版本历史、以及为 MCP 客户端提供统一的注册中心接口。前端镜像通过 Next.js 提供网页界面与 API 路由,后端核心逻辑通过可插拔的数据源实现数据存取。
-
主要功能点
- Registry Registry Server:核心 API 服务,提供服务器列表、单个服务器版本及版本详情的查询接口。
- 可插拔数据源:实现 FileDataSource 以本地 server-registry.json 作为数据源,未来可替换为数据库等数据源。
- 注册表镜像与更新:脚本 download-registry.ts 定时从官方注册表下载最新数据并写入本地 registry 文件。
- 验证工具:mcp-registry-validator 提供服务器配置的 JSON Schema 验证、Lint 规则校验及多种筛选能力,帮助保持注册表数据质量。
- 兼容客户端使用:提供 npm 包 mcp-registry-client,用于在客户端读取服务器列表、版本信息等,便于 LLM 应用对接 MCP Registry。
-
安装步骤
- 该仓库为多包仓库(monorepo),推荐使用 pnpm:
- 安装依赖并构建各包
- 构建包含验证工具的包和服务器包
- 运行前端镜像页面或启动 API 服务
- 该仓库为多包仓库(monorepo),推荐使用 pnpm:
-
服务器配置(示例说明)
- MCP 客户端需要配置一个 MCP 服务器来接入,这里给出配置要点,便于将来接入或在客户端文档中使用:
- serverName(字符串):此 MCP 服务器在客户端配置中的标识名称,例如 "registry-teamspark"。
- command(字符串):启动服务器所用的命令,例如用于生产环境的启动命令通常是“pnpm”或“npm”,结合项目脚本完成启动。
- args(字符串数组):启动命令的参数,例如 ["start"],或在开发时使用 ["dev"],具体依赖于部署方式。
- 说明:MCP 客户端无需展示源码实现细节,配置仅用于帮助客户端知道如何启动并连接到 MCP 服务器的实际端点。
参考要点(以描述性文字呈现,不包含代码块)
- serverName: registry-teamspark
- command: pnpm
- args: ["start"](生产环境通常对应构建后启动命令,开发环境可使用 dev)
- 端口与暴露地址将依据部署环境决定,客户端通过服务器暴露的 /api/v0/servers 等接口读取注册信息
- 生产环境下建议先执行构建再启动,例如对 Next.js 应用执行构建步骤后再启动服务
- MCP 客户端需要配置一个 MCP 服务器来接入,这里给出配置要点,便于将来接入或在客户端文档中使用:
-
基本使用方法
- 部署后即可通过公开的 API 端点获取 MCP 服务器信息(如注册表镜像、服务器版本、版本详情等)。
- 客户端在启动并连接该 MCP 服务器后,可基于服务返回的服务器信息进行上下文管理、工具调用以及 Prompts 渲染等 MCP 相关工作流。