跳到主要内容

MCP注册表(2025-09-08)————官方MCP注册表API

· 阅读需 4 分钟

翻译自:https://github.com/modelcontextprotocol/registry/blob/main/docs/reference/api/official-registry-api.md

此文档描述了托管在 registry.modelcontextprotocol.io 上的官方 MCP 注册表的 API。

此API基于通用注册表API,并附加了额外的端点和身份验证。有关使用API的实际示例,请参阅API使用指南。有关使用API发布服务器的信息,请参阅发布指南

基础网址

  • 生产环境: https://registry.modelcontextprotocol.io
  • Staging: https://staging.registry.modelcontextprotocol.io

交互式文档

扩展。

官方注册表实现了通用注册表 API,并具有以下特定配置和扩展:

认证

发布需要基于命名空间的身份验证:

  • GitHub OAuth - 用于 io.github.* 命名空间
  • GitHub OIDC - 用于从 GitHub Actions 发布
  • DNS 验证 - 适用于基于域名的命名空间(com.example.*
  • HTTP验证 - 针对基于域名的命名空间(com.example.*

请参阅发布者命令以进行身份验证设置。

包验证

官方注册表在发布时会强制执行额外的包验证要求

服务器列表过滤

官方注册表通过附加查询参数扩展了GET /v0/servers端点,以改进发现和同步功能:

  • 'updated_since' - 过滤在 RFC3339 时间戳之后更新的服务器(例如,'2025-08-07T13:15:04.280Z')
  • search - 在服务器名称中进行不区分大小写的子字符串搜索(例如,filesystem)
    • 这是有意设计得简单的。要进行更高级的搜索和筛选,请使用子注册表。
  • '''version - 按版本筛选(目前仅支持latest用于最新版本)'''

这些扩展使下游注册表能够实现高效的增量同步,并改进了服务器发现。参数可以组合使用,并与标准的基于游标的分页配合工作。

示例:`GET /v0/servers?search=filesystem&updated_since=2025-08-01T00:00:00Z&version=latest

附加终端点

认证端点

  • POST /v0/auth/dns - 用签名的DNS挑战交换认证令牌
  • POST /v0/auth/http - 用签名的HTTP挑战交换认证令牌
  • POST /v0/auth/github-at - 用GitHub访问令牌交换认证令牌
  • POST /v0/auth/github-oidc - 交换GitHub OIDC令牌以获取认证令牌
  • POST /v0/auth/oidc - 用于将谷歌OIDC令牌交换为认证令牌(针对管理员)。

管理员端点

  • GET /metrics - Prometheus 指标端点
  • GET /v0/health - 基本健康检查端点
  • PUT /v0/servers/{id} - 编辑现有服务器