# autos.mcp.oauth 库模块帮助文档

## autos.mcp.oauth 成员列表 <a id="autos.mcp.oauth" href="#autos.mcp.oauth">&#x23;</a>

### autos.mcp.oauth.version <a id="autos.mcp.oauth.version" href="#autos.mcp.oauth.version">&#x23;</a>
OAuth 模块版本（独立于 MCP 传输版本）。

## autos.mcp 成员列表 <a id="autos.mcp" href="#autos.mcp">&#x23;</a>

### autos.mcp.oauth() <a id="autos.mcp.oauth" href="#autos.mcp.oauth">&#x23;</a>
[返回对象:autosMcpOAuthObject](#autosMcpOAuthObject)

### autos.mcp.oauth(config,storeName) <a id="autos.mcp.oauth" href="#autos.mcp.oauth">&#x23;</a>
独立 Remote HTTP OAuth 公共客户端，不改变 MCP 协议代际。config 至少指定 url；可选 resource、issuer、clientId、clientMetadataUrl、scope、trustedOrigins、allowDynamicRegistration、redirectPort、timeoutMs、authorizationTimeoutMs。  
storeName 可选：用当前用户 DPAPI 保存绑定当前配置的凭据。不接受 clientSecret。构造不联网。

## autosMcpOAuthObject 成员列表 <a id="autosMcpOAuthObject" href="#autosMcpOAuthObject">&#x23;</a>

### autosMcpOAuthObject.authorize(options) <a id="autosMcpOAuthObject.authorize" href="#autosMcpOAuthObject.authorize">&#x23;</a>
显式浏览器授权；PKCE S256/state/resource/issuer 校验。options 可指定 challenge、shouldStop、confirmOrigin、onStatus、openBrowser。成功 true，失败 null,err,detail。回调/URL/令牌不得输出到聊天或日志。

### autosMcpOAuthObject.cancel() <a id="autosMcpOAuthObject.cancel" href="#autosMcpOAuthObject.cancel">&#x23;</a>
取消当前授权/网络等待，不删除已保存凭据。

### autosMcpOAuthObject.close() <a id="autosMcpOAuthObject.close" href="#autosMcpOAuthObject.close">&#x23;</a>
取消操作、关闭回调监听并清理内存；不删除 DPAPI 凭据。

### autosMcpOAuthObject.connect(options) <a id="autosMcpOAuthObject.connect" href="#autosMcpOAuthObject.connect">&#x23;</a>
使用有效令牌连接 MCP；不自动重试/重放。失败时由调用者检查错误后显式重新授权/重连。

### autosMcpOAuthObject.discover(challenge,options) <a id="autosMcpOAuthObject.discover" href="#autosMcpOAuthObject.discover">&#x23;</a>
资源/授权服务器发现与校验。challenge 为原 WWW-Authenticate；options.confirmOrigin(origin,purpose) 用于显式信任跨源端点。返回安全概要，不包含凭据。

### autosMcpOAuthObject.forget() <a id="autosMcpOAuthObject.forget" href="#autosMcpOAuthObject.forget">&#x23;</a>
删除本机保存凭据，不代表服务端撤销授权。

### autosMcpOAuthObject.getConfig(options) <a id="autosMcpOAuthObject.getConfig" href="#autosMcpOAuthObject.getConfig">&#x23;</a>
返回带 Bearer 的 MCP 配置，必要时刷新，不会自动打开浏览器。可用作 autos.mcp.session 的 backend 解析器；不要打印返回配置。

### autosMcpOAuthObject.refresh(options) <a id="autosMcpOAuthObject.refresh" href="#autosMcpOAuthObject.refresh">&#x23;</a>
显式刷新；支持轮换。发送前丢弃旧刷新凭据，失败后需要重新授权，避免重放可能已消耗的令牌。

### autosMcpOAuthObject.reopenBrowser() <a id="autosMcpOAuthObject.reopenBrowser" href="#autosMcpOAuthObject.reopenBrowser">&#x23;</a>
授权等待期间重新打开同一浏览器授权页；不重新发起 MCP 调用。

### autosMcpOAuthObject.state <a id="autosMcpOAuthObject.state" href="#autosMcpOAuthObject.state">&#x23;</a>
idle/discovering/registering/waiting_browser/exchanging/refreshing/ready/cancelled/failed。
