Claude Code MCP 是什麼?接上第一個伺服器,看它回答差多少

已實測2026.10.12

MCP 是讓 Claude Code 連到外部工具的接頭。我實際接了一個官方的文件伺服器,同一個問題有接和沒接各問一次,回答的差別直接貼給你看。順便講三種安裝範圍和連不上的時候怎麼查。

更新 2026/10/14・約 7 分鐘讀完・查證環境:macOS 27.0、Claude Code 2.1.280;本機伺服器與需要登入的伺服器依官方文件

先講結論

  • MCP 是讓 Claude Code 用到「外面的東西」的接頭,例如查文件、開瀏覽器、讀你的工作單。每接一個伺服器,它就多幾樣工具。
  • 加一個伺服器只要一行:claude mcp add --transport http 名稱 網址。我實測接上官方的文件伺服器,查同一個問題,答案具體很多。
  • 不要亂接。每個伺服器都會佔用它的記憶空間,而且官方提醒:接之前先確認你信得過它。
目錄
  1. 它到底是什麼
  2. 實際接一個:官方的文件伺服器
  3. 裝在哪裡差很多
  4. 另外兩種常見的伺服器
  5. 兩件要先知道的事
  6. 連不上的時候

Claude Code 剛裝好的時候,它的世界只有你的電腦:讀檔、改檔、跑指令。

用一陣子你就會想要更多。想叫它去查最新的文件,想叫它打開瀏覽器幫你點一點,想叫它讀公司的工作單。這些都在它的世界外面。

MCP 就是那扇門。

它到底是什麼

MCP 的全名是 Model Context Protocol,一個開放標準。你可以把它想成一種統一規格的接頭:任何服務只要照這個規格做一個「伺服器」,Claude Code 就能接上去,多出幾樣新工具。

我自己掛了好幾個,像是讓它操作瀏覽器的、讓它直接查關鍵字數據的。沒有它們,這些事就得我自己查完再貼給它。

講再多不如接一個看看。

實際接一個:官方的文件伺服器

官方有一個不用登入、專門查 Claude Code 文件的伺服器,拿來練習剛好。

第一步:加進來

在終端機(不是在 claude 對話裡)執行:

claude mcp add --scope project --transport http claude-code-docs https://code.claude.com/docs/mcp

拆開來看:--transport http 是說這個伺服器在網路上,不是你電腦裡的程式。claude-code-docs 是我隨便取的名字,你要叫它 docs 也行。最後是網址。

至於 --scope project,是我這次故意加的,等一下解釋。

它回我:

Added HTTP MCP server claude-code-docs with URL: https://code.claude.com/docs/mcp to project config
File modified: .mcp.json

資料夾裡多了一個 .mcp.json,打開來就這麼幾行:

{
  "mcpServers": {
    "claude-code-docs": {
      "type": "http",
      "url": "https://code.claude.com/docs/mcp"
    }
  }
}

第二步:看它的狀態

claude mcp get claude-code-docs
claude-code-docs:
  Scope: Project config (shared via .mcp.json)
  Status: ⏸ Pending approval (run `claude` to approve)
  Type: http
  URL: https://code.claude.com/docs/mcp

注意那個 Pending approval。因為我把它放在專案的設定檔裡,而專案設定檔是會跟著專案分享給別人的,所以 Claude Code 要你親自同意過才會啟用。在這個資料夾打 claude 進去,它就會問你。

如果你照官方預設的方式加(不寫 --scope),不會有這一步,狀態會直接是 ✔ Connected。

第三步:叫它用

我問了一個很冷門的問題:

用 claude-code-docs 這個伺服器查一下 MCP_TIMEOUT 是做什麼的,用兩句繁體中文回答,並說明你是用哪個工具查到的。

22 秒後:

MCP_TIMEOUT 是用來設定 MCP 伺服器啟動時的連線逾時時間(毫秒),預設 30 秒,
超過就視為連線失敗(例如 MCP_TIMEOUT=60000 claude 會改成 60 秒)。它跟控制
單次工具呼叫逾時的 MCP_TOOL_TIMEOUT 是不同的設定。

這是用 mcp__claude-code-docs__search_claude_code_docs 這個 MCP 工具查到的
(主要來自 en/mcp-quickstart 與 en/env-vars 頁面)。

有預設值、有範例、還告訴我跟另一個設定的差別,連出處是哪兩頁都講了。我回頭對了官方文件,預設 30 秒和那個範例都是對的。

對照組:不接伺服器,問同一題

我好奇沒有這個伺服器它會怎麼答,所以把它拿掉、也不准它上網,再問一次:

MCP_TIMEOUT 是一個環境變數,用來設定 Claude Code 連接 MCP(Model Context Protocol)
伺服器時,等待該伺服器回應或啟動的逾時時間(毫秒)。這是我從 Claude Code 相關的
一般環境變數知識得知的,並沒有實際查看這個專案的程式碼或上網搜尋。

方向沒錯,但就是一句籠統的話。預設幾秒?不知道。怎麼設?沒講。

這就是 MCP 的價值。它不是讓 AI 變聰明,是讓它手上有資料。

用完可以移除

claude mcp remove claude-code-docs --scope project
Removed MCP server claude-code-docs from project config
File modified: .mcp.json

