32 KiB
Follow these steps to get started using these resources:
- Fork the Repository: Click
- Clone the Repository:
git clone https://github.com/microsoft/mcp-for-beginners.git - Join The
🌐 多語言支援
透過 GitHub Action 支援(自動化且時刻保持最新)
Arabic | Bengali | Bulgarian | Burmese (Myanmar) | Chinese (Simplified) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Macau) | Chinese (Traditional, Taiwan) | Croatian | Czech | Danish | Dutch | Estonian | Finnish | French | German | Greek | Hebrew | Hindi | Hungarian | Indonesian | Italian | Japanese | Kannada | Khmer | Korean | Lithuanian | Malay | Malayalam | Marathi | Nepali | Nigerian Pidgin | Norwegian | Persian (Farsi) | Polish | Portuguese (Brazil) | Portuguese (Portugal) | Punjabi (Gurmukhi) | Romanian | Russian | Serbian (Cyrillic) | Slovak | Slovenian | Spanish | Swahili | Swedish | Tagalog (Filipino) | Tamil | Telugu | Thai | Turkish | Ukrainian | Urdu | Vietnamese
喜歡本地克隆?
這個倉庫包含 50+ 種語言翻譯,將明顯增加下載大小。如欲不含翻譯克隆,請使用稀疏簽出:
Bash / macOS / Linux:
git clone --filter=blob:none --sparse https://github.com/microsoft/mcp-for-beginners.git cd mcp-for-beginners git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'CMD (Windows):
git clone --filter=blob:none --sparse https://github.com/microsoft/mcp-for-beginners.git cd mcp-for-beginners git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"這能以更快的速度下載到完成課程所需的所有內容。
🚀 Model Context Protocol (MCP) 初學者課程
透過 C#, Java, JavaScript, Rust, Python 與 TypeScript 實作範例學習 MCP
🧠 Model Context Protocol 課程總覽
歡迎踏上 Model Context Protocol 的旅程!如果你曾好奇 AI 應用程式如何與不同工具和服務溝通,你將會發現這個正在改變開發者打造智能系統方式的優雅解決方案。
把 MCP 想像成 AI 應用程式的通用翻譯器——就像 USB 埠讓你能將任何裝置連接到電腦一樣,MCP 讓 AI 模型以標準化的方式連接到任何工具或服務。無論你是在打造你的第一個聊天機器人或是在進行複雜的 AI 工作流程,理解 MCP 都將賦予你建立更強大靈活應用程式的能力。
本課程細心為你的學習旅程打造。我們會從你已瞭解的簡單概念開始,逐步透過你喜愛的程式語言進行實作練習來提昇你的專業知識。每個步驟都包含清楚的解說、實用示例,以及大量鼓勵。
完成這趟旅程後,你將有信心建構自己的 MCP 伺服器,將其整合至熱門 AI 平台,並理解這項技術如何重塑 AI 開發的未來。讓我們一起開始這場激動人心的冒險吧!
官方文件與規範
本課程與 MCP 規範 2025-11-25(最新穩定版)相符。MCP 規範使用基於日期的版本編號(YYYY-MM-DD 格式)以確保協議版本清晰可追溯。
這些資源將隨著你的理解加深而變得更有價值,但不必急著全部閱讀。從你最感興趣的領域開始!
- 📘 MCP 文件 – 這是你進行逐步教學和使用指南的首要資源。該文件針對初學者撰寫,提供清楚範例,讓你可自行跟著學習。
- 📜 MCP 規範 – 帶有全面參考手冊的性質。當你學習課程時,會經常回來查閱細節與進階功能。
- 📜 MCP 規範版本控制 – 內容說明協議版本歷史,以及 MCP 如何使用基於日期的版本編號。
- 🧑💻 MCP GitHub 倉庫 – 這裡有多種程式語言的 SDK、工具和程式碼範例,是執行範例和現成元件的寶庫。
- 🌐 MCP 社群 – 與其他學習者及資深開發者一同討論 MCP。這是個支持性社群,歡迎提問並自由分享知識。
學習目標
完成本課程後,你會對自己的新能力充滿信心和興奮。你將達成以下目標:
• 理解 MCP 基礎:你會明白 Model Context Protocol 是什麼,以及它如何徹底改變 AI 應用間的協作,並用易懂的比喻和範例說明。
• 建立你的第一個 MCP 伺服器:使用你慣用的程式語言建立運行中的 MCP 伺服器,從簡單例子開始,逐步成長技能。
• 將 AI 模型連接至真實工具:學習如何橋接 AI 模型與實際服務,讓你的應用程式擁有強大新功能。
• 實施安全最佳實踐:理解如何確保 MCP 實作的安全,保護你的應用程式和用戶。
• 自信部署:你會知道如何將 MCP 專案從開發導向生產環境,採用實務可行的部署策略。
• 加入 MCP 社群:成為日益壯大的開發者社群其中一員,一同塑造 AI 應用開發的未來。
必備背景知識
在深入 MCP 詳細內容前,先確保你對一些基礎概念感到舒適。別擔心如果你不是這些領域的專家——我們會隨時說明你需要了解的所有內容!
理解協議(基礎)
把協議想像成對話的規則。當你打電話給朋友,你們都知道接聽時說「哈囉」,輪流說話,結束時說「再見」。電腦程式也需要類似規則來有效溝通。
MCP 是一種協議——一套共識規則,幫助 AI 模型與工具及服務進行順暢「對話」。就像對話規則讓人類交流更順暢,MCP 讓 AI 應用的通訊更可靠且強大。
用戶端與伺服器關係(程式如何協作)
你每天都使用用戶端-伺服器關係!當你用瀏覽器(用戶端)造訪網站,連接的是提供網頁內容的網頁伺服器。瀏覽器知道怎樣提出資訊請求,伺服器知道怎樣回應。
在 MCP 中,我們有類似關係:AI 模型是用戶端,會請求資訊或動作,MCP 伺服器則提供這些能力。好比 AI 有個助理(伺服器),能代為執行特定任務。
為什麼標準化重要(讓事情協同運作)
想像如果每家車廠用不同形狀的油槍——你就得為每台車準備不同接頭!標準化意味著共同採用通用方式,使各方能無縫合作。
MCP 就是 AI 應用的標準化方案。不用讓每個 AI 模型都寫專屬程式碼對接每個工具,MCP 創造統一通訊橋樑。這意謂開發者可一次建造工具,讓多種 AI 系統共用。
🧭 你的學習路徑總覽
你的 MCP 旅程經過精心規劃,逐步增強信心與技能。每個階段引入新概念,並深化已學內容。
🌱 基礎階段:了解基本概念(模組 0-2)
冒險從這裡展開!我們將用熟悉的比喻與簡單範例介紹 MCP 概念。你會了解 MCP 是什麼、為何存在,以及它如何嵌入 AI 開發的大世界中。
• 模組 0 - MCP 介紹:從探索 MCP 是什麼以及為何對現代 AI 應用至關重要開始。你將看到 MCP 實際運作範例,理解它如何解決開發者常見問題。
• 模組 1 - 核心概念說明:學習 MCP 的重要基石。我們會用大量比喻與視覺範例,確保這些概念自然易懂。
• 模組 2 - MCP 的安全性:安全性聽起來可能令人畏懼,但我們會展示 MCP 內建安全機制,並教你最佳實踐,從一開始就保護你的應用。
🔨 建置階段:創建你的第一個實作(模組 3)
現在真正的樂趣開始了!你將親自動手建立實際的 MCP 伺服器和客戶端。別擔心——我們會從簡單開始,並引導你完成每一個步驟。
本模組包含多個實作指南,讓你用喜歡的程式語言練習。你將建立第一個伺服器,構建連接至它的客戶端,甚至整合像 VS Code 這樣的流行開發工具。
每個指南都包含完整的範例程式碼、故障排除技巧以及我們採取特定設計決策的解釋。完成這個階段後,你將擁有可自豪的運作中的 MCP 實作!
🚀 成長階段:進階概念與實務應用(模組 4-5)
掌握基礎後,你將準備探索更複雜的 MCP 功能。我們會涵蓋實務執行策略、除錯技巧、以及像多模態 AI 整合等進階主題。
你還會學習如何擴展 MCP 實作以用於生產,並整合像 Azure 雲端平台。這些模組將讓你能建構能應付真實世界需求的 MCP 解決方案。
🌟 精通階段:社群參與與專業領域(模組 6-11)
最後階段著重於加入 MCP 社群,以及專攻你最感興趣的領域。你將學習如何對開源 MCP 專案做出貢獻,實作進階認證方案,並打造具全面性資料庫整合的解決方案。
模組 11 值得特別提及——它是一個完整的 13 個實驗室的實作學習路徑,教你如何建立帶有 PostgreSQL 整合的生產級 MCP 伺服器。這就像一個彙整你所學的一切的期末專案!
📚 完整課程架構
| 模組 | 主題 | 說明 | 連結 |
|---|---|---|---|
| 模組 0-3:基礎知識 | |||
| 00 | MCP 簡介 | 模型上下文協議簡介及其在 AI 管線中的重要性 | 閱讀更多 |
| 01 | 核心概念說明 | 深入探討 MCP 核心概念 | 閱讀更多 |
| 02 | MCP 安全性 | 安全威脅與最佳實務 | 閱讀更多 |
| 03 | MCP 入門 | 環境設定,基本伺服器/客戶端,整合 | 閱讀更多 |
| 模組 3:建立你的第一個伺服器與客戶端 | |||
| 3.1 | 第一個伺服器 | 建立你的第一個 MCP 伺服器 | 指南 |
| 3.2 | 第一個客戶端 | 開發基本 MCP 客戶端 | 指南 |
| 3.3 | 使用大型語言模型的客戶端 | 整合大型語言模型 | 指南 |
| 3.4 | VS Code 整合 | 在 VS Code 中使用 MCP 伺服器 | 指南 |
| 3.5 | stdio 伺服器 | 使用 stdio 傳輸建立伺服器 | 指南 |
| 3.6 | HTTP 串流 | 在 MCP 中實作 HTTP 串流 | 指南 |
| 3.7 | Microsoft Foundry 工具組 | 使用 Microsoft Foundry 工具組搭配 MCP | 指南 |
| 3.8 | 測試 | 測試你的 MCP 伺服器實作 | 指南 |
| 3.9 | 部署 | 將 MCP 伺服器部署到生產環境 | 指南 |
| 3.10 | 高階伺服器使用 | 使用高階伺服器以達成進階功能與改善架構 | 指南 |
| 3.11 | 簡易認證 | 從頭介紹認證與角色基礎存取控制 | 指南 |
| 3.12 | MCP 主機設定 | 配置 Claude Desktop、Cursor、Cline 與其他 MCP 主機 | 指南 |
| 3.13 | MCP Inspector | 使用 Inspector 工具除錯及測試 MCP 伺服器 | 指南 |
| 3.14 | 取樣 | 使用取樣與客戶端協作 | 指南 |
| 3.15 | MCP 應用程式 | 建構 MCP 應用程式 | 指南 |
| 模組 4-5:實務與進階 | |||
| 04 | 實務實作 | SDK、除錯、測試、可重用提示範本 | 閱讀更多 |
| 4.1 | 分頁 | 使用游標分頁處理大量結果集 | 指南 |
| 05 | MCP 進階主題 | 多模態 AI、擴展能力、企業應用 | 閱讀更多 |
| 5.1 | Azure 整合 | MCP 與 Azure 整合 | 指南 |
| 5.2 | 多模態 | 多種模態的應用 | 指南 |
| 5.3 | OAuth2 示範 | 實作 OAuth2 認證 | 指南 |
| 5.4 | 根上下文 | 理解與實作根上下文 | 指南 |
| 5.5 | 路由策略 | MCP 路由策略 | 指南 |
| 5.6 | 取樣技術 | MCP 中的取樣技術 | 指南 |
| 5.7 | 擴展能力 | 擴展 MCP 實作 | 指南 |
| 5.8 | 安全性 | 進階安全考量 | 指南 |
| 5.9 | 網路搜尋 | 實作網路搜尋功能 | 指南 |
| 5.10 | 即時串流 | 建構即時串流功能 | 指南 |
| 5.11 | 即時搜尋 | 實作即時搜尋 | 指南 |
| 5.12 | Entra ID 認證 | 使用 Microsoft Entra ID 認證 | 指南 |
| 5.13 | Foundry 整合 | 與 Microsoft Foundry 整合 | 指南 |
| 5.14 | 上下文工程 | 有效的上下文工程技術 | 指南 |
| 5.15 | MCP 自訂傳輸 | 自訂傳輸實作 | 指南 |
| 5.16 | 協定特性 | 進度通知、取消、資源範本 | 指南 |
| 5.17 | 對抗式多代理推理 | 兩個代理使用共享 MCP 工具辯論相反觀點,並由裁判代理評估 | 指南 |
| 模組 6-10:社群與最佳實務 | |||
| 06 | 社群貢獻 | 如何對 MCP 生態系貢獻 | 指南 |
| 07 | 早期採用見解 | 實務實作故事分享 | 指南 |
| 08 | MCP 最佳實務 | 效能、容錯、韌性 | 指南 |
| 09 | MCP 案例研究 | 實務實作範例 | 指南 |
| 10 | 實作工作坊 | 使用 Microsoft Foundry 工具組建構 MCP 伺服器 | 實驗室 |
| 模組 11:MCP 伺服器實作實驗室 | |||
| 11 | MCP 伺服器資料庫整合 | 涵蓋 PostgreSQL 整合的完整 13 個實驗室實作學習路徑 | 實驗室 |
| 11.1 | 簡介 | MCP 與資料庫整合簡介及零售分析使用案例 | 實驗室 00 |
| 11.2 | 核心架構 | 理解 MCP 伺服器架構、資料庫層與安全型態 | 實驗室 01 |
| 11.3 | 安全與多租戶 | 列級安全、認證與多租戶資料存取 | 實驗室 02 |
| 11.4 | 環境設定 | 開發環境、Docker、Azure 資源設定 | 實驗室 03 |
| 11.5 | 資料庫設計 | PostgreSQL 設定、零售架構設計與範例資料 | 實驗室 04 |
| 11.6 | MCP 伺服器實作 | 建立帶有資料庫整合的 FastMCP 伺服器 | 實驗室 05 |
| 11.7 | 工具開發 | 建置資料庫查詢工具與架構探索 | 實驗室 06 |
| 11.8 | 語意搜尋 | 使用 Azure OpenAI 與 pgvector 實作向量嵌入 | 實驗室 07 |
| 11.9 | 測試與除錯 | 測試策略、除錯工具與驗證方法 | 實驗室 08 |
| 11.10 | VS Code 整合 | 配置 VS Code MCP 整合及 AI 聊天功能 | 實驗室 09 |
| 11.11 | 部署策略 | Docker 部署、Azure Container Apps 與擴展考量 | 實驗室 10 |
| 11.12 | 監控 | Application Insights、日誌、效能監控 | 實驗室 11 |
| 11.13 | 最佳實務 | 效能優化、安全強化及生產環境建議 | 實驗室 12 |
| 模組 12:MCP 工具鏈 | |||
| 12.1 | 工具鏈 | MCP 在 Copilot 應用中的使用 | 指南 |
💻 範例程式專案
學習 MCP 最令人興奮的部分之一是看到你的程式技能逐步成長。我們設計的程式範例從簡單開始,隨著理解深化逐漸變得更進階。以下是我們介紹概念的方式——使用易於理解的程式碼,但展示真正的 MCP 原理,你不僅能明白這段程式碼的運作,還能理解為何它這樣架構,以及它如何融入更大型的 MCP 應用。
基本 MCP 計算器範例
| 語言 | 說明 | 連結 |
|---|---|---|
| C# | MCP 伺服器範例 | 查看程式碼 |
| Java | MCP 計算器 | 查看程式碼 |
| JavaScript | MCP 示範 | 查看程式碼 |
| Python | MCP 伺服器 | 查看程式碼 |
| TypeScript | MCP 範例 | 查看程式碼 |
| Rust | MCP 範例 | 查看程式碼 |
進階 MCP 實作
| 語言 | 說明 | 連結 |
|---|---|---|
| C# | 進階範例 | 查看程式碼 |
| Java with Spring | 容器應用示例 | 查看程式碼 |
| JavaScript | 高級範例 | 查看程式碼 |
| Python | 複雜實作 | 查看程式碼 |
| TypeScript | 容器範例 | 查看程式碼 |
🎯 MCP 學習先決條件
為了最大化此課程的學習效果,你應該具備:
-
至少熟悉以下其中一種語言的基礎程式設計知識:C#、Java、JavaScript、Python 或 TypeScript
-
理解用戶端-伺服器模型和 API
-
熟悉 REST 和 HTTP 概念
-
(可選)具備 AI/ML 概念背景
-
參與我們的社群討論以獲得支援
📚 學習指南與資源
本儲存庫包含多項資源,幫助你有效瀏覽與學習:
學習指南
我們提供了全面的 學習指南,幫助你有效地使用本儲存庫。這份視覺化課程地圖展示所有主題的關聯,並指導如何有效利用範例專案。對於喜歡透過視覺了解整體架構的學習者尤其有幫助。
指南包含:
- 顯示所有涵蓋主題的視覺課程地圖
- 各儲存庫區塊的詳細分解
- 如何使用範例專案的指導
- 適合不同技能層級的推薦學習路徑
- 補充學習之旅的額外資源
更新日誌
我們維護詳細的 更新日誌,追蹤所有課程材料的重要更新,確保你掌握最新改進與新增內容。
- 新增內容
- 結構調整
- 功能改良
- 文件更新
🛠️ 如何有效使用此課程
本指南中的每課包含:
- 對 MCP 概念的清晰說明
- 多種語言的即時程式碼範例
- 建立實際 MCP 應用的練習
- 針對進階學習者的額外資源
用 C# 學 MCP - 教學系列
讓我們一起了解模型上下文協定(MCP),這是一個先進框架,旨在標準化 AI 模型與客戶端應用的互動。透過這個適合初學者的課程,我們將介紹 MCP 並指導你建立第一個 MCP 伺服器。
C#: https://aka.ms/letslearnmcp-csharp
Java: https://aka.ms/letslearnmcp-java
JavaScript: https://aka.ms/letslearnmcp-javascript
Python: https://aka.ms/letslearnmcp-python
🎓 你的 MCP 旅程開始了
恭喜你!你剛踏出了擴展程式設計技能、連結 AI 開發尖端的第一步。
你已經達成的事項
閱讀本介紹時,你已經開始建立 MCP 知識基礎。你了解 MCP 是什麼、其重要性,以及此課程如何支持你的學習旅程。這是重大的成就,也是你在此重要技術領域專家的起點。
未來的冒險
當你繼續學習各個模組時,請記住每個專家曾經都是初學者。現時可能看似複雜的概念,會隨著練習與應用而變得輕而易舉。每個小步驟累積成強大能量,伴隨你整個程式開發職涯。
你的支援網絡
你正加入一個熱衷 MCP 的學習者與專家社群,他們樂於協助他人成功。無論遇到程式挑戰卡住,或興奮分享新突破,社群都會支持你。
如果你遇到困難或對 AI 應用開發有問題,歡迎加入同行學習者和經驗豐富開發者的 MCP 討論。這是一個支持度高、歡迎提問、並樂於分享知識的社群。
如有產品反饋或錯誤,請造訪:
準備開始了嗎?
你的 MCP 冒險現在開始!從模組 0 開始,體驗第一手 MCP 實作,或探索範例專案看看你將學習打造什麼。切記——每位專家都是從你現在所在位置開始,憑耐心與練習,你會感到成果令人驚豔。
歡迎進入模型上下文協定開發的世界。讓我們一同打造驚奇作品!
🤝 參與學習社群
這套課程因你這樣的學習者參與而更加豐富!無論你修正錯字、建議更清楚的說明,或新增範例,都幫助其他初學者取得成功。
感謝 Microsoft 尊貴專業人士 Shivam Goyal 貢獻程式碼範例。
貢獻流程設計得友善且支持。大部分貢獻需簽署貢獻者授權協議(CLA),自動化工具會順利引導你完成流程。
📜 開放原始碼學習
本課程完全依 MIT 授權條款 發佈,意即你可以自由使用、修改及分享。這支持我們讓 MCP 知識普及於全球開發者的使命。
🤝 貢獻指引
本專案歡迎貢獻與建議。大部分貢獻要求你同意 貢獻者授權協議(CLA),聲明你已擁有並實際授權我們 使用你的貢獻。詳情請參閱 https://cla.opensource.microsoft.com。
當你提交 pull request 時,CLA 機器人會自動判定你是否需提供 CLA 並在 PR 上標示(例如狀態檢查、留言)。請依指示操作。 整個平台只需完成一次 CLA 授權,即可覆蓋所有使用本 CLA 的儲存庫。
本專案採用 Microsoft 開源行為準則。 詳情請見 行為準則常見問題 或 聯絡 opencode@microsoft.com 索取更多資訊。
準備好開始你的 MCP 旅程了嗎?從 Module 00 - MCP 介紹 起步,邁出你踏入模型上下文協定開發世界的第一步!
🎒 其他課程
我們團隊還提供其他課程!請查看:
LangChain
Azure / 邊緣 / MCP / Agents
生成式 AI 系列
核心學習
Copilot 系列
免責聲明: 本文件由 AI 翻譯服務 Co-op Translator 翻譯而成。雖然我們致力於確保準確性,但請注意,機器自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於重要資訊,建議進行專業人工翻譯。我們不對因使用本翻譯而產生的任何誤解或誤釋承擔責任。
