Files
2026-07-13 13:31:35 +08:00
..

MCP-for-beginners

GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

GitHub watchers GitHub forks GitHub stars

Microsoft Foundry Discord

按照以下步骤开始使用这些资源:

  1. Fork 仓库:点击 GitHub forks
  2. 克隆仓库 git clone https://github.com/microsoft/mcp-for-beginners.git
  3. 加入 Microsoft Foundry Discord

🌐 多语言支持

通过 GitHub Action 支持(自动且始终保持最新)

阿拉伯语 | 孟加拉语 | 保加利亚语 | 缅甸语(Myanmar | 中文(简体) | 中文(繁体,香港) | 中文(繁体,澳门) | 中文(繁体,台湾) | 克罗地亚语 | 捷克语 | 丹麦语 | 荷兰语 | 爱沙尼亚语 | 芬兰语 | 法语 | 德语 | 希腊语 | 希伯来语 | 印地语 | 匈牙利语 | 印度尼西亚语 | 意大利语 | 日语 | 卡纳达语 | 高棉语 | 韩语 | 立陶宛语 | 马来语 | 马拉雅拉姆语 | 马拉地语 | 尼泊尔语 | 尼日利亚俚语 | 挪威语 | 波斯语(法尔西语) | 波兰语 | 葡萄牙语(巴西) | 葡萄牙语(葡萄牙) | 旁遮普语(古尔穆奇) | 罗马尼亚语 | 俄语 | 塞尔维亚语(西里尔字母) | 斯洛伐克语 | 斯洛文尼亚语 | 西班牙语 | 斯瓦希里语 | 瑞典语 | 他加禄语(菲律宾语) | 泰米尔语 | 泰卢固语 | 泰语 | 土耳其语 | 乌克兰语 | 乌尔都语 | 越南语

更喜欢本地克隆?

此仓库包含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'

CMDWindows):

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 如何使用日期格式版本控制的信息。
  • 🧑‍💻 MCP GitHub 仓库 – 这里有多种编程语言的 SDK、工具和代码样例,是实用示例和可直接使用组件的宝库。
  • 🌐 MCP 社区 – 加入同行学习者和经验开发者的讨论社区。这里是互助支持、问题答疑和自由分享知识的好地方。

学习目标

完成本课程后,您会对自己的新能力充满信心和兴趣。您将实现以下目标:

理解 MCP 基础知识:您将掌握模型上下文协议是什么,以及为什么它正在革新 AI 应用协作,借助形象类比和示例帮助理解。

构建您的第一个 MCP 服务器:使用您喜欢的编程语言创建一个可工作的 MCP 服务器,从简单例子开始,逐步提升技能。

连接 AI 模型与真实工具:学习如何搭建 AI 模型与实际服务之间的桥梁,为应用赋予强大新功能。

实施安全最佳实践:掌握如何保障 MCP 实现的安全,保护您的应用和用户。

自信部署:了解如何将 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 带 LLM 的客户端 集成大型语言模型 指南
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 简单认证 从基础展示认证和基于角色的访问控制(RBAC) 指南
3.12 MCP 主机 配置 Claude Desktop、Cursor、Cline 及其他 MCP 主机 指南
3.13 MCP 检查器 使用检查器工具调试和测试 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 服务器 实验
模块 11MCP 服务器动手实验
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 容器应用及扩展考虑 实验 10
11.12 监控 应用洞察、日志记录、性能监控 实验 11
11.13 最佳实践 性能优化、安全加固及生产建议 实验 12
模块 12MCP 工具集
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 基础知识

  • 加入我们的社区讨论以获得支持

📚 学习指南和资源

本仓库包含多个资源,帮助你有效学习和导航:

学习指南

提供了全面的学习指南,帮助你高效导航本仓库。该视觉课程地图展示了所有主题的关联,并指导如何有效使用示例项目。特别适合喜欢整体把握的视觉学习者。

