尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
mcp-for-beginners 实战教程:用 AI Toolkit 构建 GitHub 仓库克隆 MCP 服务器
教程文档人工智能【免费下载链接】mcp-for-beginnersThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable, and secure AI workflows from session setup to service orchestration.项目地址https://gitcode.com/GitHub_Trending/mc/mcp-for-beginners点击查看免费下载本文基于 mcp-for-beginners 课程第 10 模块Streamlining AI Workflows: Building an MCP Server with AI Toolkit的最后一个实验室 Lab 4讲解如何在约 30 分钟内构建一个生产可用的 GitHub Clone MCP Server它把克隆 GitHub 仓库并在 VS Code / VS Code Insiders 中打开的多步手工操作压缩为一条智能指令。读完本文你将掌握自定义 MCP 服务器的完整开发流程——在 Agent Builder 中创建代理、用 GitHub Copilot Agent Mode 生成 MCP 工具、实现跨平台的仓库克隆与 VS Code 打开逻辑并通过 Agent Builder 和 MCP Inspector 完成双重测试验证。学习目标与前提条件完成本实验室后你将能够为真实开发工作流创建自定义 MCP 服务器通过 MCP 实现 GitHub 仓库克隆功能将自定义 MCP 服务器与 VS Code、Agent Builder 集成在 GitHub Copilot Agent Mode 中使用自定义 MCP 工具在生产环境级别测试与部署自定义 MCP 服务器。前提条件已完成 Lab 1–3MCP 基础与进阶开发理解 MCP 客户端/服务器架构、Playwright MCP 集成与 Weather MCP 服务器开发持有 GitHub Copilot 订阅有免费资格可申请VS Code 已安装 Microsoft Foundry Toolkit 扩展与 GitHub Copilot 扩展本机已安装并配置好 Git CLI。项目概览把四步手工流程压缩成一条智能指令作为开发者我们经常从 GitHub 克隆仓库并打开到 VS Code / VS Code Insiders。传统手工流程包括四步打开终端 / 命令提示符导航到目标目录执行git clone命令在克隆出的目录中打开 VS Code。本实验的 MCP 方案将这四步合并为一条智能指令。你要构建的是一个GitHub Clone MCP Servergit_mcp_server核心能力如下功能说明收益智能仓库克隆克隆 GitHub 仓库并做参数校验自动化错误检查智能目录管理安全地检查与创建目标目录防止覆盖已有目录跨平台 VS Code 集成在 VS Code / VS Code Insiders 中打开项目工作流无缝衔接健壮的错误处理处理网络、权限、路径问题生产级可靠性实现步骤步骤 1在 Agent Builder 中创建 GitHub Agent通过 Microsoft Foundry Toolkit 扩展启动Agent Builder创建新代理命名Agent Name: GitHubAgent初始化自定义 MCP 服务器进入Tools→Add Tool→MCP Server选择Create A new MCP Server选择Python 模板灵活性最高服务器命名git_mcp_server。这一步会生成一个 Python 脚手架工程。对应本仓库中已经落地完成的工程位于 lab4/code/github_mcp_server其 pyproject.toml 声明了关键依赖运行环境要求requires-python 3.10核心依赖mcp1.28.1MCP Python SDK开发依赖debugpy1.8.8用于 Agent Builder / Inspector 断点调试。步骤 2配置 GitHub Copilot Agent Mode在 VS Code 中打开 GitHub CopilotCtrl/Cmd Shift P→ GitHub Copilot: Open在 Copilot 界面选择Agent Mode按课程建议选择 Claude 3.7 模型以获得更强的推理能力此建议针对 2025 年课程录制时的模型清单实际可用模型以你所用 Copilot 版本为准启用MCP 集成以让代理可以调用工具。课程提示Claude 3.7 对开发工作流与错误处理模式有较好的理解能力适合作为本实验的推理模型。步骤 3用结构化 Prompt 实现核心 MCP 工具在 Copilot Agent Mode 中使用如下详细 Prompt这是本课程Prompt 驱动 MCP 开发的核心示范完整保留其结构Create two MCP tools with the following comprehensive requirements: TOOL A: clone_repository Requirements: - Clone any GitHub repository to a specified local folder - Return the absolute path of the successfully cloned project - Implement comprehensive validation: ✓ Check if target directory already exists (return error if exists) ✓ Validate GitHub URL format (https://github.com/user/repo) ✓ Verify git command availability (prompt installation if missing) ✓ Handle network connectivity issues ✓ Provide clear error messages for all failure scenarios TOOL B: open_in_vscode Requirements: - Open specified folder in VS Code or VS Code Insiders - Cross-platform compatibility (Windows/Linux/macOS) - Use direct application launch (not terminal commands) - Auto-detect available VS Code installations - Handle cases where VS Code is not installed - Provide user-friendly error messages Additional Requirements: - Follow MCP 1.9.3 best practices - Include proper type hints and documentation - Implement logging for debugging purposes - Add input validation for all parameters - Include comprehensive error handling这个 Prompt 的设计要点值得借鉴先声明工具名与职责再逐条列出校验项与边界条件最后统一提出工程质量要求类型注解、日志、验证、异常处理——这正是让 LLM 生成生产可用工具代码的关键。步骤 4测试 MCP 服务器4a. 在 Agent Builder 中测试启动 Agent Builder 的调试配置调试面板选择 Debug in Agent Builder 并按F5为代理配置系统提示词SYSTEM_PROMPT: You are my intelligent coding repository assistant. You help developers efficiently clone GitHub repositories and set up their development environment. Always provide clear feedback about operations and handle errors gracefully.用真实的用户场景进行测试例如Clone https://github.com/kinfey/GHCAgentWorkshop and save to {你指定的全局路径}, then open it with VS Code Insiders预期结果克隆成功并返回路径确认VS Code / VS Code Insiders 自动启动对非法场景目录已存在、URL 错误等给出清晰错误信息边界情况被正确处理。4b. 在 MCP Inspector 中测试MCP Inspector 是可视化的 MCP 服务器测试调试工具。本仓库脚手架中 inspector/package.json 仅依赖modelcontextprotocol/inspector2.0.0占位工程npm run dev:inspector即拉起 Inspector测试流程安装 Node.js 后在inspector目录执行npm install在 VS Code 调试面板选择 Debug SSE in Inspector (Edge/Chrome)按F5浏览器中 Inspector 启动后点击Connect连接服务器执行List Tools选中工具填入参数Run Tool即可逐步调试工具实现所有调试模式均支持断点。源码纵深解析git_mcp_server 是怎么实现的文档中的操作步骤最终会落地为仓库中的 Python 代码。核心实现位于 src/server.py使用 MCP 官方的FastMCP高阶 APIfrom mcp.server.fastmcp import FastMCP # Initialize FastMCP server server FastMCP(github_mcp_server)用server.tool()装饰器即可把一个 async 函数注册为 MCP 工具函数签名参数类型与默认值会被 SDK 自动推导为工具的 JSON Schema 输入定义docstring 则成为工具描述——这就是包含类型注解和文档这一 Prompt 要求能直接提升工具可用性的原因。git_clone_repo防御式克隆git_clone_repo(repo_url, target_folder)server.py 第 32-81 行的执行链路径规范化Path(target_folder).expanduser().absolute()兼容~与相对路径目录冲突检查目标目录已存在则直接返回{success: false, error: Target folder already exists: ...}防止覆盖用户已有代码Git 可用性探测先运行git --version探测区分FileNotFoundErrorGit 未安装提示安装与CalledProcessErrorGit 异常创建父目录target_path.parent.mkdir(parentsTrue, exist_okTrue)执行克隆subprocess.run([git, clone, repo_url, ...], checkTrue, capture_outputTrue)成功返回绝对路径失败时把stderr原样带回给调用方。每个分支都返回统一的 JSON 结构successtarget_folder/error这种结构化错误契约让 LLM 代理能可靠地解析结果并决定下一步动作是 MCP 工具设计的最佳实践。open_in_vscode跨平台应用启动策略open_in_vscode(folder_path, use_insidersFalse)server.py 第 83-167 行按platform.system()分平台实现直接启动桌面应用平台启动方式兜底策略macOS (Darwin)open -a Visual Studio Code [- Insiders] folder依赖open命令Windows定位LOCALAPPDATA\Programs\...\Code.exe并直接启动可执行文件不经过 shell避免路径中的 shell 元字符注入依次尝试Program Files/Program Files (x86)备选安装路径最终回退到code/code-insidersCLILinuxxdg-open folder交给桌面环境回退到code/code-insiders命令源码中 Windows 分支特意加了一行注释说明直接启动可执行文件是to avoid command injection via shell metacharacters in folder_path——这是把folder_path作为外部输入处理时的安全细节值得所有执行系统命令的 MCP 工具参考。未安装 VS Code、目录不存在、操作系统不受支持等场景同样返回统一的 JSON 错误结构。传输层入口stdio / SSE 双模式server.py 同级的__init__.py是运行入口根据第一个命令行参数选择传输transport_type sys.argv[1] if len(sys.argv) 1 else None server.settings.log_level os.environ.get(LOG_LEVEL, DEBUG) if transport_type sse: port int(os.environ.get(PORT, 3001)) server.settings.port port server.settings.host 127.0.0.1 server.run(transportsse) elif transport_type stdio: server.run(transportstdio)stdio用于本地进程间通信如某些客户端直接拉起子进程SSE默认监听127.0.0.1:3001可用PORT环境变量覆盖这正是步骤 4b 中 MCP Inspector 通过浏览器连入的通道日志级别由LOG_LEVEL控制默认DEBUG。另外需要说明该模板由 Weather MCP 脚手架演化而来server.py中仍保留了一个返回模拟数据的get_weather工具它属于模板遗留物与 GitHub 克隆功能无关实际使用时可以删除。总结与工作坊收尾完成本实验室后课程将你在整个第 10 模块Module 10学到的能力串成一条完整链路模块 1lab1Microsoft Foundry Toolkit 基础、模型测试与创建第一个 AI 代理模块 2lab2MCP 架构、Playwright MCP 集成与浏览器自动化代理模块 3lab3Weather MCP 服务器定制开发掌握调试工具模块 4本实验lab4综合运用所有技能构建 GitHub 仓库工作流自动化工具。至此你已掌握的完整技能面包括Foundry Toolkit 生态模型、代理与集成模式、MCP 架构客户端/服务器设计、传输协议与安全性、从 Playground 到 Inspector 的开发工具链、自定义 MCP 服务器的构建/测试/部署以及用 MCP 解决真实工作流问题的实战能力。课程建议的后续方向用同样的模式为你自己的工作流构建专属 MCP 服务器参与 MCP 社区分享你的服务器实现探索与更高复杂度系统的进阶集成为 MCP 工具链与文档做开源贡献。下一步完成本实验即代表 Module 10 全部实验结束。返回 Module 10 总览继续学习 Module 11: MCP Server Hands-On Labs。赞分享教程文档人工智能【免费下载链接】mcp-for-beginnersThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable, and secure AI workflows from session setup to service orchestration.项目地址https://gitcode.com/GitHub_Trending/mc/mcp-for-beginners点击查看免费下载相关推荐mcp-for-beginners 实验四实战用 AI Toolkit 构建生产级 GitHub 克隆 MCP 服务器mcp for beginners 实验四实战用 AI Toolkit 构建生产级 GitHub 克隆 MCP 服务器 本指南是 mcp for beginn教程文档人工智能MCP 服务器实战模板解析用 AI Toolkit 构建天气与 GitHub 工作流工具mcp-for-beginners Lab4MCP 服务器实战模板解析用 AI Toolkit 构建天气与 GitHub 工作流工具mcp for beginners Lab4 本文基于 mcp f教程文档人工智能mcp-for-beginners 模块 3 实战用 Microsoft Foundry Toolkit 构建并调试 Weather MCP 服务器mcp for beginners 模块 3 实战用 Microsoft Foundry Toolkit 构建并调试 Weather MCP 服务器 本文基于教程文档人工智能上一篇Flat Remix Gnome主题扩展推荐5个必装插件让你的桌面功能更强大下一篇vnpy高频交易系统延迟优化终极指南从代码到硬件的全方位性能提升创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

