Claude Managed Agents 支持将 Model Context Protocol (MCP) 服务器连接到您的代理。这使代理能够通过标准化协议访问外部工具、数据源和服务。
MCP 配置分为两个步骤:
这种分离方式将密钥排除在可复用的代理定义之外,同时允许每个会话使用自己的凭据进行身份验证。
所有 Managed Agents API 请求都需要 managed-agents-2026-04-01 beta 请求头。SDK 会自动设置 beta 请求头。
创建代理时,在 mcp_servers 数组中指定 MCP 服务器。每个服务器需要一个 type、一个唯一的 name 和一个 url。此阶段不提供身份验证令牌。
您在 MCP 服务器数组中分配的 name 用于引用工具数组中的 mcp_toolset 条目。
AGENT_ID=$(ant beta:agents create \
--name "GitHub Assistant" \
--model claude-opus-4-7 \
--mcp-server '{type: url, name: github, url: "https://api.githubcopilot.com/mcp/"}' \
--tool '{type: agent_toolset_20260401}' \
--tool '{type: mcp_toolset, mcp_server_name: github}' \
--transform id --raw-output)MCP 工具集默认使用 always_ask 权限策略,每次工具调用前都需要用户批准。请参阅权限策略以配置此行为。
启动会话时,传入 vault_ids 以为您的 MCP 服务器提供凭据。Vault 是您一次性注册并通过 ID 引用的凭据集合。请参阅使用 vault 进行身份验证,了解如何创建 vault 和管理凭据。
session = client.beta.sessions.create(
agent=agent.id,
environment_id=environment.id,
vault_ids=[vault.id],
)如果 vault 中提供的授权凭据无效,会话创建仍将成功,交互仍可继续进行。系统会发出一个 session.error 事件,描述 MCP 身份验证失败的情况。您可以决定是否在此错误上阻止进一步的交互、触发凭据更新,或允许会话在没有 MCP 的情况下继续。身份验证重试将在下一次 session.status_idle 到 session.status_running 的状态转换时发生。请参阅会话事件流,了解有关消费 session.error 和其他事件的详细信息。
Claude Managed Agents 连接到暴露 HTTP 端点的远程 MCP 服务器。服务器必须支持 MCP 协议的可流式 HTTP 传输。
有关 MCP 和构建 MCP 服务器的更多信息,请参阅 MCP 文档。
Was this page helpful?