按照以下步骤开始使用这些资源:
- Fork 仓库:点击
- 克隆仓库:
git clone https://github.com/microsoft/mcp-for-beginners.git
- 加入 Azure AI Foundry Discord,与专家和开发者交流
🌐 多语言支持
通过 GitHub Action 支持(自动更新,始终保持最新)
阿拉伯语 | 孟加拉语 | 保加利亚语 | 缅甸语 | 中文(简体) | 中文(繁体,香港) | 中文(繁体,澳门) | 中文(繁体,台湾) | 克罗地亚语 | 捷克语 | 丹麦语 | 荷兰语 | 芬兰语 | 法语 | 德语 | 希腊语 | 希伯来语 | 印地语 | 匈牙利语 | 印尼语 | 意大利语 | 日语 | 韩语 | 马来语 | 马拉地语 | 尼泊尔语 | 挪威语 | 波斯语 | 波兰语 | 葡萄牙语(巴西) | 葡萄牙语(葡萄牙) | 旁遮普语 | 罗马尼亚语 | 俄语 | 塞尔维亚语(西里尔字母) | 斯洛伐克语 | 斯洛文尼亚语 | 西班牙语 | 斯瓦希里语 | 瑞典语 | 他加禄语(菲律宾语) | 泰语 | 土耳其语 | 乌克兰语 | 乌尔都语 | 越南语
🚀 初学者的模型上下文协议(MCP)课程
通过 C#、Java、JavaScript、Rust、Python 和 TypeScript 的代码示例学习 MCP
🧠 模型上下文协议课程概述
模型上下文协议(MCP) 是一个前沿框架,旨在标准化 AI 模型与客户端应用之间的交互。本开源课程提供了结构化的学习路径,包括实用的代码示例和真实案例,涵盖 C#、Java、JavaScript、TypeScript 和 Python 等流行编程语言。
无论您是 AI 开发者、系统架构师还是软件工程师,这份指南都是您掌握 MCP 基础知识和实施策略的全面资源。
🔗 官方 MCP 资源
- 📘 MCP 文档 – 详细教程和用户指南
- 📜 MCP 规范 – 协议架构和技术参考
- 📜 原始 MCP 规范 – 旧版技术参考(可能包含更多细节)
- 🧑💻 MCP GitHub 仓库 – 开源 SDK、工具和代码示例
- 🌐 MCP 社区 – 加入讨论并为社区做贡献
🧭 MCP 课程概览
📚 完整课程结构
模块 | 主题 | 描述 | 链接 |
---|---|---|---|
模块 1-3:基础知识 | |||
00 | MCP 简介 | 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 | AI 工具包 | 使用 MCP 的 AI 工具包 | 指南 |
3.8 | 测试 | 测试您的 MCP 服务器实现 | 指南 |
3.9 | 部署 | 将 MCP 服务器部署到生产环境 | 指南 |
3.10 | 高级服务器使用 | 使用高级服务器以实现高级功能和优化架构 | 指南 |
3.11 | 简单认证 | 从基础到 RBAC 的认证章节 | 指南 |
模块 4-5:实践与高级内容 | |||
04 | 实践实施 | SDK、调试、测试、可重用的提示模板 | 了解更多 |
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 集成 | 与 Azure AI Foundry 集成 | 指南 |
5.14 | 上下文工程 | 有效上下文工程的技术 | 指南 |
5.15 | MCP 自定义传输 | 自定义传输实现 | 指南 |
模块 6-10:社区与最佳实践 | |||
06 | 社区贡献 | 如何为 MCP 生态系统做贡献 | 指南 |
07 | 早期采用的经验 | 实际实施案例分享 | 指南 |
08 | MCP 的最佳实践 | 性能、容错性、弹性 | 指南 |
09 | MCP 案例研究 | 实际实施示例 | 指南 |
10 | 实践工作坊 | 使用 AI 工具包构建 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容器应用和扩展考虑 | 实验 10 |
11.12 | 监控 | 应用洞察、日志记录、性能监控 | 实验 11 |
11.13 | 最佳实践 | 性能优化、安全加固和生产环境建议 | 实验 12 |
💻 示例代码项目
基础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应用的练习
- 为高级学习者提供的额外资源
活动
MCP开发者日 2025年7月
➡️按需观看 - MCP开发者日
准备好迎接两天的深度技术洞察、社区连接和动手学习吧!MCP开发者日是一个专注于模型上下文协议(MCP)的虚拟活动,这是一项连接AI模型与其依赖工具的新兴标准。
您可以通过注册我们的活动页面观看MCP开发者日:https://aka.ms/mcpdevdays。
第一天:MCP生产力、开发工具与社区
第一天旨在帮助开发者将MCP融入开发工作流,并庆祝优秀的MCP社区。我们将与社区成员和合作伙伴(如Arcade、Block、Okta和Neon)一起探讨他们如何与微软合作,共同打造开放、可扩展的MCP生态系统。
内容包括:
- VS Code、Visual Studio、GitHub Copilot以及流行社区工具的真实演示
- 实用的、以上下文为驱动的开发工作流
- 社区主导的会议和见解
无论您是刚开始学习MCP还是已经在使用它,第一天将为您提供灵感和可操作的建议。
第二天:自信构建MCP服务器
第二天专为MCP构建者设计。我们将深入探讨创建MCP服务器的实现策略和最佳实践,并将MCP集成到您的AI工作流中。
主题包括:
- 构建MCP服务器并将其集成到代理体验中
- 基于提示的开发
- 安全最佳实践
- 使用功能、ACA和API管理等构建模块
- 注册表对齐和工具(1P + 3P)
如果您是开发者、工具构建者或AI产品策略师,第二天将为您提供构建可扩展、安全且面向未来的MCP解决方案所需的见解。
MCP训练营 2025年8月
通过密集的视频课程学习如何创建MCP服务器、与VS Code集成,并基于MCP初学者课程内容在Azure上进行专业部署。掌握一项已被多家大型公司使用的技术的实用技能。
➡️按需观看 MCP训练营 | 英文
➡️按需观看 MCP训练营 | 巴西
➡️按需观看 MCP训练营 | 西班牙语
学习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
🌟 社区感谢
感谢微软优秀专业人士 Shivam Goyal 提供的重要代码示例。
📜 许可信息
本内容根据 MIT许可证 授权。有关条款和条件,请参阅 LICENSE。
🤝 贡献指南
本项目欢迎贡献和建议。大多数贡献需要您同意一份贡献者许可协议(CLA),声明您有权并实际授予我们使用您的贡献的权利。详情请访问 https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA机器人会自动确定您是否需要提供CLA,并适当装饰PR(例如状态检查、评论)。只需按照机器人提供的说明操作即可。您只需在所有使用CLA的仓库中完成一次此操作。
本项目已采用 微软开源行为准则。
有关更多信息,请参阅 行为准则FAQ 或联系 opencode@microsoft.com 提出其他问题或意见。
📂 仓库结构
本仓库组织如下:
- 核心课程 (00-11):主要内容分为11个连续模块,包括全面的数据库集成实验
- 11-MCPServerHandsOnLabs/:完整的13个实验学习路径,用于构建生产级MCP服务器并集成PostgreSQL
- images/:课程中使用的图表和插图
- translations/:多语言支持及自动翻译
- translated_images/:本地化版本的图表和插图
- study_guide.md:导航仓库的全面指南
- changelog.md:课程材料所有重要更改的记录
- mcp.json:MCP规范的配置文件
- CODE_OF_CONDUCT.md, LICENSE, SECURITY.md, SUPPORT.md:项目治理文档
🎒 其他课程
我们的团队还制作了其他课程!查看以下内容:
- 新 初学者边缘AI
- 初学者AI代理
- 使用.NET的初学者生成式AI
- 使用JavaScript的初学者生成式AI
- 初学者生成式AI
- 使用Java的初学者生成式AI
- 初学者机器学习
- 初学者数据科学
- 初学者AI
- 初学者网络安全
- 初学者Web开发
- 初学者物联网
- 初学者XR开发
- 掌握GitHub Copilot进行AI配对编程
- 掌握 GitHub Copilot:适用于 C#/.NET 开发者
- 选择你的 Copilot 冒险之旅
™️ 商标声明
本项目可能包含项目、产品或服务的商标或标志。使用 Microsoft 商标或标志需获得授权,并必须遵守 Microsoft 的商标和品牌指南。
在本项目的修改版本中使用 Microsoft 商标或标志不得引起混淆或暗示 Microsoft 的赞助。
任何使用第三方商标或标志的行为需遵守相关第三方的政策。
获取帮助
如果您遇到困难或对构建 AI 应用有任何疑问,请加入:
如果您有产品反馈或在构建过程中遇到错误,请访问:
免责声明:
本文档使用AI翻译服务 Co-op Translator 进行翻译。尽管我们努力确保翻译的准确性,但请注意,自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。对于关键信息,建议使用专业人工翻译。我们不对因使用此翻译而产生的任何误解或误读承担责任。