什麼是MCP?由淺入深從零開始學習MCP

1
什麼是MCP?由淺入深從零開始學習MCP:在人工智慧快速發展的今天,大型語言模型(LLM)雖然功能強大,但仍面臨著一個根本性的限制:它們無法直接存取外部資料或執行實際操作。想像一下,如果你的AI助手無法查看你的行事曆、讀取最新的檔案,或是連接到你的工作系統,那它能提供的幫助將十分有限。為了解決這個問題,2024年11月,Anthropic公司推出了一個革命性的開放標準——MCP(Model Context Protocol,模型上下文協議)。

什麼是MCP?由淺入深從零開始學習MCP

前言

在人工智慧快速發展的今天,大型語言模型(LLM)雖然功能強大,但仍面臨著一個根本性的限制:它們無法直接存取外部資料或執行實際操作。想像一下,如果你的AI助手無法查看你的行事曆、讀取最新的檔案,或是連接到你的工作系統,那它能提供的幫助將十分有限。為了解決這個問題,2024年11月,Anthropic公司推出了一個革命性的開放標準——MCP(Model Context Protocol,模型上下文協議)。

 

第一章:認識MCP的基本概念

什麼是MCP?

MCP全稱為Model Context Protocol,中文為「模型上下文協議」,是一種開放協議,由開發模型Claude的美國新創公司Anthropic於2024年11月推出,提供了一種標準化的方式,讓AI向外部工具請求使用服務和數據。MCP的核心理念是讓模型能夠輕易對接到外部資料的一種協議,相信這時你可能會問,MCP是能讓模型對接外部資料的協議,不過為什麼需要讓模型能對接到外部資料?

 

MCP的重要性

在《AI代理是什麼?》一文中有談到,AI代理的核心要件之一是工具,而對接到外部資料意味著能讓AI去操作外部工具。軟體程式在做的事情就是操作資料,例如多數人都很熟悉的CRUD就是對資料的操作。如果我們把MCP的三個字分別拆開來看,他們分別代表:Model模型,也就是大家熟知的AI模型,例如GPT模型、Claude模型;Context脈絡,也就是提供給模型的額外資料;Protocol協定,也就是一個通用的標準。

 

為什麼需要MCP?

即使是最強大的AI模型,若脫離了外部資訊的支援,其能力仍大受限制。傳統上,我們為每個新增的資料來源都得打造專用的整合方案——每個API需要各自的調用介面、認證方法和錯誤處理機制,AI系統難以通用。這導致整體架構非常碎片化:不同應用、不同資料庫、不同工具之間缺乏統一標準,想讓AI連上新系統就得從頭開發新的「插件」。

大型語言模型面臨三個關鍵限制:知識限制和更新挑戰、缺乏專門的領域知識、訪問外部數據缺乏統一標準。MCP的出現正是為了解決這些痛點,提供統一標準來取代繁瑣的單次整合。

 

第二章:MCP的技術架構與運作原理

MCP的三層架構

MCP採用了客戶端-伺服器的架構,將AI與資料源的互動劃分為明確的角色與流程。主要涉及三個部分:

 

MCP主機(Host)

MCP主機是發起對外資料請求的AI應用本身,例如Claude桌面應用、編輯器中的AI助理或聊天機器人等。Claude、ChatGPT等需要透過MCP存取外部工具的AI模型,它們會請求MCP來幫助執行各種操作。這些AI模型就像筆電本身,需要透過轉接頭來連接外部裝置。

 

MCP客戶端(Client)

MCP客戶端是嵌入在主機應用中的連接器,負責按照MCP協定與外部的MCP伺服器建立一對一的連線。AI存取MCP的程式碼,它讓AI可以透過MCP來請求特定的工具或數據來源。這就像筆電的USB連接埠,負責發送請求給轉接頭,讓筆電知道該怎麼存取外部設備。

 

MCP伺服器(Server)

MCP伺服器是部署在資料來源一側的輕量程式。Slack、Gmail、Google日曆、Mac檔案系統等,提供AI所需的功能與數據,可以是遠端應用程式或本地數據來源。每個MCP伺服器負責連接一種或一組特定的外部資源,按照MCP標準接收客戶端請求並執行操作,最後將取得的資料或結果以標準化格式回傳給客戶端。

 

MCP的通訊機制

MCP的核心通訊協定基於JSON-RPC 2.0訊息格式。這是一種輕量級的遠端程序呼叫協定,使用JSON作為數據格式。MCP連接是狀態化的,允許在連接的生命周期內進行多次請求和響應。協定還支援伺服器和客戶端的能力協商,使得雙方在通訊開始時可以確定彼此支援的功能。

 

第三章:MCP與傳統API的差異

技術比較

MCP協議相對於傳統的AI API具有諸多創新和優勢。它不僅是一個開源、供應商無關的標準協議,還支持雙向持續交互、跨平台兼容和擴展模型能力等功能。

