Token导航 LogoToken导航TokenDH.com
MCP Weather Poc logo
AI代理stdio官方级别未说明来源级核验

MCP Weather Poc

MCP Server

一个基于FastMCP的MCP服务器,提供美国国家气象局(NWS)的天气警报和7天天气预报数据获取功能,主要用于API Dash项目的MCP测试验证。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
Python本地部署JSON-RPC

安装说明

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

作者 / 组织

Gaurav5189

提供方

Gaurav5189

最后核验

2026/5/17 20:20

运行时

Python

快速接入

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

命令预览

uv run mcp dev weather.py

详细介绍

mcp天气poc

一个概念证明MCP(模型上下文协议)服务器 FastMCP, 作为我的GSoC提案的一部分创建 API Dash-创意#1:MCP测试.

这不仅仅是一个hello world服务器——它记录了真正的bug点击、应用的修复、, 以及失败的MCP客户端集成,这直接推动了为什么API Dash 需要建立测试基础设施。

______________________________________________________________________

这表明了什么

  • MCP服务器内置 FastMCP (官方Python SDK)
  • 两个工具通过自动注册 @mcp.tool() 装饰器
  • 从Python类型提示+文档字符串自动生成JSON模式
  • 正确的STDIO传输 stderr-仅日志记录(无stdout污染)
  • 在不使用LLM的情况下发现并修复了HTTP级别的错误
  • 通过MCP Inspector v0.15.0和OpenAI Codex CLI进行测试

______________________________________________________________________

工具

工具说明
get_alerts获取美国某州的NWS天气警报
get_forecast获取美国纬度/经度坐标的7天预测

______________________________________________________________________

如何跑步

先决条件: Python 3.10+, 紫外线,Node.js 20+

git clone https://github.com/Gaurav5189/mcp-weather-poc
cd mcp-weather-poc
uv add "mcp[cli]" httpx
uv run mcp dev weather.py
# Opens MCP Inspector at http://localhost:5173

______________________________________________________________________

截图

MCP Inspector showing successful tool call

______________________________________________________________________

Bug命中与修复(真正的学习)

Bug 1-- httpx 默认情况下不遵循重定向

NWS API返回 301 Moved Permanently 转换为四舍五入的坐标URL (例如。 20.59368320.5937). httpx 默认情况下将其视为终端错误, 不像 requests.修复:一个参数-- follow_redirects=True.

# Before
r = await client.get(url, headers=headers, timeout=10.0)

# After
r = await client.get(url, headers=headers, timeout=10.0, follow_redirects=True)

Bug 2——非美国坐标返回了原始Python回溯

NWS API仅适用于美国。传递覆盖区域外的坐标会导致未处理的 直接向调用者显示的异常——一种破碎的开发人员体验。 修复了显式边界框复选框返回干净、可操作的错误消息的问题。

longitude_ok = -125.0  *“此聊天界面不会将自定义MCP工具作为一流工具公开
> 可调用工具,所以我通过当地气象MCP项目获取了它
> NWS支持本次会议的实时通话。"*

**这是API Dash MCP测试功能解决的核心问题。**

现有的AI CLIs对MCP工具调用的处理不一致。开发商大楼
如今,MCP服务器没有可靠、确定的方法来验证其工具是否
正确调用-无需燃烧LLM API信用,无需猜测是否
客户端默默地后退,没有通读模糊的模型输出
推断实际发生了什么。

此PoC中的每个错误都是使用 **MCP检查器的手动JSON有效载荷
测试员** --不涉及LLM,没有歧义,直接结构化输入→ 结构化的
输出。这正是API Dash提案第三阶段给开发者带来的
用于他们自己的MCP服务器。

______________________________________________________________________

## GSoC提案架构

此PoC映射到 **阶段4** API Dash MCP测试功能的建议:

|阶段|建造什么|
|-------|----------------|
| **第一阶段** |Node.js协议适配器使用 `@modelcontextprotocol/sdk`,通过以下方式生成MCP服务器进程 `child_process`,管理JSON-RPC stdio连接|
| **第2阶段** |API Dash中的React仪表板用于服务器配置,通过 `tools/list` 和 `resources/list`,呈现实时工具模式|
| **第三期** |手动JSON有效负载测试引擎——手动构造工具调用,捕获响应和错误堆栈跟踪,在没有LLM的情况下进行调试|
| **阶段4** |作为API Dash自己的CI/CD管道的自动化测试目标的伪Python MCP服务器(如此服务器)|

______________________________________________________________________

*堆栈:Python 3.13·uv·FastMCP 1.26.0·httpx·MCP Inspector v0.15.0·OpenAI Codex CLI·Parrot OS*

目录标签

目录标签

Python本地部署JSON-RPCMCP协议天气API测试验证Python开发

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP