Skip to content

Latest commit

 

History

History
395 lines (278 loc) · 31.3 KB

File metadata and controls

395 lines (278 loc) · 31.3 KB

MCP-初學者指南

GitHub 貢獻者 GitHub 問題單 GitHub 拉取請求 歡迎 PR

GitHub 觀察者 GitHub 分叉 GitHub 星標

Microsoft Foundry Discord

請依照以下步驟開始使用這些資源:

  1. 分叉儲存庫:點擊 GitHub 分叉
  2. 克隆儲存庫git clone https://github.com/microsoft/mcp-for-beginners.git
  3. 加入 Microsoft Foundry Discord

🌐 多語言支援

透過 GitHub Action 自動化且永遠保持更新

阿拉伯語 | 孟加拉語 | 保加利亞語 | 緬甸語 | 中文(簡體) | 中文(繁體,香港) | 中文(繁體,澳門) | 中文(繁體,台灣) | 克羅埃西亞語 | 捷克語 | 丹麥語 | 荷蘭語 | 愛沙尼亞語 | 芬蘭語 | 法語 | 德語 | 希臘語 | 希伯來語 | 印地語 | 匈牙利語 | 印尼語 | 義大利語 | 日語 | 坎納達語 | 高棉語 | 韓語 | 立陶宛語 | 馬來語 | 馬拉雅拉姆語 | 馬拉地語 | 尼泊爾語 | 尼日利亞皮欽語 | 挪威語 | 波斯語(法爾西語) | 波蘭語 | 葡萄牙語(巴西) | 葡萄牙語(葡萄牙) | 旁遮普語(古爾穆奇文) | 羅馬尼亞語 | 俄語 | 塞爾維亞語(西里爾文) | 斯洛伐克語 | 斯洛維尼亞語 | 西班牙語 | 斯瓦希里語 | 瑞典語 | 他加祿語(菲律賓語) | 泰米爾語 | 泰盧固語 | 泰語 | 土耳其語 | 烏克蘭語 | 烏爾都語 | 越南語

想要在本地複製?

本儲存庫包含 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"

這樣您可以更快速地下載並完成課程所需的所有內容。

🚀 模型上下文協議(MCP)初學者課程

使用 C#、Java、JavaScript、Rust、Python 及 TypeScript 透過實作範例學習 MCP

🧠 模型上下文協議課程概覽

歡迎展開您對模型上下文協議的探索之旅!如果您曾好奇 AI 應用程式如何與不同工具和服務互通,現在您將發現這個優雅的解決方案,它正在革新開發者打造智能系統的方式。

把 MCP 想像成 AI 應用程式的通用翻譯器——就像 USB 連接埠能讓您連結任何裝置到電腦一樣,MCP 讓 AI 模型能用標準化的方式接入任何工具或服務。無論您是構建第一個聊天機器人,還是打造複雜的 AI 工作流程,理解 MCP 能賦予您開發更強大且靈活應用程式的能力。

這份課程設計對您的學習旅程充滿耐心與照顧。從您已熟悉的簡單概念開始,漸進地透過實作練習提高專業度,並以您最喜愛的程式語言進行演練。每一步都包含清楚的解說、實用範例並不斷激勵您繼續前進。

當您完成此學習之旅時,您將能自信地建立自己的 MCP 伺服器,將其整合至熱門 AI 平台,並理解這項技術如何重塑 AI 開發的未來。讓我們一同開始這段令人興奮的冒險吧!

官方文件與規範

此課程遵循 MCP 規範 2025-11-25(最新穩定版本)。MCP 規範採用基於日期的版本控制(YYYY-MM-DD 格式),確保協議版本清晰追蹤。

這些資源會隨著您理解加深變得更加珍貴,您不必急著一開始全部閱讀。先從您最感興趣的部分開始吧!

  • 📘 MCP 文件 – 這是您的主要資源,內有逐步教學與使用手冊。文件專為初學者撰寫,提供清晰範例讓您能依自己的節奏跟隨學習。
  • 📜 MCP 規範 – 這是您的完整參考手冊。在進行課程時,您會常常回到這裡查閱細節與探索進階功能。
  • 📜 MCP 規範版本控制 – 說明協議的版本歷史,及 MCP 如何使用基於日期的版本管理(YYYY-MM-DD 格式)。
  • 🧑‍💻 MCP GitHub 儲存庫 – 這裡有多種程式語言的 SDK、工具與程式碼範例。就像實用範例與可立即使用元件的寶庫。
  • 🌐 MCP 社群 – 與其他學習者和經驗豐富的開發者一起討論 MCP。這是一個歡迎提問且自由分享知識的支援社群。

學習目標

完成此課程後,您將感到自信與興奮,掌握以下能力:

理解 MCP 基礎:您將了解模型上下文協議是什麼,以及為何它正在改變 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 介紹 Model Context Protocol 概述及其在 AI 流程中的重要性 詳細閱讀
01 核心概念解析 深入探索 MCP 的核心概念 詳細閱讀
02 MCP 的安全 安全威脅與最佳實踐 詳細閱讀
03 MCP 入門 環境設定、基本伺服器/用戶端、整合 詳細閱讀
模組 3:建置你的第一個伺服器和用戶端
3.1 第一個伺服器 建立你的第一個 MCP 伺服器 指南
3.2 第一個用戶端 開發基本的 MCP 用戶端 指南
3.3 含 LLM 的用戶端 整合大型語言模型 指南
3.4 VS Code 整合 在 VS Code 中使用 MCP 伺服器 指南
3.5 stdio 伺服器 使用 stdio 傳輸建立伺服器 指南
3.6 HTTP 串流 在 MCP 中實作 HTTP 串流 指南
3.7 AI 工具箱 使用 AI 工具箱搭配 MCP 指南
3.8 測試 測試你的 MCP 伺服器實作 指南
3.9 部署 將 MCP 伺服器部署到生產環境 指南
3.10 進階伺服器使用 使用進階伺服器執行進階功能並優化架構 指南
3.11 簡易驗證 展示從一開始的驗證與 RBAC 指南
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 Root Context 理解與實作根上下文 指南
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 整合 與 Azure AI Foundry 整合 指南
5.14 上下文工程 有效上下文工程技巧 指南
5.15 MCP 自訂傳輸 自訂傳輸實作 指南
5.16 協議功能 進度通知、取消、資源模板 指南
模組 6-10:社群與最佳實踐
06 社群貢獻 如何為 MCP 生態系貢獻 指南
07 早期採用洞見 現實世界實作故事 指南
08 MCP 最佳實踐 效能、容錯、韌性 指南
09 MCP 案例研究 實務實作範例 指南
10 實作工作坊 使用 AI 工具箱建置 MCP 伺服器 實驗室
模組 11:MCP 伺服器實作實驗室
11 MCP 伺服器資料庫整合 完整 13 實驗室 PostgreSQL 整合實作路徑 實驗室
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 容器應用及擴充考量 實驗室 10
11.12 監控 應用洞察、日誌、效能監控 實驗室 11
11.13 最佳實踐 效能優化、安全強化與生產建議 實驗室 12

💻 程式碼範例專案

學習 MCP 最令人興奮的部分之一是,能看到你的程式技能逐步提升。我們設計的程式碼範例從簡單開始,隨著理解深入逐漸變得更複雜。以下是我們引介概念的方式——用易懂但展示實際 MCP 原則的程式碼,你不僅會了解這段程式碼做什麼,更會弄懂為什麼它是這樣設計,以及它如何融入更大的 MCP 應用中。

基本 MCP 計算機範例

語言 說明 連結
C# MCP 伺服器範例 檢視程式
Java MCP 計算機 檢視程式
JavaScript MCP 示範 檢視程式
Python MCP 伺服器 檢視程式
TypeScript MCP 範例 檢視程式
Rust MCP 範例 檢視程式

進階 MCP 實作

語言 說明 連結
C# 進階範例 檢視程式
Java + Spring 容器應用範例 檢視程式
JavaScript 進階範例 檢視程式
Python 複雜實作 檢視程式
TypeScript 容器範例 檢視程式

🎯 MCP 學習先決條件

要最大限度地利用這門課程,您應該具備:

  • 至少熟悉以下任一語言的基礎程式設計知識:C#、Java、JavaScript、Python 或 TypeScript

  • 了解客戶端-服務器模型與 API

  • 熟悉 REST 和 HTTP 概念

  • (可選)具備 AI/ML 概念背景

  • 參與我們的社群討論以獲得支援

📚 學習指南與資源

本儲存庫包含多項資源,協助您有效導覽和學習:

學習指南

提供完整的學習指南,幫助您有效導覽本儲存庫。這份視覺化課程地圖展示所有主題的連結,並指引如何有效使用範例專案。特別適合喜歡從宏觀視角學習的視覺型學習者。

指南內容包括:

  • 視覺化課程地圖展示所有涵蓋主題
  • 各儲存庫區段詳細拆解
  • 使用範例專案的指引
  • 針對不同技能層級的推薦學習路徑
  • 補充學習旅程的額外資源

更新紀錄

