Token导航 LogoToken导航TokenDH.com
MCP For Engineers logo
文档知识stdio官方级别未说明来源级核验

MCP For Engineers

MCP Server

MCP for Engineers: Zere-to-Hero 是一个演示传统API与MCP风格工具差异的示例项目,通过旅行成本和天气规划场景展示如何将多个API封装为MCP工具,以便LLM或代理自主调用。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
Jupyter NotebookPythonClaude旅行规划Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

praveenkumar-pokala

提供方

praveenkumar-pokala

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

面向工程师的MCP:从Zere到Hero🌍✈️

此存储库演示了 经典API和MCP风格工具之间的区别 使用一个更复杂但仍然直观的示例:

旅行费用和天气计划\ “我要从海得拉巴去伦敦。\ 预计的天气是什么,我应该计划多少印度卢比的粗略每日预算?”

我们在 两个世界:

  1. api_world/ –The *旧的方式*:您手动编排多个REST API。
  2. mcp_world/ –The *新方式*:相同的功能被包装为 MCP工具,因此LLM(或代理)可以发现并调用它们。

______________________________________________________________________

🧠 例子背后的直觉

要回答一个看似简单的用户请求,我们实际上需要:

  1. 了解位置

- 将城市名称映射到坐标(用于天气) - 知道一个城市属于哪个国家

  1. 获取天气预报

- 调用真正的免费天气API(Open-Meteo)

  1. 估算每日预算

- 假设每日基本成本为 目的地货币 - 使用真实、免费的外汇API(exchangerate.host)将其转换为印度卢比

这是怎么回事 *复杂的*:

  • 我们需要 多个外部系统:

- 天气API - 外汇转换API

  • 我们需要 链式推理:

- city → 坐标→ 天气 - city → 国家→ 货币→ 外汇汇率→ 印度卢比预算

  • 我们希望以一种 LLM可以自主使用,而不仅仅是人类开发者。

______________________________________________________________________

🧱 回购结构

complex-api-vs-mcp-trip-planner/
├── requirements.txt
├── README.md
├── src/
│   ├── __init__.py
│   ├── api_world/
│   │   ├── __init__.py
│   │   ├── weather_client.py
│   │   ├── currency_client.py
│   │   └── planner_api_style.py
│   └── mcp_world/
│       ├── __init__.py
│       ├── mcp_server.py
│       └── simulate_llm_client.py
└── notebooks/
    └── trip_planner_api_vs_mcp_demo.ipynb

______________________________________________________________________

🌐 第1部分-API世界(手动编排)

api_world 模块显示了如何 开发商必须:

  • 了解端点和查询参数
  • 了解每个响应的JSON结构
  • 决定调用哪个API的顺序
  • 手动将所有数据粘合在一起,形成最终回复

我们使用 真实、自由的端点:

- 用于获取一个城市的7天预报(通过预先绘制的纬度/经度)

- 用于从目标货币转换基本每日预算→ INR

在API世界中,您的代码分布在多个客户端和JSON有效负载上。\ 这 模特什么都不知道 关于这些能力,除非你明确提示并将其粘合在一起。

______________________________________________________________________

🤖 第2部分-MCP世界(基于工具的编排)

mcp_world 模块公开了与 MCP工具,使用官方Python SDK(mcp.server.fastmcp.FastMCP).

它定义了以下工具:

  • get_weather(city: str)\

→ 返回该城市未来几天的简明天气摘要。

  • estimate_daily_budget(city: str, traveler_type: str = "standard")\

→ 选择以城市货币表示的基本成本(例如,伦敦为英镑),然后转换为印度卢比。

  • plan_trip_summary(origin_city: str, dest_city: str, traveler_type: str = "standard")\

→ 高级编排工具 内部组成 其他工具。

与普通API的主要区别:

  • MCP服务器 自我描述 可用工具:

- 工具名称 - 参数模式 - 人类可读的描述

  • MCP感知客户端(如ChatGPT、Claude Desktop或您自己的代理)可以:

- 动态发现工具 - 选择何时给他们打电话 - 将它们链接到多步骤工作流程中

API让人类与机器对话。\ MCP允许机器与机器进行通信。

______________________________________________________________________

🚀 如何跑步

1.️⃣ 设置环境

git clone 
cd complex-api-vs-mcp-trip-planner

python -m venv .venv
source .venv/bin/activate  # on Windows: .venv\Scripts\activate

pip install -r requirements.txt

如果你运行这个 谷歌Colab,只需上传文件夹或从驱动器装载它,然后使用:

!pip install -r requirements.txt

______________________________________________________________________

2.️⃣ 运行API-world演示

python -m src.api_world.planner_api_style

这将:

  • 通过Open Meteo获取真实天气数据
  • 通过exchange.host获取真实汇率
  • 打印合并摘要,如下所示:
从海德拉巴到伦敦的旅行: - 预计未来几天伦敦的气温将在… - 一个标准旅行者的粗略每日预算约为XXX印度卢比。

所有编排都是 手册.

______________________________________________________________________

3.️⃣ 运行MCP服务器

python -m src.mcp_world.mcp_server

这将启动一个MCP服务器,暴露:

  • get_weather
  • estimate_daily_budget
  • plan_trip_summary

你可以:

  • 使用任何兼容MCP的客户端连接到此服务器,
  • 运行附带的模拟客户端:
python -m src.mcp_world.simulate_llm_client

模拟客户端的行为就像一个愚蠢的LLM,它:

  1. 从服务器“发现”工具
  2. 呼叫 plan_trip_summary 参数来源于自然语言风格配置
  3. 打印最终的结构化响应

______________________________________________________________________

🧪 笔记本演示

notebooks/trip_planner_api_vs_mcp_demo.ipynb 笔记本电脑是为 教学:

  • 上半场:\

–显示原始API调用\ –可视化响应JSON\ –手动编排

  • 下半场:\

–显示MCP工具定义\ –内省工具元数据\ –演示一个调用高级工具的模拟代理

您可以直接在中打开它 谷歌Colab 通过上传仓库或使用GitHub链接。

______________________________________________________________________

🎯 教学角度

此回购非常适合解释:

  1. 为什么API是低级管道

- 您可以从端点和有效载荷的角度进行思考。

  1. 为什么MCP工具是高级功能

- 你认为 *模型能做什么*.

  1. 复杂的工作流程如何变得更简单

- 旅行计划混合了天气、外汇、假设和用户类型。 - 在MCP中,所有这些都位于一个 *一小套可发现的工具*.

你可以这样构建它:

*“在API世界中,开发人员是协调者。\ 在MCP世界中,开发人员定义工具 模型 成为编排者。”*

______________________________________________________________________

快乐的教学和黑客! 🌍✈️🤖

目录标签

目录标签

Jupyter NotebookPythonClaude旅行规划本地部署API封装天气查询货币转换MCP工具

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP