mcpField
W
weather

weather

本地服务
github.com/eudoroolivares2016地图与出行09 周前更新

关于 weather

weather 是面向学习 MCP 服务教程的开发者的精简 TypeScript MCP 服务,通过两个工具提供美国国家气象局的天气预报和州级有效警报。

主要功能

  1. 01按经纬度获取天气预报
  2. 02按美国州查询有效警报
  3. 03返回结构化工具输出

适用场景

  1. 01查询某地天气预报
  2. 02查看某州当前有效警报

MCP 相关

通过 stdio 向 MCP 客户端提供 `get-forecast` 和 `get-alerts` 工具。两者均声明输出架构并返回结构化内容。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"eudoroolivares2016-weather": {
"command": "npx",
"args": [
"-y",
"@eudoroolivares/mcp-weather-server"
]
}
}
}
启动命令npx -y @eudoroolivares/mcp-weather-server

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@eudoroolivares/mcp-weather-server1.0.1

工具

2

收录的工具列表 · 更新于 2 周前

参数类型必填说明
statestring是两字母州代码(例如 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

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。