MCP 連接器
Claude 的模型上下文協議(Model Context Protocol,MCP)連接器功能使您能夠直接從 Messages API 連接到遠程 MCP 服務器,無需單獨的 MCP 客戶端。
此功能需要 beta 標頭:"anthropic-beta": "mcp-client-2025-04-04"
主要功能
- 直接 API 集成:無需實現 MCP 客戶端即可連接到 MCP 服務器
- 工具調用支持:通過 Messages API 訪問 MCP 工具
- OAuth 認證:支持 OAuth Bearer 令牌用於已認證的服務器
- 多服務器:在單個請求中連接到多個 MCP 服務器
限制
- 在 MCP 規範的功能集中,目前僅支持工具調用。
- 服務器必須通過 HTTP 公開暴露。本地 STDIO 服務器無法直接連接。
- MCP 連接器目前不支持 Amazon Bedrock 和 Google Vertex。
在 Messages API 中使用 MCP 連接器
要連接到遠程 MCP 服務器,請在 Messages API 請求中包含 mcp_servers
參數:
MCP 服務器配置
mcp_servers
數組中的每個 MCP 服務器支持以下配置:
字段描述
屬性 | 類型 | 必填 | 描述 |
---|---|---|---|
type | string | 是 | 目前僅支持 “url” |
url | string | 是 | MCP 服務器的 URL。必須以 https:// 開頭 |
name | string | 是 | 此 MCP 服務器的唯一標識符。它將在 mcp_tool_call 塊中用於識別服務器並向模型區分工具。 |
tool_configuration | object | 否 | 配置工具使用 |
tool_configuration.enabled | boolean | 否 | 是否啟用此服務器的工具(默認:true) |
tool_configuration.allowed_tools | array | 否 | 限制允許的工具列表(默認情況下,允許所有工具) |
authorization_token | string | 否 | 如果 MCP 服務器需要,則提供 OAuth 授權令牌。參見 MCP 規範。 |
響應內容類型
當 Claude 使用 MCP 工具時,響應將包含兩種新的內容塊類型:
MCP 工具使用塊
MCP 工具結果塊
多個 MCP 服務器
您可以通過在 mcp_servers
數組中包含多個對象來連接到多個 MCP 服務器:
認證
對於需要 OAuth 認證的 MCP 服務器,您需要獲取訪問令牌。MCP 連接器 beta 版支持在 MCP 服務器定義中傳遞 authorization_token
參數。
API 消費者需要在進行 API 調用之前處理 OAuth 流程並獲取訪問令牌,以及根據需要刷新令牌。
獲取測試用的訪問令牌
MCP 檢查器可以指導您完成獲取測試用訪問令牌的過程。
-
使用以下命令運行檢查器。您需要在機器上安裝 Node.js。
-
在左側的側邊欄中,對於”Transport type”,選擇”SSE”或”Streamable HTTP”。
-
輸入 MCP 服務器的 URL。
-
在右側區域,在”Need to configure authentication?”後點擊”Open Auth Settings”按鈕。
-
點擊”Quick OAuth Flow”並在 OAuth 屏幕上授權。
-
按照檢查器的”OAuth Flow Progress”部分中的步驟操作,點擊”Continue”直到達到”Authentication complete”。
-
複製
access_token
值。 -
將其粘貼到 MCP 服務器配置中的
authorization_token
字段中。
使用訪問令牌
一旦您使用上述任一 OAuth 流程獲得訪問令牌,您可以在 MCP 服務器配置中使用它:
有關 OAuth 流程的詳細說明,請參閱 MCP 規範中的 授權部分。