ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

使用 Microsoft Foundry Toolkit 在 VS Code 中消费 MCP 计算器服务器:从 Agent 创建到自然语言调用工具

使用 Microsoft Foundry Toolkit 在 VS Code 中消费 MCP 计算器服务器:从 Agent 创建到自然语言调用工具 教程文档人工智能【免费下载链接】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 的第 07 课03-GettingStarted/07-aitk/README.md演示如何用Microsoft Foundry Toolkit for Visual Studio Code连接一个计算器 MCP 服务器让 AI Agent 通过自然语言完成加减乘除运算。读完本文你将掌握在 VS Code 内完成创建 Agent → 生成系统提示词 → 用模板搭建 MCP 服务器 → 自然语言触发工具调用的完整闭环并学会如何为服务器扩展新工具。课程概览与学习目标构建 AI Agent 不只是生成智能回复更要让 Agent 具备采取行动的能力这正是 Model Context ProtocolMCP的价值它让 Agent 以一致的方式访问外部工具与服务相当于把 Agent 插进一个它真正能用的工具箱。设想你把 Agent 接到一个计算器 MCP 服务器上当用户输入47 乘以 89 是多少时Agent 就能直接完成数学运算——无需硬编码逻辑也无需自建 API。Microsoft Foundry Toolkit 简化了生成式 AI 应用的开发与测试支持本地与云端托管的模型并内置了 MCP 服务器模板。注意当前 Toolkit 仅支持 Python 与 TypeScript 两种 MCP 模板原文档明确说明。完成本课之后你将能够使用 Microsoft Foundry Toolkit 消费consume一个 MCP 服务器配置 Agent 配置使其能够发现并利用 MCP 服务器提供的工具通过自然语言使用 MCP 工具。整体技术路线Approach本课按以下高层流程推进创建一个 Agent 并定义其系统提示词创建一个带计算器工具的 MCP 服务器将 Agent Builder 连接到该 MCP 服务器通过自然语言测试 Agent 的工具调用。流程的本质是把工具发现、参数传入、结果回填这些环节交给 MCP 协议与 LLM 协作完成开发者只需把工具的 Schema 暴露给模型模型会根据用户提问自动决定调用哪个工具。前置条件开始练习前请确认具备以下环境Visual Studio CodeMicrosoft Foundry Toolkit for Visual Studio Code 扩展。[!WARNING]macOS 用户注意当前正在调查影响 macOS 依赖安装的问题macOS 用户暂时无法完成本教程待修复后官方会更新说明。动手实践完整教程本次练习将在 VS Code 内部借助 Microsoft Foundry Toolkit 构建、运行并增强一个带 MCP 服务器工具的 AI Agent。步骤 0预置 Microsoft Foundry GPT-5.1 部署先创建 Microsoft Foundry 资源、部署GPT-5.1并将其加入My Models列表。选择部署时请参考Microsoft Foundry 模型退役时间表model retirement schedule避免选用即将退役的模型。从Activity Bar打开Microsoft Foundry Toolkit在Catalog部分选择Models打开Model Catalog会以新编辑器标签页打开连接你的 Microsoft Foundry 项目并选择GPT-5.1部署点击 Add将该部署添加到My Models列表回到Activity Bar确认部署已出现在列表中。步骤 1创建 Calculator AgentAgent (Prompt) Builder用于创建和定制你自己的 AI Agent。本步将新建一个 Agent 并为对话指定模型。从Activity Bar打开Microsoft Foundry Toolkit在Tools部分选择Agent (Prompt) Builder会在新编辑器标签页打开点击 New Agent按钮扩展会通过Command Palette启动设置向导输入名称Calculator Agent并回车在Agent (Prompt) Builder中选中你的GPT-5.1Foundry 部署。步骤 2为 Agent 生成系统提示词Agent 脚手架就绪后需要定义它的人格与职责。本步使用Generate system prompt功能用一句话描述目标行为计算器 Agent让模型替你写出系统提示词。在Prompts部分点击Generate system prompt按钮打开 AI 驱动的提示词生成器在Generate a prompt窗口中输入You are a helpful and efficient math assistant. When given a problem involving basic arithmetic, you respond with the correct result.点击Generate。右下角会弹出通知确认正在生成系统提示词生成完成后提示词会出现在Agent (Prompt) Builder的System prompt字段审阅生成的System prompt如有必要可手动修改。步骤 3创建计算器 MCP 服务器系统提示词定义了 Agent 的大脑接下来为它配备双手创建一个提供加、减、乘、除四种运算工具的计算器 MCP 服务器让 Agent 能针对自然语言提问实时完成数学运算。Microsoft Foundry Toolkit 内置了创建 MCP 服务器的模板本课使用Python 模板注意当前 Toolkit 仅支持 Python 与 TypeScript 模板。在Agent (Prompt) Builder的Tools部分点击 MCP Server按钮扩展会通过Command Palette启动设置向导选择 Add Server选择Create a New MCP Server选择python-weather作为模板选择Default folder保存 MCP 服务器模板输入服务器名称Calculator新的 VS Code 窗口会打开选择Yes, I trust the authors使用终端TerminalNew Terminal创建虚拟环境python -m venv .venv激活虚拟环境Windows.venv\Scripts\activatemacOS/Linuxsource .venv/bin/activate安装依赖pip install -e .[dev]在Activity Bar的Explorer视图中展开src目录选中server.py在编辑器中打开用以下代码替换server.py内容并保存 Sample MCP Calculator Server implementation in Python. This module demonstrates how to create a simple MCP server with calculator tools that can perform basic arithmetic operations (add, subtract, multiply, divide). from mcp.server.fastmcp import FastMCP server FastMCP(calculator) server.tool() def add(a: float, b: float) - float: Add two numbers together and return the result. return a b server.tool() def subtract(a: float, b: float) - float: Subtract b from a and return the result. return a - b server.tool() def multiply(a: float, b: float) - float: Multiply two numbers together and return the result. return a * b server.tool() def divide(a: float, b: float) - float: Divide a by b and return the result. Raises: ValueError: If b is zero if b 0: raise ValueError(Cannot divide by zero) return a / b这段代码的核心机制值得展开说明FastMCP(calculator)创建服务器实例server.tool()装饰器把普通 Python 函数注册为 MCP 工具——函数的类型注解a: float, b: float与文档字符串会被 MCP SDK 自动转换成工具的参数 Schema 与描述这正是 Agent 能看懂每个工具用途、正确填入参数并完成调用的底层基础。divide工具对除零场景显式抛出ValueError错误会通过协议回传给客户端避免产生静默错误。仓库中还有一份不使用FastMCP快捷层的低层实现03-GettingStarted/samples/python/mcp_calculator_server.py 基于MCPServer、stdio_server与server/discover请求处理器同样暴露add/subtract/multiply/divide四个工具并显式声明2026-07-28与2025-11-25双协议版本兼容而 03-GettingStarted/01-first-server/solution/python/server.py 则展示了FastMCP的另一种典型用法。两者可作为对照阅读理解同一能力在高层模板与底层协议两种写法下的差异。步骤 4运行 Agent 并验证工具调用工具就绪后就可以提交提示词来验证 Agent 是否会选中正确的工具。本步以Agent Builder作为 MCP 客户端在本地开发机上运行计算器 MCP 服务器。按F5开始调试 MCP 服务器Agent (Prompt) Builder会在新编辑器标签页打开服务器状态显示在终端中在Agent (Prompt) Builder的User prompt字段输入I bought 3 items priced at $25 each, and then used a $20 discount. How much did I pay?点击Run按钮生成 Agent 响应审阅输出模型应得出$55的结论以下是预期发生的过程拆解Agent 选中multiply与subtract两个工具辅助计算为multiply工具分配对应的a、b值为subtract工具分配对应的a、b值每个工具的返回结果呈现在对应的Tool Response中模型的最终输出呈现在Model Response中。提交更多提示词进一步测试点击User prompt字段并替换现有提示词即可测试完成后在终端按CTRL/CMDC停止服务器。这一步直观展示了 MCP 的价值闭环Agent 不再凭空猜答案而是把3 × 25 75、75 − 20 55拆解为两次真实的工具调用每一步的中间结果都有 Tool Response 佐证最终由模型汇总给出自然语言回答。扩展练习为服务器新增工具课程的 Assignment 要求你为server.py新增一个工具例如计算一个数的平方根并提交需要用到新工具或既有工具的提示词。注意新增工具后务必重启服务器新工具才会被 Agent 发现。官方解法见 03-GettingStarted/07-aitk/solution/README.md其sqrt工具实现要点如下import math server.tool() def sqrt(a: float) - float: Return the square root of a. Raises: ValueError: If a is negative. if a 0: raise ValueError(Cannot compute the square root of a negative number.) return math.sqrt(a)关键点解读导入math模块Python 内置的math模块提供math.sqrt()等数学函数注册工具server.tool()装饰器把sqrt函数注册为 Agent 可访问的工具输入参数函数接受单个float类型参数a错误处理a为负数时抛出ValueError避免对负数求平方根math.sqrt()不支持返回值非负输入时返回math.sqrt(a)的结果。重启服务器后即可用以下自然语言提示词测试新工具What is the square root of 25?Calculate the square root of 81.Find the square root of 0.What is the square root of 2.25?这些提示词应能触发 Agent 调用sqrt工具并返回正确结果。此外你还可以继续尝试指数、对数等更多数学工具不断扩展 Agent 的能力边界。仓库中的其他参考实现除本课代码外仓库还提供了一份独立的 Python 计算器服务器参考03-GettingStarted/samples/python/README.md 及其实现 03-GettingStarted/samples/python/mcp_calculator_server.py可用于对照学习安装依赖pip install -r requirements.txt或直接pip install mcp2.1.1,3.0.0启动服务器python mcp_calculator_server.py注意直接在终端运行时出现 JSON-RPC 校验错误属于正常现象——服务器本就在等待格式正确的 MCP 客户端消息而非终端输入。关键要点Key Takeaways本章的要点可以概括为Microsoft Foundry Toolkit 可以消费 MCP 服务器及其工具通过 Agent Builder 的图形界面即可完成连接、发现与调用可以不断为 MCP 服务器新增工具动态扩展 Agent 能力以满足不断变化的需求Microsoft Foundry Toolkit 内置了 MCP 服务器模板可快速创建自定义工具。下一步学习本课完成了Agent 消费 MCP 服务器的闭环接下来可以进入 测试与调试Testing Debugging 课程学习如何系统性地验证和调试 MCP 服务器也可以继续阅读本仓库 03-GettingStarted/README.md 获取整个上手课程的全貌。赞分享教程文档人工智能【免费下载链接】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 计算器服务器用 FastMCP 为 AI Agent 添加 sqrt 平方根工具Microsoft Foundry Toolkit 实战扩展你的 MCP 计算器服务器用 FastMCP 为 AI Agent 添加 sqrt 平方根工具Microsoft Foundry Toolkit 实战教程文档人工智能使用 mcp-agent 连接 Streamable HTTP 服务端从无状态服务器部署到工具调用实战使用 mcp agent 连接 Streamable HTTP 服务端从无状态服务器部署到工具调用实战 导读 本文以开源仓库 mcp agent 中的 exa人工智能AI AgentAgent 框架MCP ClientsAgent 工作流CUA MCP服务器集成在Claude Desktop中使用计算机控制工具CUA MCP服务器集成在Claude Desktop中使用计算机控制工具 概述 CUAComputer Use AgentMCP服务器是一个革命性的工具人工智能AI Agent大模型GUI 自动化MCP 服务模型评测微调强化学习工具调用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进