README
🚀 天气 MCP 服务器
天气 MCP 服务器是一个提供天气信息的模型上下文协议(MCP)服务器,它集成于桌面版的 Claude 中。该服务器借助国家气象局 API,能为美国境内的任意位置提供天气预报和警报服务。此项目是作为 MIT MCP 黑客马拉松活动的一部分于 2025 年 4 月创建的。
✨ 主要特性
get_forecast:可使用经纬度获取任何美国位置的详细天气预报。get_alerts:能根据州代码检索特定州内的活跃天气警报。
📦 安装指南
安装 uv
确保已安装 uv,可使用以下命令进行安装:
curl -LsSf https://astral.sh/uv/install.sh | sh
配置 Python 环境
使用以下命令创建并激活虚拟环境,同时安装所需依赖项:
# 创建并激活虚拟环境
uv venv
source .venv/bin/activate
# 安装依赖项
uv add "mcp[cli]" httpx
📚 详细文档
配置步骤
- 创建或编辑桌面版 Claude 的配置文件
~/Library/Application Support/Claude/claude_desktop_config.json,内容如下:
{
"mcpServers": {
"weather": {
"command": "/path/to/uv",
"args": [
"--directory",
"/absolute/path/to/weather",
"run",
"weather.py"
]
}
}
}
- 将
/path/to/uv替换为您实际的 uv 可执行文件路径(可使用which uv查找)。 - 将
/absolute/path/to/weather替换为该项目的绝对路径。
使用方法
- 启动桌面版 Claude。
- 查看锤子 🔨 图标以确认服务器已连接。
- 示例查询:
- "Sacramento 的天气怎么样?"
- "Texas 有哪些活跃的天气警报?"
故障排除
- 检查 Claude 的日志文件
~/Library/Logs/Claude/mcp*.log。 - 确保配置中的所有路径均为绝对路径。
- 验证服务器是否能独立运行(使用
uv run weather.py)。 - 确认端口 8001 没有被其他进程占用。
🔧 技术细节
该服务器使用国家气象局 API,具体信息如下:
| 属性 | 详情 |
|------|------|
| 基础 URL | https://api.weather.gov |
| 使用的端点 | /alerts/active/area/{state} - 根据州获取警报信息;/points/{lat},{lon} - 获取预测网格数据;/forecast - 获取详细预报 |
📄 许可证
该项目遵循原始教程的许可声明:模型上下文协议
屏幕截图
文档中未提供具体的屏幕截图内容。
Scan to join WeChat group