維度 傳統API MCP協議
通信模式 同步請求-響應 雙向流式通信
工具發現 硬編碼接口 標準化服務註冊
上下文管理 無狀態 持久化上下文
跨平台能力 依賴具體實現 標準化協議
性能開銷 高(序列化/網路) 中(協議解析)
適用場景 系統間集成 AI流水線編排

 

 

MCP的優勢

MCP協議完全開源,並且不依賴於任何特定的供應商或平台。這意味著,任何開發者都可以在自己的項目中實現MCP協議,無需擔心供應商鎖定的問題。MCP協議支持雙向持續交互,即不僅模型可以請求數據,Server也可以主動向Host發出信息,甚至參與到對話中。這種雙向交互方式為模型與外部資源的互動帶來了更多的靈活性和智能性。

 

第四章:MCP的實際應用與案例

企業應用案例

在企業應用領域,MCP協議已經開始在數據分析、知識管理、業務決策等方面發揮作用。通過將AI模型與企業內部的數據源和工具(如數據庫、文檔管理系統等)連接,MCP為企業提供了更加智能化的解決方案。企業能夠利用MCP協議對業務數據進行實時處理和分析,從而做出更精準的決策。

以銀行客服系統導入AI為例,當客戶詢問:「能否提前還清貸款?」MCP能提示AI該銀行的房貸規則在哪裡查詢、違約金計算方式,和哪些客戶符合提前還款條件等。

 

開發者工具整合

MCP協議在開發者工具中的應用也非常廣泛。例如,通過MCP,開發者可以將AI模型與IDE(如Replit)和代碼助手(如Codeium)進行深度整合,從而提升編程效率。這些工具能夠通過MCP獲取代碼上下文和相關文檔,幫助開發者快速解決問題並提升開發效率。

舉例來說,假如今天用AI代理在Cursor或Windsurf這類的AI驅動IDE寫完程式碼,想要直接發一個Pull Request到GitHub上,在過去是做不到的,因為即使AI代理非常聰明,但沒有對接到外部的工具,也無法完成這類的任務。不過當有了MCP後,這些手動的流程都能夠被AI做掉。

 

實際操作範例

使用者向ChatGPT提出請求:「幫我找出這週與總經理的會議紀錄,並寄送摘要。」AI分析請求後,發現需要存取日曆數據、產生會議摘要和發送Gmail,便會透過MCP客戶端發送請求到MCP伺服端,請求使用「日曆存取」與「郵件發送」這兩種功能。過程中ChatGPT不用直接對接Google的API,而是統一透過MCP來取得數據。

 

第五章:MCP的學習路徑與實作指南

初學者學習路徑

要學習MCP,首先需要掌握Python程式語言基礎。學習目標包括深入理解MCP基礎概念、認識MCP的核心價值,以及設計並實作MCP Server。

基礎學習階段包括:

  • MCP基礎概念與架構-MCP的定位與理念

  • 了解MCP的架構與元件

  • 了解MCP的通信協議與傳輸方式

  • 設計並實作MCP Server

 

實作步驟

第一步:環境設置

首先需要安裝Python和相關的MCP SDK。使用標準的IO傳輸方式來創建一個.NET 8.0控制台應用。

第二步:創建MCP Server

創建一個Tools目錄,然後添加一個TimeTool.cs。這個TimeTool就是我們定義的基於MCP的Tool,可以看到基於SDK提供的Attribute,可以方便地將其指定為MCP Server Tools。

第三步:配置與測試

修改Program.cs設置為啟動MCP Server,同樣,也是很方便地就完成了MCP Server的創建。重點關注WithToolsFromAssembly這個擴展方法,它會掃描程序集中添加了McpServerTool標籤的類進行註冊。

 

實際開發案例

以下實作完整的MCP架構範例,將帶你從零開始建立屬於你自己的AI工具。這次要完成的情境是:「請AI幫我寄出一封信給Rex,主旨是『會議提醒』,內容是『明天下午兩點記得開會』。」

整個過程會用到MCP的三大組件,分工如下:

  • Hosts(主機端):是Claude,AI模型本身

  • Clients(客戶端):是一段在Claude系統裡運作的MCP Client程式,負責把這個「寄信」的指令包裝成標準格式,傳送給正確的工具

  • Servers(伺服端):就是你自己寫的那段Python程式,也就是MCP Server,它接到指令後,真的去幫你登入Gmail,寄出那封信

 

第六章:MCP的生態系統與發展現狀

官方支持與早期採用者

作為MCP協議的提出者,Anthropic在推動協議的生態建設方面發揮了核心作用。自MCP發布以來,Anthropic不僅在自身產品中深度整合MCP,還積極與多個企業和開發者工具厂商合作,推動MCP的應用和發展。

