关于 Weather MCP Server
Weather MCP Server 通过 National Weather Service API 提供美国天气警报和按位置查询的预报,供需要天气数据的 MCP 客户端使用,并支持 Docker 部署。
主要功能
- 01获取美国各州天气警报
- 02按经纬度查询预报
- 03使用 National Weather Service API
- 04支持 Docker 部署
适用场景
- 01查看美国某州的有效警报
- 02获取指定坐标的天气预报
- 03向 MCP 客户端提供天气数据
MCP 相关
向 MCP 客户端提供工具,可通过 National Weather Service API 按美国州查询有效警报,或按经纬度获取预报。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Weather MCP Server
一个基于模型上下文协议(MCP)的服务器,通过美国国家气象局(NWS)API 提供天气信息和预警。
功能
- 获取美国任意州的天气预警
- 使用纬度和经度获取任意地点的详细天气预报
- 易于使用的 MCP 接口
- 支持 Docker,便于部署
前提条件
- Python 3.13 或更高版本
- Docker 和 Docker Compose(用于容器化部署)
安装
本地开发
- 克隆仓库
- 使用
uv安装依赖:pip install uv uv venv uv pip install . uv run src/main.py
Docker 部署
使用 Docker Compose 构建并运行服务器即可:
docker compose up -d
服务器端点将在 http://localhost:8001/sse 提供。
可用工具
get_alerts(state: str)
获取美国某个州当前生效的天气预警。
参数:
state:美国州的两字母代码(例如,加利福尼亚州为 "CA",纽约州为 "NY")
get_forecast(latitude: float, longitude: float)
获取特定地点的详细天气预报。
参数:
latitude:地点的纬度longitude:地点的经度
开发
项目使用 Docker 卷进行开发,无需重新构建容器即可反映代码更改。源代码挂载在容器中的 /app/src。
技术详情
- 使用 Python 的 MCP 框架构建
- 使用 httpx 发送异步 HTTP 请求
- 实现完善的错误处理和请求超时
- 使用 uv 管理依赖
- 使用 Docker 容器化,便于部署
环境变量
PYTHONUNBUFFERED=1:确保 Python 输出不经缓冲,直接发送到终端
端口
服务器在容器内运行于端口 8000,并映射到主机上的端口 8001。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。