參考

在 Claude Code 新增 MCP 伺服器

遠端伺服器用 `claude mcp add --transport http <名稱> <網址>`;本機程序用 `claude mcp add <名稱> -- <指令>`,`--` 後面的內容會原封不動傳給伺服器。實務上真正容易出錯的不是指令格式,而是範圍:`local`(預設、只有自己)、`project`(寫進儲存庫的 `.mcp.json`、團隊共用)、`user`(所有專案、只有自己)。想讓整個團隊拿到同一台伺服器,只有 `--scope project` 這一個選項。

繁體中文 · 最後查證日: 2026-09-05 · 英文完整版: English

三種傳輸方式的寫法

# HTTP(遠端,官方建議)
claude mcp add --transport http notion https://mcp.notion.com/mcp

# HTTP + Bearer token
claude mcp add --transport http <名稱> <網址> \
  --header "Authorization: Bearer your-token"

# stdio(本機程序,-- 之後原封不動傳給伺服器)
claude mcp add --env API_KEY=your-key --transport stdio myserver \
  -- python server.py --port 8080

# SSE(官方文件已標示為淘汰)
claude mcp add --transport sse asana https://mcp.asana.com/sse
格式取自官方 MCP 文件(2026-09-05 查證)。要新增伺服器的話請選 HTTP。

範圍:這台伺服器誰看得到

範圍生效於是否共用存放位置
local(預設)目前這個專案~/.claude.json
project目前這個專案是(透過 .mcp.json)專案根目錄的 .mcp.json
user自己的所有專案~/.claude.json
# 團隊共用(會被 commit 進儲存庫)
claude mcp add --transport http shared-server --scope project https://example.com/mcp

# 所有專案,但只有自己
claude mcp add --transport http hubspot --scope user https://mcp.hubspot.com/anthropic
最常見的搞混

`local` 和 `project` 的「生效範圍」是一樣的,都只限目前這個專案。差別在存放位置:`local` 寫進 `~/.claude.json`(你自己的電腦),`project` 寫進儲存庫裡的 `.mcp.json`。「以為發給團隊了、結果只有自己有」的意外,幾乎都是這裡搞混。

.mcp.json 長什麼樣

{
  "mcpServers": {
    "shared-server": {
      "type": "http",
      "url": "https://example.com/mcp"
    }
  }
}
用 project 範圍新增就會產生這個檔案。可以進版本控制、可以被審查,是這個範圍最大的價值。

四種認證方式

  • OAuth 2.0:新增伺服器後,在工作階段內用 `/mcp` 面板完成授權。命令列上則是 `claude mcp login <名稱>` 與 `claude mcp logout <名稱>`。
  • 預先設定的 OAuth 憑證:用 `--client-id`、`--client-secret`、`--callback-port` 指定;CI 環境可改用 `MCP_CLIENT_SECRET` 環境變數。
  • 靜態標頭:把 API 金鑰或 token 用 `--header "Authorization: Bearer ..."` 或 `--header "X-API-Key: ..."` 傳入。
  • 動態標頭:在 `.mcp.json` 的 `headersHelper` 欄位指定一支腳本,由它產生標頭。適合接公司內部的認證系統。

管理指令

claude mcp list          # 列出已登記的伺服器
claude mcp get notion    # 查看單一伺服器詳情
claude mcp remove notion # 移除

# 工作階段內
/mcp                     # 查看連線狀態、完成 OAuth

最後給一個維運上的建議:一開始不要同時接很多台。代理程式可用的工具越多,選錯工具的空間也越大。先接一台,用 `/mcp` 確認它真的有被用到,再接下一台——這樣反而更快穩定下來。

常見問題

claude mcp add 的範圍該選哪一個?
要讓團隊所有人都拿到同一台伺服器,就用 `--scope project`,只有這個範圍會寫進儲存庫的 .mcp.json 並透過版本控制共用。想在自己所有專案都用的個人伺服器選 `--scope user`;只在這個專案的自己的環境用,就是預設的 local。
stdio 要怎麼傳參數給伺服器?
用 `claude mcp add <名稱> -- <指令> [參數...]` 的格式,`--` 後面的內容會原封不動傳給伺服器。環境變數用 `--env KEY=VALUE` 放在 `--` 之前。例如:claude mcp add --env API_KEY=your-key --transport stdio myserver -- python server.py --port 8080。
SSE 還能用嗎?
還能用,但官方文件已把 SSE 傳輸標示為淘汰(deprecated),並建議遠端伺服器改用 HTTP。既有的 SSE 設定會繼續運作,新增伺服器時請改用 --transport http。
API 金鑰放哪裡比較安全?
靜態金鑰用 `--header` 以標頭傳入是基本作法。但要注意,用 project 範圍時金鑰若明文寫進 .mcp.json 就會留在儲存庫裡;公司內部若有認證系統,建議改用 .mcp.json 的 headersHelper 指定腳本,在執行時才產生標頭。

資料來源