Block和Apollo等早期採用者已經將MCP整合到他們的系統中,而Zed、Replit、Codeium和Sourcegraph等開發工具公司也正在與Anthropic合作,使用MCP來增強他們的平台。這使得AI代理能夠更好地檢索相關資訊,從而進一步理解編碼任務的上下文,並用更少的嘗試生成更細緻、功能更強大的程式碼。

 

社區參與與開源發展

MCP協議的開放性為社區的參與提供了廣闊的空間。Anthropic以開放姿態經營MCP項目,並通過GitHub和其他平台鼓勵開發者貢獻代碼和討論。通過這些開放渠道,Anthropic也不斷收集開發者的反馈,持續優化協議功能和使用體驗。

目前Anthropic提供開源的MCP,包括Google Drive、Slack和GitHub在內,來自各個領域、超過1,000項服務已經開發MCP伺服器。早期使用者則以AI編寫程式的服務商為主,例如Google的Goose、Cursor和Cline,它們將MCP導入其AI系統中,利用MCP來提升產品服務。

 

應用領域擴展

MCP協議的應用場景不斷擴展,並且跨越了多個行業:

企業營運自動化

  • Salesforce+Slack+郵件系統整合:縮短行政作業時間65%

  • ERP智慧查詢:零售業庫存預測準確率提升18%

 

開發者工具鏈

  • GitHub+Jira+Slack三維整合

  • IDE深度整合:JetBrains系列內建MCP協議支援率達87%

 

雲端服務生態系

  • Azure MCP:金融業採用率42%

  • Google Cloud BigQuery:查詢響應時間<200ms

  • AWS Lambda封裝S3 MCP接口:成本降低37%

 

創意生產工具

  • Unity遊戲開發:設計週期縮短50%

  • Figma設計協作:UI一致性提升73%

  • Adobe Premiere MCP插件:影片產製效率提升2.8倍

 

第七章:MCP的挑戰與未來發展

技術挑戰

目前MCP市場仍由Anthropic主導,要讓MCP成為普遍通用的標準,還需要主要的模型供應商都跟進採用。雖然MCP社區已有超1100個開源服務器,但其能否成為行業標準仍需觀察(如LangChain社區對此持謹慎態度)。

 

安全性挑戰

MCP協議面臨一些未解決的風險:

  • DDoS攻擊面擴大約7倍

  • 跨協議指令注入漏洞(CVE-2025-0192)

  • 企業知識產權外流風險提升

 

未來發展趨勢

MCP雖已在金融科技領域展現出可觀的潛力與初步應用價值,但其進一步普及與深化仍面臨諸多挑戰,同時也蘊藏著相當的發展機會。未來的趨勢將圍繞在三大主軸:標準化、隱私安全強化與動態自適應模型編排。

 

智能編排與自適應上下文管理

未來MCP發展的另一重要方向,是強化其在模型協作流程中的「主動性」與「智能化」。目前MCP主要扮演資料傳遞的被動角色,但隨著AI系統日趨複雜,模型之間的調用順序與上下文生成邏輯也需具備動態調整能力。

 

可解釋性與決策溯源支援強化

透過引入規則引擎、知識圖譜或策略學習演算法,MCP有潛力進化為具備「任務感知」的協議代理,根據任務需求與上下文內容,自動調整模型排序、選擇最佳上下文輸入、甚至呼叫額外輔助模型提升效能。

 

經濟影響與社會意義

經濟效應

根據Gartner 2025 Q1報告推論:

  • AI整合開發成本降幅:38-55%

  • 新創進入門檻降低:62%

  • 企業AI採用率預測:2027年達79%

 

行業顛覆風險

  • 系統整合商:傳統客製化開發需求減少43%

  • 雲端平台:MCP支援度成為核心KPI

  • 監管挑戰:歐盟AI法案新增MCP互操作性條款

 

社會層面影響

學術研究警告(劍橋大學AI倫理中心)指出資料偏見放大風險,以及勞動力轉型:低階資料處理職位需求預估下降29%,提示工程師職缺增長率340%。

 

結語

MCP協議正引發AI領域的典範轉移,從「百科全書型助理」轉向「實務操作型助手」。它不僅為AI模型提供了連接外部世界的標準化橋樑,更為開發者和企業提供了構建智能應用的全新可能性。

對於想要學習MCP的人來說,現在正是最佳的時機。隨著越來越多的工具和平台支持MCP協議,掌握這項技術將成為AI應用開發的重要技能。無論你是開發者、企業決策者,還是對AI技術感興趣的學習者,MCP都值得你深入了解和學習。

簡單來說,MCP就是AI的「萬能接口」。有了它,AI模型就能像插上USB-C線一樣,輕鬆連接到各種外部數據源和工具,變得更聰明、更實用。不管是開發者還是普通用戶,都能通過MCP讓AI干更多事,而且過程簡單又安全。未來隨著MCP的普及,我們可能會看到更多能干實事兒的AI應用冒出來!