关于 weather
weather 是面向学习 MCP 服务教程的开发者的精简 TypeScript MCP 服务,通过两个工具提供美国国家气象局的天气预报和州级有效警报。
主要功能
- 01按经纬度获取天气预报
- 02按美国州查询有效警报
- 03返回结构化工具输出
适用场景
- 01查询某地天气预报
- 02查看某州当前有效警报
MCP 相关
通过 stdio 向 MCP 客户端提供 `get-forecast` 和 `get-alerts` 工具。两者均声明输出架构并返回结构化内容。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| state | string | 是 | 两字母州代码(例如 CA、NY) |
详细介绍
使用 TypeScript 编写的简单 MCP 天气服务
一个精简的 MCP 服务,通过两个工具提供来自美国国家气象局 API的美国天气数据:
get-forecast– 获取某个地点的天气预报(需要latitude和longitude)get-alerts– 获取美国某个州当前生效的天气预警(需要两位字母的州代码)
本示例配合构建 MCP 服务教程使用。
前置条件
- Node.js 24+
- npm
构建和运行
npm install
npm run build
node build/index.js
服务通过 stdio 通信,因此直接运行时只会等待客户端通过 stdin 连接。要查看实际运行效果,可以从本仓库中的某个客户端示例启动它,例如:
cd ../mcp-client-typescript
npm install && npm run build
node build/index.js ../weather-server-typescript/build/index.js
结构化内容
这两个工具都声明了 outputSchema 并返回 structuredContent。get-forecast 返回一个对象;get-alerts 返回顶层 JSON 数组,这是协议修订版 2026-07-28 首次允许的格式——详见规范中的结构化内容。
serveStdio 通过同一个工厂同时服务于两个协议时代,SDK 会将以数组为根的模式转换为 {"result": [...]} 形式,以供 2025-11-25 客户端使用,因此采用它不会给旧客户端带来任何影响。详见 SDK 文档。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。