Claude Code MCP 連外工具的 5 種接法
4 種 MCP 連線方式,外加授權與審批規則,幫你判斷 Claude Code 該接 HTTP、stdio 還是 WebSocket。

Claude Code 要接外部工具,該先選哪一種 MCP 連線?
Claude Code 透過 MCP 連到資料庫、API 和應用程式,重點是選對傳輸方式與授權規則。
看完這 5 項,你就能判斷 Claude Code 該用哪種 MCP 伺服器、怎麼設權限,以及哪些情況要先審批再上線。
| 項目 | 最佳用途 | 設定重點 |
|---|---|---|
| HTTP server | 遠端服務 | 推薦傳輸,支援 OAuth 與 headers |
| SSE server | 舊式遠端架構 | 已逐步淘汰,能用 HTTP 就改用 HTTP |
| stdio server | 本機腳本與系統存取 | 以本機程序執行,適合直接碰檔案與環境 |
| WebSocket server | 推送型事件 | 持久雙向連線,僅支援 header 驗證 |
1. HTTP 伺服器最適合遠端工具
訂閱 AI 趨勢週報
每週精選模型發布、工具應用與深度分析,直送信箱。不定期,不騷擾。
不會寄垃圾信,隨時可取消。
HTTP 是 Claude Code 連遠端 MCP 伺服器的首選,像 Notion、內部 API、雲端 SaaS 都屬於這一類。它的優點是跟一般請求回應流程一致,部署和除錯都比較直覺。

如果你從文件或範例複製設定,還要注意 streamable-http 其實可視為 http 的別名。實作上常見做法是直接帶 token 或 OAuth,讓工具在伺服器端完成授權。
claude mcp add --transport http notion https://mcp.notion.com/mcpclaude mcp add --transport http secure-api https://api.example.com/mcp --header "Authorization: Bearer your-token"- 適合支援標準 request-response 的服務
2. stdio 伺服器最適合本機流程
stdio 伺服器會以本機程序啟動,適合自訂腳本、檔案操作工具,或需要直接讀寫工作目錄的整合。Claude Code 會替它設定 CLAUDE_PROJECT_DIR,讓伺服器更容易解析專案路徑。
這類設定最容易出錯的地方是 -- 分隔線。分隔線前是 Claude Code 自己的參數,後面才完整交給伺服器命令,像 npx、Python 或其他 runtime 都會用到這個規則。
claude mcp add --transport stdio airtable -- npx -y airtable-mcp-server- 適合本機自動化與自訂 connector
- 可用
--env KEY=value傳環境變數 - 伺服器參數放在
--後面,避免被 Claude 解析
3. WebSocket 伺服器適合即時推送
WebSocket 的價值在於持久連線,伺服器可以主動把事件推進 Claude Code,不必等使用者再次發問。像事件串流、聊天系統、Webhook 型整合,這種模式會比 HTTP 更順手。

但它的授權方式比較窄,通常只走 header-based auth,而且 CLI 的 --transport 不接受 ws。實務上多半要改用 JSON 設定或 claude mcp add-json 來建立。
claude mcp add-json events-server '{"type":"ws","url":"wss://mcp.example.com/socket","headers":{"Authorization":"Bearer YOUR_TOKEN"}}'- 適合雙向事件流與即時通知
- 如果只是回應請求,優先選 HTTP
4. SSE 是舊方案,能避就避
SSE 仍可能出現在一些舊的遠端 MCP 設定裡,但它已經不是推薦路線。若服務端和文件都支援 HTTP,通常直接換過去比較省事,也比較符合現在的設定習慣。
這一點很重要,因為你在團隊內複製設定時,最容易把歷史包袱一起帶進來。保留 SSE 只適合你真的在維護舊系統,或供應商短期內還沒升級。
- 只在既有相容性需求下保留
- 新部署優先改用 HTTP
- 避免把 deprecated 設定當成標準模板
5. 審批、scope 與風險要一起看
MCP 不只是接上工具而已,Claude Code 還會看安裝範圍、workspace trust 和審批狀態。放在 .mcp.json 的 project-scoped server,常會先進入 pending,等你確認後才啟用。
管理上可以用 claude mcp list、claude mcp get、claude mcp remove 檢查與清理。若 connector 會抓外部內容,還要留意 prompt injection 風險,特別是在共享 repo 或多人維護的環境。
claude mcp list查看已設定伺服器claude mcp get github檢查單一伺服器claude mcp remove github移除不需要的連線
哪種適合你
如果你接的是雲端 SaaS、內部 API 或一般遠端服務,先選 HTTP。若是本機腳本、檔案工具或要碰工作目錄的自動化,選 stdio。需要即時推送事件時,再考慮 WebSocket;而 SSE 只建議留給舊系統相容。
真正的決策點其實是信任邊界:誰能審批、伺服器放在哪個 scope、以及它會不會讀外部內容。這三件事先定好,Claude Code 才能安全地從手動貼資料,變成直接操作工具。