(這一輪我是用 claude -p 這種問完就結束的模式跑的,並用參數直接指定只載入這一個伺服器,所以不用經過同意那一步。模型是 Sonnet。)

裝在哪裡差很多

回來講剛才的 --scope。同一個伺服器可以裝在三個地方,差別在誰用得到:

寫法 存在哪 誰用得到
不寫(預設是 local) ~/.claude.json,記在這個專案底下 只有你,只有這個專案
--scope project 專案裡的 .mcp.json 拿到這個專案的每個人
--scope user ~/.claude.json 的最上層 只有你,但所有專案都能用

官方的疑難排解第一條就是這個狀況:在 A 專案加了伺服器,跑去 B 專案發現不見了。它沒有壞,只是預設只裝在 A。

所以我的建議是:每個專案都會用到的,像瀏覽器那種,加的時候就寫 --scope user。只有某個專案才需要的,才用預設。

我這次用 project,純粹是不想為了寫文章去動到我自己的設定檔。

另外兩種常見的伺服器

上面那種是最簡單的:在網路上、不用登入。實際會遇到的還有兩種,這兩段我沒有重跑,是照官方文件寫的。

跑在你電腦上的。 像是操作瀏覽器的 Playwright,它需要動到你電腦裡的東西,所以是由 Claude Code 在本機啟動一個程式:

claude mcp add playwright -- npx -y @playwright/mcp@latest

-- 後面那串,就是它啟動伺服器時要執行的指令。這種需要先有 Node.js 18 以上。第一次連可能會顯示失敗,因為它還在下載,等一下再查一次就好。Playwright 這一台我後來在測試機上實際跑過,第一次用還要另外下載瀏覽器,AI 看到的頁面長什麼樣子,在 Playwright MCP 教學。另一台常用的 Context7 是放在網路上的,不用裝,讓 Claude Code 回答前先查最新的官方文件,實測在 Context7 是什麼。

要登入的。 Sentry、Linear、Notion 這類服務,加的方式一樣是給網址:

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

加完狀態會是 ! Needs authentication。這時進到對話裡打 /mcp,選那個伺服器,選 Authenticate,瀏覽器會跳出來讓你登入授權。

還沒登入之前,那台伺服器的工具 Claude Code 一個都拿不到。我拿 Figma 的 MCP 試過:不登入直接接上,它回報的狀態是需要登入,Figma 的工具是 0 個,問它能用什麼,它只回「沒有」。Figma MCP 怎麼接、免費版能用幾次,在 Figma MCP 教學。

伺服器也可以是你自己做的。n8n 可以把流程裡的工具開成 MCP 伺服器,我做了一個查匯率的,讓 Claude Code 連上去自己查、自己算,過程在 n8n MCP 教學。

兩件要先知道的事

接伺服器不是越多越好。

第一,每接一個,它的工具名稱和說明就會載入每一次對話,佔掉一部分記憶空間。官方的建議很直接:不用的就移除。想看現在掛了哪些,在對話裡打 /mcp。

第二,要挑對象。官方文件有一句提醒:接之前先確認你信得過那個伺服器,尤其是會去抓外部內容的,可能會把有問題的指示帶進來。來路不明的不要接。

連不上的時候

先在對話裡打 /mcp,或在終端機打 claude mcp list,看它是哪一種狀態。

狀態 怎麼回事 怎麼辦
✘ Failed to connect 伺服器沒啟動,或網址沒回應 打 claude mcp get 名稱 看錯誤細節。本機伺服器第一次常常只是還在下載,等一下再試
! Needs authentication 連得到,但要登入 進對話打 /mcp,選它,選 Authenticate
⏸ Pending approval 專案設定檔裡的伺服器,你還沒同意 在那個資料夾打 claude,它會問你
啟動逾時 超過預設的 30 秒 用 MCP_TIMEOUT=60000 claude 把時間拉長到 60 秒
/mcp 說沒有任何伺服器 多半是你在別的專案加的 回到那個專案,或改用 --scope user 重加

還有一個容易忽略的:你如果是手動改 .mcp.json,改完要重開對話才會生效。它只在啟動時讀一次。

下一篇可以回頭看Skills。MCP 是給它新的工具,Skill 是教它怎麼做事,兩個常常一起用。

想知道 Claude Code 在背後到底跟伺服器講了什麼,我後來不透過 AI、自己直接問了這台文件伺服器三句話,它回的內容攤開在 MCP 是什麼。那篇也講 MCP 是誰做的、其他 AI 工具怎麼用它。

常見問題

MCP 是什麼的縮寫?

Model Context Protocol。它是一個開放標準,用來把 AI 工具接上外部的資料和服務。

加了伺服器,為什麼在別的專案看不到?

因為預設只裝在「你加的那個專案」。要每個專案都能用,加的時候多寫 --scope user。

狀態顯示 Pending approval 是什麼意思?

這是放在專案設定檔 .mcp.json 裡、你還沒同意過的伺服器。在那個資料夾打 claude 進去,它會問你要不要啟用。

接很多個會怎樣?

每個伺服器的工具名稱和說明都會載入每一次對話,佔掉一部分空間。官方建議不用的就移除。

這篇怎麼查證的

文中的指令在 2026/10/12 實際執行過(macOS 27.0、Claude Code 2.1.280;本機伺服器與需要登入的伺服器依官方文件)。價格與方案以官方頁面為準,工具改版後內容可能過期。