Skip to content
说明为 MCP 服务器授权
用法sbx mcp auth [SERVER] [flags]

描述 ​

使用 OAuth 为已注册的 MCP 服务器授权。

使用本地网关,或在服务器注册中设置了 OAuth 覆盖项时,凭据 存储在本地。否则由托管的 MCP 控制平面管理凭据。

托管操作使用 'sbx login' 登录的 Docker Hub 账号。控制平面 自行推导用户和租户身份;它们不会出现在请求体中。

运行 'sbx mcp auth <server>' 可授权或重新授权某一个服务器,即使它 已经存有凭据。

用 'sbx mcp auth status' 可以在不启动 OAuth 的情况下查看凭据状态, 用 'sbx mcp auth rm' 可以在不删除本地 MCP 服务器注册的情况下 移除凭据。

传入 --scope(可重复)可为本次运行授权一组特定的 scope, 覆盖 'sbx mcp add' 时记录的默认值。优先级为:--no-scope > 显式 --scope > 记录的默认值 > RESOURCE 声明其为必需的 scope (来自其 RFC 9728 元数据或 WWW-Authenticate 质询)> openid、email、profile 和 offline_access 中被通告的那些。其他被通告的 scope 不包含在这个兜底中。 如果没有选中任何 scope,则会省略 scope 参数,让授权服务器 应用它自己的默认授予。

因此,发布了必需 scope 集合的资源无需任何 flag 即可获得这些 scope 的请求, 同意界面会把该集合标记为推导得出而非手动选择。传入 --no-scope 可抑制所有 scope 兜底,请求服务器的默认授予。

使用记录的默认值或资源的 scope 时,如果授权服务器通告了 offline_access, sbx 也会请求它,从而允许使用刷新令牌。本命令上的显式 --scope 只请求该集合,不添加 offline_access。

你选择的 scope 会同时对照授权服务器的 RFC 8414 scopes_supported 和资源的 RFC 9728 元数据进行检查。两份文档中都没有的 scope 会打印警告,但仍会被请求。如果两份文档都没有公布 scope, 则按给定内容接受该请求。 成员资格不是承诺:scopes_supported 表示服务器支持什么,而不是它会授予本客户端 什么,因此被通告的 scope 在同意时仍可能被拒绝。在本地数据平面模式下,拒绝时会 打印所请求的集合、被通告的集合、服务器指明的 scope,以及一个范围更窄的重试命令; 托管的控制平面只报告授权失败或超时。

对于已有或刚刚完成的授权,GRANTED 集合——即授权服务器实际授予的内容——会与状态 一并报告。授权服务器授予的内容可能少于所请求的内容;当它完全不重述集合时, RFC 6749 §5.1 规定该集合即所请求的集合。

Scope 取值可以是 URN 形式(urn:ietf:params:oauth:scope:mail),也可以是 URL 形式 (https://www.fastmail.com/dev/mcp);两者都不需要加引号。

子命令 ​

命令说明
sbx mcp auth rm移除 MCP 服务器的 OAuth 凭据
sbx mcp auth status显示 MCP 服务器的 OAuth 状态

选项 ​

选项默认值说明
--all应用于所有已注册的 OAuth 服务器
--formattext输出格式:"text" 或 "json"
--json以 JSON 格式输出
--no-scope本次运行完全不请求任何 scope,让授权服务器应用它自己的默认授权。抑制记录的、必需的以及 OIDC 回退 scope;不能与 --scope 一起使用
--scope本次运行要授权的 OAuth scope(可重复;覆盖记录的默认值;无法识别的 scope 会给出警告,但仍会被请求)。既没有 --scope 也没有记录的默认值时,请求资源自身所需的 scope 集合;两者都没有时,请求 openid、email、profile 和 offline_access 中被声明的那几个;此回退不包含其他被声明的 scope
-v, --verbose打印授权轮询进度

全局选项 ​

选项默认值说明
--cloud改为调用 Docker Cloud Sandboxes API,而不是本地 sandboxd(支持的动词正在逐步增加,运行 sbx --cloud --help 查看当前列表)
-D, --debug启用调试日志
--no-input从不提示;需要应答的命令会直接失败,并给出应当运行的命令

示例 ​

console
sbx mcp auth status --all
sbx mcp auth status notion
sbx mcp auth rm --all
sbx mcp auth rm notion
sbx mcp auth --all
sbx mcp auth notion
sbx mcp auth notion --scope read --scope write
sbx mcp auth notion --no-scope

参见 ​