Agones Client SDK 完全指南:游戏服务器接入、状态管理与自定义 SDK 开发

Agones Client SDK 完全指南:游戏服务器接入、状态管理与自定义 SDK 开发

游戏开发云原生 【免费下载链接】agones Dedicated Game Server Hosting and Scaling for Multiplayer Games on Kubernetes 项目地址: https://gitcode.com/gh_mirrors/ag/agones 点击查看 免费下载 导读 本篇指南围绕 Agones(Kubernetes 上的专用游戏…

📅 2026/10/10 5:29:25
Rust 指针地址泄露检测实战:rust-review 插件的 info-disclosure 集群与 PTREXPOSE 审计

Rust 指针地址泄露检测实战:rust-review 插件的 info-disclosure 集群与 PTREXPOSE 审计

AI 技能AI 插件应用安全网络安全AI 评测 【免费下载链接】skills Trail of Bits Claude Code skills for security research, vulnerability detection, and audit workflows 项目地址: https://gitcode.com/gh_mirrors/skills8/skills 点击查看 免费下载 本篇技术…

📅 2026/10/10 5:29:25
用Opus55做视频的完整流程

用Opus55做视频的完整流程

用 Claude Opus 5.5 做一条视频的完整流程是什么 看别人用 Claude Opus 5.5 做视频,最关心的往往不是 prompt 本身,而是「从想法到成片到底走了几步」。Gen Feeds(https://genfeeds.com/)的 Opus 5.5 创作实验室 https://genfeeds…

📅 2026/10/10 5:29:25
MORE NEWS

更多资讯

📰

CentOS下源码编译安装高版本Python:依赖准备与环境配置全指南

1. 为什么Centos默认Python版本那么低:先弄清来龙去脉我用Centos很多年了,每次在这台系统上装新Python都会被同一个问题卡住:系统自带的Python版本老得让人怀疑人生。Centos 7自带的Python是2.7.5,Centos 8内置Python也才到3.6左右…

📰

Apache Pulsar 一致哈希(Consistent Hashing)消费者选择:PIP-392 配置详解与源码剖析

消息队列流处理后端微服务消息路由 【免费下载链接】pulsar Apache Pulsar - distributed pub-sub messaging system 项目地址: https://gitcode.com/gh_mirrors/pu/pulsar 点击查看 免费下载 导读 本文基于 Apache Pulsar 仓库中的设计文档 PIP-392,系…

📰

【单片机课设毕设项目】基于单片机的室内环境五项指标同步采集可视化远程监控系统设计 基于单片机的居室空气污染与烟雾隐患无线监测智能预警装置设计(030110)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

📰

AnyPS5:透过兼容层视角看PS5模拟的技术难点与工程实践

最近好些技术群都在转 AnyPS5 这个项目,我第一次看到这个名字的时候,心里想的和大多数人一样:又一个 PS5 模拟器?但翻完项目说明之后才发现,它的目标比“在 PC 上跑 PS5 游戏”要克制得多,也好玩得多。它真…

📰

ClawManager Lite 与 Pro 模式怎么选?实例管理成本、隔离性与功能差异完整对比指南

ClawManager Lite 与 Pro 模式怎么选?实例管理成本、隔离性与功能差异完整对比指南 【免费下载链接】ClawManager A Kubernetes-native control plane for AI agent instance management, with governed AI access, runtime orchestration, and reusable resources …

📰

局域网内 Docker 部署 DeepSeek AI Agent 平台实战

1. 为什么要在局域网里自建 AI Agent 平台很多人第一次接触大模型,习惯直接开个网页版用。但真到团队协作、数据敏感、或者需要把 AI 能力嵌进内部工具链的时候,网页版就明显不够用了。你没法控制它的上下文长度,没法接自己的知识库&#xff…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