我們維護詳細的更新紀錄,追蹤課程資料的所有重大更新,讓您隨時掌握最新改進與新增內容。

  • 新增內容
  • 結構調整
  • 功能優化
  • 文件更新

🛠️ 如何有效使用本課程

本指南中的每節課包含:

  1. MCP 概念清晰說明
  2. 多語言實時程式範例
  3. 練習題讓您建立真實 MCP 應用
  4. 高階學習者的額外資源

以 C# 學習 MCP - 教學系列

讓我們一起瞭解 Model Context Protocol (MCP),這是一個先進的框架,旨在標準化 AI 模型與用戶端應用程式的互動。這堂入門課帶您認識 MCP,並指導您建立第一個 MCP 伺服器。

🎓 您的 MCP 旅程開始了

恭喜!您剛踏出擴展程式設計能力並連結 AI 最前沿的激動人心第一步。

您已完成的事項

透過閱讀本介紹,您已開始建立 MCP 的知識基礎。您理解 MCP 是什麼,它的重要性,以及本課程將如何支持您的學習之旅。這是重大里程碑,也是掌握這項重要技術的開始。

未來的冒險

隨著您進入模組學習,請記住每位專家曾經都是新手。現在看似複雜的概念,隨著您練習和應用會變成第二天性。每一小步都累積為強大能力,將陪伴您整個開發生涯。

您的支援網絡

您加入了一個熱衷於 MCP 且熱心幫助他人成功的學習與專家社群。不論您遭遇編碼挑戰或期待分享突破,社群都會支持您的旅程。

如果您遇到困難或有任何 AI 應用程式開發的疑問,加入其他學習者和經驗豐富開發者的討論。這是一個鼓勵提問、自由分享知識的親切社群。

Microsoft Foundry Discord

若您在開發過程中有產品反饋或發現錯誤,請訪問:

Microsoft Foundry Developer Forum

準備好了嗎?

您的 MCP 冒險現在開始!從模組 0 開始,深入您的第一個 MCP 實作,或探索範例專案,看看您將建立什麼。記住——每位專家都從您現在開始的地方出發,透過耐心與實踐,您將驚喜於能達到的成就。

歡迎進入 Model Context Protocol 的開發世界。讓我們一起打造驚奇成果!

🤝 為學習社群貢獻

本課程因像您一樣的學習者貢獻而更強大!無論是修正文法錯誤、提出更清楚的說明,或新增範例,您的貢獻幫助其他初學者成功。

感謝 Microsoft Valued Professional Shivam Goyal 提供的程式碼範例。

貢獻流程設計為親切並富支援性。大部分貢獻需簽署貢獻者授權協議 (CLA),但自動化工具會順利引導您完成流程。

📜 開源學習

整套課程均在 MIT LICENSE 授權下公開,代表您可自由使用、修改與分享,支持我們讓 MCP 知識可及於全球開發者的使命。

🤝 貢獻指南

本專案歡迎貢獻與建議。大部分貢獻需您同意 一份貢獻者授權協議(CLA),聲明您有權且確實授予我們使用您貢獻的權利。詳細資訊請見 https://cla.opensource.microsoft.com

當您提交拉取請求時,CLA 機器人會自動判定您是否需提供 CLA,並適當標註 PR(例如狀態檢查、評論)。請依照機器人指示操作。 您只需在使用本 CLA 的所有儲存庫中執行一次此流程。

本專案已採用 Microsoft 開源行為準則。 更多資訊請見 行為準則常見問題 或 透過 opencode@microsoft.com 聯絡,詢問任何其他問題。


準備好開始您的 MCP 旅程了嗎?從模組 00 - MCP 介紹開始,踏出 Model Context Protocol 開發世界的第一步!

🎒 其他課程

我們團隊還製作了其他課程!查看:

LangChain

LangChain4j for Beginners LangChain.js for Beginners LangChain for Beginners

Azure / Edge / MCP / Agents

AZD for Beginners Edge AI for Beginners MCP for Beginners AI Agents for Beginners


生成式 AI 系列

Generative AI for Beginners Generative AI (.NET) Generative AI (Java) Generative AI (JavaScript)


核心學習

ML for Beginners Data Science for Beginners AI for Beginners Cybersecurity for Beginners Web Dev for Beginners IoT for Beginners XR Development for Beginners


Copilot 系列

Copilot for AI Paired Programming Copilot for C#/.NET Copilot Adventure


免責聲明
本文件係使用 AI 翻譯服務 Co-op Translator 進行翻譯。雖然我們致力於翻譯的準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的原文版本應視為權威來源。對於重要資訊,建議尋求專業人工翻譯。我們不對因使用本翻譯所產生的任何誤解或誤譯負責。