先决条件
在创建模型上下文协议(MCP)注册表之前,您应了解 MCP 管理对贵公司的功能和好处。参见贵公司中的 MCP 服务器使用情况。
选项 1:自行托管 MCP 注册表
从本质上讲,MCP 注册表是一组 HTTPS 端点,用于提供所包含 MCP 服务器的详细信息。您可以通过以下任意方式创建注册表:
- Fork 并自行托管开源 MCP Registry。要开始使用,请参阅 MCP Registry Quickstart(位于
modelcontextprotocol/registry仓库中)。 - 使用 Docker 在本地运行开源注册表。
- 发布您自己的自定义实现。
注意
如果希望开发者能够访问本地 MCP 服务器,请在注册表中使用正确的服务器 ID 将这些服务器加入其中。更多信息,请参阅MCP 白名单强制执行。
要创建一个 GitHub Copilot 可访问的有效 MCP 注册表,注册表必须满足以下要求:
端点和规范要求
有效的注册表必须支持 URL 路由并遵循 v0.1 MCP 注册表规范,包括以下端点:
GET /v0.1/servers:返回所有包含的 MCP 服务器列表GET /v0.1/servers/{serverName}/versions/latest:返回特定服务器的最新版本GET /v0.1/servers/{serverName}/versions/{version}:返回特定服务器版本的详细信息
欲了解更多细节及请求的示例 JSON 响应,请参阅官方 MCP 注册表文档。
对 v0.1 规范的支持
虽然最初的 MCP 注册表是基于 v0 规范推出的,但该版本已被视为不稳定,且不应再实现。请改为按照 v0.1 规范创建注册表,v0.1 规范已在以下 IDE 中得到支持:
| IDE | v0.1 支持 |
|---|---|
| VS Code Insiders | |
| VS Code | |
| Visual Studio | |
| Eclipse | |
| JetBrains IDE | |
| Xcode |
跨域资源共享(CORS)要求
为确保 Copilot 在获取注册表时能够成功发起跨域请求,注册表或反向代理必须包含跨域资源共享(CORS)响应头。请在所有 /v0.1/servers 端点上添加以下响应头:
Access-Control-Allow-Origin: * Access-Control-Allow-Methods: GET, OPTIONS Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
选项 2:使用 Azure API Center 作为 MCP 注册表
Azure API Center 提供全托管的 MCP 注册表,具备自动 CORS 配置、内置治理功能,无需额外的 Web 服务器设置。
- 要完成注册表的初始设置,请参阅 Azure 文档中的在您的 API 清单中注册和发现远程 MCP 服务器。
- 如果希望开发者能够访问本地 MCP 服务器,请在注册表中使用正确的服务器 ID 将这些服务器加入其中。更多信息,请参阅MCP 白名单强制执行。
- 为确保 GitHub Copilot 能够获取您的注册表,请在 API Center 的可见性设置中启用匿名访问。
- 复制您的 API Center 端点 URL。在下一篇文章中,您将使用此 URL 将注册表在整个公司中提供访问。
定价和限制
Azure API Center 为基础 API 编目与发现(包括 MCP 注册表管理)提供免费层。如果需要比免费层更高的配额,可升级到标准计划。详尽的配额与定价信息,请参阅 Azure 文档中的Azure API Center 限制。
后续步骤
现在您已经创建了 MCP 注册表,可以为公司设置 MCP 策略。请参阅为您的组织或企业配置 MCP 服务器访问。