指南包括:

  • 展示所有覆盖主题的视觉课程地图
  • 每个仓库部分的详细分解
  • 如何使用示例项目的指导
  • 针对不同技能水平的推荐学习路径
  • 补充学习旅程的额外资源

更新日志

我们维护详细的更新日志,跟踪课程材料的所有重大更新,确保你了解最新改进和新增内容。

  • 新内容添加
  • 结构调整
  • 功能改进
  • 文档更新

🛠️ 如何有效使用本课程

本指南中的每节课都包括:

  1. 清晰的 MCP 概念讲解
  2. 多语言的实时代码示例
  3. 构建真实 MCP 应用的练习
  4. 高级学习者的额外资源

用 C# 学 MCP - 教程系列

让我们学习用于标准化 AI 模型与客户端应用交互的前沿框架——模型上下文协议(MCP)。通过此面向初学者的课程,我们将介绍 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 应用的问题,加入志同道合的学习者和经验丰富开发者的讨论。这里是一个欢迎提问且自由分享知识的支持社区。

Microsoft Foundry Discord

如果在开发中遇到产品反馈或错误,请访问:

Microsoft Foundry Developer Forum

准备好开始了吗?

你的 MCP 冒险现在开始!从模块 0 开始,亲身体验 MCP,或者探索示例项目,看看你将构建什么。记住——每位专家都是从你现在所在的位置开始的,只要耐心和练习,你会对自己的成就感到惊讶。

欢迎来到模型上下文协议开发的世界。让我们一起构建非凡的东西!

🤝 贡献给学习社区

本课程因像你这样的学习者贡献而不断壮大!无论你是修正错别字、提出更清晰的解释,还是添加新示例,你的贡献都帮助其他初学者成功。

感谢微软杰出专家 Shivam Goyal 贡献代码示例。

贡献流程旨在欢迎并支持所有人。大部分贡献需要签署贡献者许可协议(CLA),自动工具会顺利引导你完成流程。

📜 开源学习

整个课程根据 MIT 许可证 开源,意味着你可以自由使用、修改、分享。这支持我们让 MCP 知识普及给全球开发者的使命。

🤝 贡献指南

我们欢迎贡献和建议。大部分贡献要求你同意一份贡献者许可协议(CLA),声明你有权且实际授予我们使用你贡献的权利。详情请访问 https://cla.opensource.microsoft.com

当你提交拉取请求时,CLA bot 会自动判断你是否需要提供 CLA,并给 PR 添加相应状态(如状态检查、评论)。请按照机器人提供的指引操作。在所有使用我们 CLA 的仓库中,你只需完成一次此步骤。

本项目采用了 微软开源行为准则。更多信息请参见行为准则常见问题或联系 opencode@microsoft.com 咨询。


准备好开始你的 MCP 之旅了吗?从 模块 00 - MCP 介绍 开始,迈入模型上下文协议开发的世界!

🎒 其他课程

我们团队还制作了其他课程!敬请查看:

LangChain

LangChain4j 新手入门 LangChain.js 新手入门 LangChain 新手入门

Azure / Edge / MCP / Agents

AZD 新手入门 Edge AI 新手入门 MCP 新手入门 AI Agents 新手入门


生成式 AI 系列

生成式 AI 新手入门 生成式 AI (.NET) 生成式 AI (Java) 生成式 AI (JavaScript)


核心学习

机器学习新手入门 数据科学新手入门 人工智能新手入门 网络安全新手入门 Web 开发新手入门 初学者物联网 初学者XR开发


Copilot 系列

AI 结对编程的 Copilot C#/.NET 的 Copilot Copilot 冒险


免责声明 本文件由 AI 翻译服务 Co-op Translator 翻译完成。尽管我们力求准确,但请注意,自动翻译可能包含错误或不准确之处。原始语言版文件应视为权威来源。对于重要信息,建议使用专业人工翻译。我们对因使用本翻译而产生的任何误解或误释不承担责任。