快速结论
Cyanheads NWS Weather MCP Server 是把美国 National Weather Service API 包装成 MCP 工具的开源项目。v0.7.2 提供 7 个工具与 1 个资源,可查询美国及其领地的预报、实时告警、站点观测、附近站点、告警类型、Weather Forecast Office 讨论和区域文字预报。项目采用 Apache-2.0 许可证,可通过 npm、Bun、Docker 或源码自托管,也有 https://nws.caseyjhand.com/mcp 公共 Streamable HTTP 实例。
它不是 NWS、NOAA 或美国政府官方发布的 MCP 服务,而是社区项目调用 api.weather.gov。工具以读取天气数据为主,不会替用户修改 NWS 数据或直接控制设备,但请求仍会暴露查询地点;使用公共实例时,服务端还会看到连接 IP、时间、工具参数和基础日志。它适合一般天气问答、研究和 Agent 上下文,不应成为唯一的紧急告警、生命安全或灾害决策渠道。
核心功能
- 坐标预报:
nws_get_forecast自动把经纬度解析到 NWS grid,返回约 7 天的 12 小时预报,或截取未来 48 小时的小时预报。 - 活动告警搜索:
nws_search_alerts可按州或地区、点、zone、事件、严重度、紧急度、确定性和状态过滤,并限制返回数量。 - 站点观测:
nws_get_observations可按坐标寻找最近站点,或按 station ID 返回当前测量数据和双单位显示。 - 附近站点发现:
nws_find_stations按距离排序并给出方位、海拔、时区与关联 zone,便于后续查询。 - 专业文字产品:
nws_get_office_discussion获取 AFD、HWO、ZFP 或 SPS,nws_get_zone_forecast获取公共预报区文字周期。 - 双传输与部署:支持 stdio 和 Streamable HTTP,可本地运行、Docker 部署或连接免费公共实例。
- 上游保护:包含坐标到 grid 缓存、请求超时、瞬时故障重试退避,并使用 NWS 要求的 User-Agent。
适合人群
- MCP Agent 开发者:需要给 Claude、Cursor、VS Code 或自建客户端增加美国天气读取能力。
- 美国旅行和户外应用原型:需要预报、告警和附近观测站信息,但会提醒用户核对官方来源。
- 研究与数据团队:需要把 NWS 结构化数据和预报讨论引入分析流程。
- 希望自托管的团队:愿意维护 Node.js/Bun、网络、更新、日志和 NWS User-Agent。
- 不太适合的人群:需要全球天气、历史气候库、雷达图层、保证可用性的商业 SLA,或依赖自动推送作为唯一紧急告警的用户。
使用场景
- 地点天气摘要:把用户提供的美国经纬度转为 7 天或小时预报,并显示预报时区和数据时间。
- 恶劣天气检查:按 point 或 area 查询 active alerts,再引导用户打开 NWS 官方告警查看完整指令。
- 观测站核对:查找附近站点并读取当前温度、风、气压和能见度,注明站点距离和缺测项。
- 预报员讨论阅读:获取当地 WFO 的 AFD 或 HWO,帮助理解不确定性和天气系统背景。
- Agent 测试:验证结构化工具调用、空值、坐标错误、上游超时和结果截断,不执行任何外部写操作。
价格与版本
截至 2026-07-21,最新核验版本为 v0.7.2,项目代码采用 Apache-2.0 许可证,npm 包和自托管软件免费。NWS API 本身无需 API key;自托管仍需要承担服务器、容器、网络、监控和维护成本。许可证覆盖项目代码,不代表 NWS 名称、上游数据、第三方基础设施或公共实例服务承诺都由 Apache-2.0 覆盖。
公共实例目前免费且无需安装,但仓库没有为它承诺 SLA、容量、长期可用性、支持时间或固定配额。免费实例可能限流、停止、升级或记录运营日志,生产应用应准备超时、重试上限、缓存、熔断和备用官方入口。若业务需要受约束的可用性与隐私,应自托管并固定版本,而不是依赖个人维护的公共端点。
国内访问与使用体验
needsVPN 沿用 true,因为 GitHub、公共实例与 NWS 上游在中国大陆的可达性和延迟可能不稳定。即使 MCP server 本身可连接,最终仍依赖 api.weather.gov。自托管在本地网络附近只能改善 Agent 到 server 的一段链路,不能消除 server 到 NWS 的跨境连接和上游故障。
地点是隐私数据。精确住宅、学校、工作地或连续查询轨迹可能推断用户活动;公共实例还会接触调用方 IP。应用应优先使用完成任务所需的最低精度,避免把 IP、用户 ID、经纬度和完整问题长期关联保存,并在日志中截断或散列不必要标识。自托管可加强日志控制,但仍需检查反向代理、OpenTelemetry、容器和云平台日志。
所有 7 个天气工具都是读取型能力,但“只读”不等于结果绝对可靠。站点可能缺测,预报会更新,告警可能延迟或在查询后变化,公共端点也可能返回缓存或失败。遇到龙卷风、洪水、飓风、野火、极端高温等紧急情况,应直接查看 weather.gov、当地 WFO、官方无线警报及地方应急部门,遵从官方疏散和避险指令,不等待 Agent 总结。
优点
- 7 个工具覆盖预报、告警、观测、站点和预报员文字产品,范围比简单天气问答完整。
- NWS 上游无需 API key,本地启动门槛低。
- 支持 stdio、Streamable HTTP、npm、Bun 和 Docker,多种客户端容易接入。
- Apache-2.0 代码可审查和自托管,便于控制版本与日志。
- 工具以读取为主,不会通过 MCP 改写官方天气数据。
不足
- 非官方社区 MCP,不能代表 NWS、NOAA 或美国政府作出服务承诺。
- 数据仅覆盖美国、阿拉斯加、夏威夷及美国领地,不是全球天气服务。
- 公共实例免费但没有 SLA、固定容量或长期运行保证。
- 依赖 NWS API、网络、观测站和预报产品,可能缺测、超时或更新滞后。
- 精确坐标、IP 和查询日志可能形成位置隐私风险。
- 不提供紧急推送保证,也不应替代官方告警渠道。
替代品对比
| 工具 | 更适合谁 | 优势 | 不足 |
|---|---|---|---|
| Mireye Earth | 需要美国地形、风险、地块与能源字段的 Agent | 每字段带来源、年份和置信度 | 天气不是唯一重点,early access 无生产 SLA |
| Brave Search API | 需要检索天气新闻与网页背景的 Agent | 检索面广、可补充最新文字报道 | 不是标准化 NWS 观测或告警接口 |
| Tavily | 需要给 Agent 补充天气网页背景和来源摘要的开发者 | 面向 Agent 的网页检索与内容提取 | 只提供网页上下文,不是结构化天气数据源,不能替代 NWS 预报、观测或告警 |
| 新加坡政府开放数据 MCP | 需要新加坡官方开放数据的 MCP 用户 | 区域政府数据直接 | 地理范围不同,不能替代美国天气 |
| 直接调用 NWS API | 不需要 MCP 且希望减少中间层的工程团队 | 直接控制请求、缓存和原始响应 | 需自行实现 schema、错误处理和客户端集成 |
常见问题 FAQ
这是 NWS 官方 MCP Server 吗?
不是。它是 Cyanheads 维护的社区开源项目,数据来自 NWS API,但没有证据表明由 NWS、NOAA 或美国政府官方发布或背书。
v0.7.2 提供哪些工具?
共 7 个:forecast、alerts、observations、nearby stations、alert types、office discussion 和 zone forecast,另提供告警类型资源。
软件和公共实例都免费吗?
代码与 npm 包可免费使用,公共实例当前也免费。自托管有计算与运维成本,公共实例则没有 SLA 或永久免费承诺。
公共实例会知道我的位置吗?
如果工具参数包含经纬度,它会处理该地点;网络服务通常也能看到 IP 和请求时间。不要提交不必要的精确位置,并检查服务与客户端日志。
它会修改数据或替我执行操作吗?
当前天气工具是读取型,查询 NWS 数据并返回结果,不写入 NWS 或控制本地设备。不过客户端仍应限制 server 权限并检查更新。
可以把它作为唯一的灾害预警吗?
不可以。公共实例、网络、Agent 和上游都可能失败或延迟。紧急情况必须使用 NWS、当地 WFO、官方警报与地方应急渠道。
NWS API 需要密钥吗?
不需要 API key,但要求合适的 User-Agent。自托管者应配置可识别的 User-Agent,并遵守上游使用要求与合理请求频率。
总结
Cyanheads NWS Weather MCP Server v0.7.2 是一个边界清晰的美国天气读取工具:7 个 MCP 工具、Apache-2.0 代码、免费自托管选项和方便但无 SLA 的公共实例。它比旧的泛称“United States Weather”更准确,因为页面现在指向具体实现,而不是把 NWS API 与多个社区项目混为一个产品。使用时保持最小位置精度和日志,生产环境优先自托管并准备故障降级;涉及生命安全时,始终回到官方 NWS 与地方应急渠道。