MCP Registry
社区译文;来源: MCP 80041ab0
MCP Registry 是可公开访问的 MCP 服务器的官方集中式元数据仓库,由 Anthropic、GitHub、PulseMCP 和 Microsoft 等 MCP 生态系统中的主要可信贡献者共同支持。
MCP Registry 提供:
- 供服务器创建者发布服务器元数据的统一入口
- 通过 DNS 验证进行命名空间管理
- 供 MCP 客户端和聚合器发现可用服务器的 REST API
- 标准化的安装和配置信息
服务器元数据以标准化的 server.json 格式存储,其中包含:
- 服务器的唯一名称(例如
io.github.user/server-name) - 服务器的位置(例如 npm 包名称、远程服务器 URL)
- 执行说明(例如命令行参数、环境变量)
- 其他发现数据(例如描述、服务器能力)
MCP Registry 生态系统
MCP Registry 所属的生态系统大致如下:
与包注册表的关系
npm、PyPI 和 Docker Hub 等包注册表托管包含代码和二进制文件的包。
MCP Registry 托管指向这些包的元数据。
例如,weather-mcp 包可以托管在 npm 上,而 MCP Registry 中的元数据可以将“weather v1.2.0”服务器映射到 npm:weather-mcp。
包类型指南列出了支持的包类型和注册表。未来可能根据社区需求支持更多包注册表。如果你有兴趣为某个包注册表构建支持,请提交 issue。
与服务器开发者的关系
MCP Registry 同时支持开源和闭源服务器。只要服务器的安装方式可公开获取(例如公共注册表上的 npm 包或 Docker 镜像),_或者_服务器本身可公开访问(例如不受私有网络限制的远程服务器),服务器开发者就可以向注册表发布服务器元数据。
MCP Registry 不支持私有服务器。私有服务器是指仅供少量用户访问的服务器,例如发布在私有网络上的服务器(如 mcp.acme-corp.internal),或发布在私有包注册表上的服务器(如 npx -y @acme/mcp --registry https://artifactory.acme-corp.internal/npm)。如需发布私有服务器,建议自行托管私有 MCP 注册表并将服务器添加到其中。
与下游聚合器的关系
MCP Registry 主要供 MCP 服务器市场等下游聚合器使用。
MCP Registry 托管的元数据刻意保持中立,不加入倾向性判断。下游聚合器可以进行内容策展,也可以添加社区评分等额外元数据。
我们预计下游聚合器会定期但不频繁地通过 MCP Registry API 拉取新元数据(例如每小时一次)。详情参见 MCP Registry 聚合器指南。
与其他 MCP 注册表的关系
除了公共 REST API,MCP Registry 还定义了一份 OpenAPI 规范。其他 MCP 注册表可以实现该规范,为 MCP 主机应用程序提供标准化接口。
我们预计许多下游聚合器会实现此接口。私有 MCP 注册表同样可以实现该接口,从而复用现有主机应用程序的支持。
请注意,官方 MCP Registry 代码库并非为自托管设计,注册表维护者无法为这种用法提供支持。如果选择分叉该代码库,你需要自行维护和运营。
与 MCP 主机应用程序的关系
MCP Registry 不应由主机应用程序直接使用。主机应用程序应改为通过符合官方 MCP Registry OpenAPI 规范的 REST API,使用下游市场等其他 MCP 注册表。
信任与安全
验证服务器真实性
MCP Registry 使用命名空间身份验证,确保服务器确实来自其声明的来源。服务器名称采用反向 DNS 格式(如 io.github.username/server 或 com.example/server),将其与已验证的 GitHub 账户或域名关联。
该命名空间系统确保只有 GitHub 账户或域名的合法所有者才能在相应命名空间下发布服务器,从而为生态系统提供信任基础和责任追溯能力。有关身份验证方法的详情,参见身份验证指南。
安全扫描
MCP Registry 将安全扫描交由以下系统负责:
- 底层包注册表:npm、PyPI、Docker Hub 及其他包注册表执行各自的安全扫描和漏洞检测。
- 下游聚合器:MCP Registry 聚合器和市场可以实施额外的安全检查、评分或内容策展。
MCP Registry 专注于命名空间身份验证和元数据托管,实际服务器代码的安全扫描则依赖更广泛的生态系统。
防止垃圾内容
MCP Registry 使用多种机制防止垃圾内容:
- 命名空间身份验证要求:发布者必须通过 GitHub、DNS 或 HTTP 质询验证命名空间所有权,以阻止任意提交垃圾内容。
- 字符限制与校验:自由文本字段受到严格的字符数限制和正则表达式校验,以防止滥用。
- 人工下架:注册表维护者可以手动移除垃圾或恶意服务器。有关会被移除的内容,参见审核政策。
未来考虑采用的防垃圾措施包括更严格的速率限制、基于 AI 的垃圾检测和社区举报能力。