返回目录 / MCP 客户端
为远程MCP客户端配置OAuth授权
让MCP客户端按资源服务器声明的流程取得最小权限令牌,并安全处理重定向和回调。
目标
在不把令牌交给模型或日志的前提下连接需要OAuth的MCP服务。
步骤
- 核对远程服务器、受众和授权元数据来自预期可信域名。 [mcp-oauth]
- 用
OAuthClientProvider(server_url, client_metadata, storage, redirect_handler, callback_handler)经授权服务器发现与PKCE授权码流程取token。 [mcp-oauth] - 把provider接到
httpx2.AsyncClient(auth=provider),再传给Streamable HTTP transport;state与iss必须原样校验。 [mcp-oauth] - 将授权错误与资源权限拒绝分开处理,不把令牌写入对话或诊断输出。 [mcp-oauth]
- 在测试租户验证授权、过期刷新和撤销;再检查日志没有凭据。 [mcp-oauth]
验证方式
确认客户端仅取得授权scope、过期处理符合预期,且令牌不进入模型上下文和日志。
故障处理
若授权失败,核对issuer、resource audience、redirect URI和scope;不要把token贴进提示。
权限边界
前置条件
- Python 3.10+、固定提交兼容的Model Context Protocol Python SDK
权限边界
- 只在本地或隔离测试环境操作;涉及外部数据或副作用时使用最小权限并先审批
限制
SDK行为可能随版本变化;固定来源仅说明其提交中的实现,不代表其他Agent或客户端完全兼容。生产环境需独立审阅数据保留、授权和副作用。
固定上游来源
- 仓库
- modelcontextprotocol/python-sdk
- 文件路径
- docs/client/oauth-clients.md
- 固定提交
754254c08fe1c3eda18b69da3d336106fe8d72d6- 来源检查
- 2026-10-14 · 已按固定上游来源核对
仓库指标
以下数字属于上游仓库整体,不代表单个 Skill 或指南的点赞/热度。
- Stars
- 未取得
- Forks
- 未取得
- 观测时间
- 未取得
尚未取得指标快照。
许可证: MIT