Skip to content
MCP 文档版本 2026-07-28 更新于 2026-10-14

授权扩展

Model Context Protocol 的补充授权机制

ext-auth 仓库包含官方 MCP 扩展,在核心 MCP 规范之外提供授权能力。这些扩展针对标准 OAuth 2.0 授权码流程并不适用的特定真实场景。

modelcontextprotocol/ext-auth

MCP 授权扩展的源代码、规范与参考实现。

为什么需要授权扩展?

核心 MCP 规范包含一个基于 OAuth 2.0 构建的健壮授权框架。该框架很好地处理了常见情况:用户以交互方式授予 MCP 客户端代表其访问服务端的权限。

但并非每个 MCP 部署都符合这种模式:

  • 机器到机器集成没有人在回路中。后台服务、CI 流水线和自动化工作流需要在没有交互式用户同意流程的情况下进行身份验证。
  • 企业环境通常拥有集中式身份提供方(IdP),对所有应用程序强制执行策略。要求员工逐个授权每个 MCP 服务端会造成摩擦,并绕过现有的安全控制。

ext-auth 扩展填补了这些空白。

可用扩展

选择合适的扩展

场景推荐扩展
后台服务或守护进程访问 MCP 服务端OAuth Client Credentials
CI/CD 流水线调用 MCP 工具OAuth Client Credentials
服务端到服务端 API 集成OAuth Client Credentials
企业员工在工作中访问 MCP 服务端Enterprise-Managed Authorization
组织范围的 MCP 访问策略强制执行Enterprise-Managed Authorization
标准交互式用户授权核心 MCP 规范(无需扩展)

客户端支持

授权扩展的支持情况因客户端而异。完整明细请参见客户端矩阵。两个扩展都需要 MCP 客户端显式支持——它们从不会默认启用。

规范

两个扩展均在 ext-auth 仓库中定义。它们使用标准 MCP 扩展协商机制:客户端在每个请求的 _meta 中发送的 io.modelcontextprotocol/clientCapabilities 的 extensions 字段里声明支持,服务端则在 server/discover 返回的能力中声明其支持。

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。