Model Context Protocol(MCP)是一種通訊層,它為 Claude 提供上下文和工具,而不需要您編寫大量繁瑣的整合程式碼。MCP 不需要您自己建構每個工具函式,而是將這個負擔轉移給專門的伺服器來處理繁重的工作。

當您第一次接觸 MCP 時,您會看到展示基本架構的圖表:一個 MCP 客戶端(您的伺服器)連接到包含工具、提示和資源的 MCP 伺服器。每個 MCP 伺服器都充當與外部服務(如 GitHub、AWS 或資料庫)之間的介面。
MCP 解決的問題
假設您正在建構一個聊天介面,使用者可以向 Claude 詢問他們的 GitHub 資料——像是「我所有儲存庫中有哪些開放的 pull request?」這樣的問題。若要在沒有 MCP 的情況下處理這個問題,您需要為您想要支援的每個 GitHub 操作建立工具。

GitHub 擁有龐大的功能——儲存庫、pull request、issue、專案等等。建構一個完整的 GitHub 整合意味著要撰寫數量驚人的工具架構(schema)和函式:

這會產生大量您必須編寫、測試和維護的程式碼。這就是 MCP 發揮作用的地方。
MCP 如何運作
MCP 將工具定義和執行的負擔從您的伺服器轉移到專用的 MCP 伺服器。您不需要自己編寫所有那些 GitHub 工具,而是連接到一個已經實作了這些工具的 GitHub MCP 伺服器。

MCP 伺服器充當外部服務的包裝器,提供 Claude 可以使用的預先建構好的工具。您可以取得所有那些 GitHub 功能,而不需要自己編寫任何整合程式碼。

常見問題
誰來編寫 MCP 伺服器?
任何人都可以建立 MCP 伺服器的實作。通常,服務提供商自己會製作他們自己的官方實作。例如,AWS 可能會為其各種服務發布一個官方的 MCP 伺服器,其中包含相應的工具。
這與直接呼叫 API 有什麼不同?
當您直接呼叫服務的 API 時,您仍然必須自己編寫工具架構和函式實作。MCP 伺服器已經為您提供了定義好的工具架構和函式,節省了您的開發時間。

MCP 不就是和工具使用一樣嗎?
這是一個常見的誤解。MCP 伺服器和工具使用是互補但不同的概念。工具使用是關於 Claude 呼叫函式來完成任務。MCP 則是關於誰提供這些函式——不是由您自己編寫,而是由其他人已經在 MCP 伺服器中實作好了。
關鍵的洞察是,MCP 伺服器為您提供已經定義好的工具架構和函式,而直接使用工具則需要您自己編寫所有內容。兩者都涉及 Claude 使用工具,但 MCP 大幅減少了您這端所需的開發工作。