> ## Documentation Index
> Fetch the complete documentation index at: https://mcp.zhcndoc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP 注册表

<Note>
  MCP 注册表目前处于预览阶段。在正式发布之前，可能会发生破坏性更改或数据重置。如果您遇到任何问题，请在 [GitHub](https://github.com/modelcontextprotocol/registry/issues) 上报告。
</Note>

MCP 注册表是官方集中的元数据存储库，用于存放可公开访问的 MCP 服务器，由 Anthropic、GitHub、PulseMCP 和 Microsoft 等 MCP 生态系统的主要可信贡献者支持。

MCP 注册表提供：

* 为服务器创作者提供一个发布其服务器元数据的统一场所
* 通过 DNS 验证进行命名空间管理
* 供 MCP 客户端和聚合器发现可用服务器的 REST API
* 标准化的安装和配置信息

服务器元数据存储在标准化的 [`server.json` 格式](https://github.com/modelcontextprotocol/registry/blob/main/docs/reference/server-json/draft/server.schema.json) 中，其中包含：

* 服务器的唯一名称（例如，`io.github.user/server-name`）
* 服务器位置（例如，npm 包名、远程服务器 URL）
* 执行指令（例如，命令行参数、环境变量）
* 其他发现数据（例如，描述、服务器功能）

## MCP 注册表生态系统

MCP 注册表是生态系统的一部分，大致如下所示：

<img src="https://mintcdn.com/mcp-zhcndoc/e93uqR4nmQj7tWn4/registry/ecosystem-diagram.excalidraw.svg?fit=max&auto=format&n=e93uqR4nmQj7tWn4&q=85&s=44842d158fba02cbf177728b151751f0" alt="MCP 注册表生态系统" width="2787" height="1811" data-path="registry/ecosystem-diagram.excalidraw.svg" />

### 与包注册表的关系

包注册表（例如 npm、PyPI 和 Docker Hub）托管包含代码和二进制的包。

MCP 注册表托管指向这些包的元数据。

例如，`weather-mcp` 包可以托管在 npm 上，MCP 注册表中的元数据可以将 "weather v1.2.0" 服务器映射到 `npm:weather-mcp`。

[包类型指南](./package-types) 列出了支持的包类型和注册表。未来可能会根据社区需求支持更多包注册表。如果您有兴趣为包注册表构建支持，请 [提交问题](https://github.com/modelcontextprotocol/registry)。

### 与服务器开发人员的关系

MCP 注册表支持开源和闭源服务器。只要服务器的安装方法是公开可用的（例如，公共注册表上的 npm 包或 Docker 镜像）*或* 服务器本身是公开可访问的（例如，不受限于私有网络的远程服务器），服务器开发人员就可以将其服务器的元数据发布到注册表。

MCP 注册表 **不** 支持私有服务器。私有服务器是指仅限少数用户访问的服务器。例如，发布在私有网络（如 `mcp.acme-corp.internal`）或私有包注册表（例如 `npx -y @acme/mcp --registry https://artifactory.acme-corp.internal/npm`）上的服务器。如果您想发布私有服务器，我们建议您托管自己的私有 MCP 注册表并将它们添加在那里。

### 与下游聚合器的关系

MCP 注册表主要供下游聚合器（例如 MCP 服务器市场）使用。

MCP 注册表托管的元数据特意保持中立。下游聚合器可以提供策展或额外的元数据，例如社区评级。

我们预计下游聚合器将使用 MCP Registry API 定期但不频繁地拉取新元数据（例如，每小时一次）。有关更多信息，请参阅 [MCP 注册表聚合器指南](./registry-aggregators)。

### 与其他 MCP 注册表的关系

除了公共 REST API 外，MCP 注册表还定义了一个 [OpenAPI 规范](https://github.com/modelcontextprotocol/registry/blob/main/docs/reference/api/openapi.yaml)，其他 MCP 注册表可以实现该规范，以便为 MCP 主机应用程序提供标准化接口。

我们预计许多下游聚合器将实现此接口。私有 MCP 注册表也可以实现它，以受益于现有的主机应用程序支持。

请注意，官方 MCP 注册表代码库 **不** 设计用于自托管，注册表维护者无法为此用例提供支持。如果您选择分叉它，您需要独立维护和运营它。

### 与 MCP 主机应用程序的关系

MCP 注册表不打算由主机应用程序直接消费。相反，主机应用程序应通过符合官方 MCP 注册表 OpenAPI 规范的 REST API 消费其他 MCP 注册表，例如下游市场。

## 信任与安全

### 验证服务器真实性

MCP 注册表使用命名空间身份验证来确保服务器来自其声称的来源。服务器名称遵循反向 DNS 格式（如 `io.github.username/server` 或 `com.example/server`），将它们与经过验证的 GitHub 帐户或域绑定。

此命名空间系统确保只有 GitHub 帐户或域的合法所有者才能在该命名空间下发布服务器，从而在生态系统中提供信任和问责制。有关身份验证方法的详细信息，请参阅 [身份验证指南](./authentication)。

### 安全扫描

MCP 注册表将安全扫描委托给：

* **底层包注册表** — npm、PyPI、Docker Hub 和其他包注册表执行自己的安全扫描和漏洞检测。
* **下游聚合器** — MCP 注册表聚合器和市场可以实现额外的安全检查、评级或策展。

MCP 注册表专注于命名空间身份验证和元数据托管，同时依靠更广泛的生态系统进行实际服务器代码的安全扫描。

### 垃圾邮件预防

MCP 注册表使用多种机制来防止垃圾邮件：

* **命名空间身份验证要求** — 发布者必须通过 GitHub、DNS 或 HTTP 挑战验证其命名空间的所有权，防止任意垃圾邮件提交。
* **字符限制和验证** — 自由格式字段具有严格的字符限制和正则表达式验证，以防止滥用。
* **手动下架** — 注册表维护者可以手动删除垃圾邮件或恶意服务器。有关删除哪些内容的详细信息，请参阅 [审核政策](./moderation-policy)。

未来考虑采取的垃圾邮件预防措施包括更严格的速率限制、基于 AI 的垃圾邮件检测和社区报告功能。
