气象MCP服务器
一个简单的MCP(模型控制协议)服务器,使用美国国家气象局API提供天气信息。此服务器公开了两个工具:
get_alerts:获取美国某州的天气警报get_forecast:获取特定位置的天气预报
先决条件
- Python 3.10或更高版本
uv包管理器(推荐)或pip
安装
- 克隆此存储库:
git clone
cd simple_mcp_server- 设置Python环境:
使用 uv (推荐):
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create and activate virtual environment
uv venv
source .venv/bin/activate # On Windows use: .venv\Scripts\activate
# Install dependencies
uv add "mcp[cli]" httpx或使用 pip:
python -m venv .venv
source .venv/bin/activate # On Windows use: .venv\Scripts\activate
pip install "mcp[cli]" httpx用法
- 运行服务器:
mcp dev main.py- 为桌面配置Claude:
- 打开您的Claude进行桌面应用程序配置,网址为 ~/Library/Application Support/Claude/claude_desktop_config.json - 添加以下配置:
{
"mcpServers": {
"weather": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/simple_mcp_server",
"run",
"main.py"
]
}
}
}- 替换 /ABSOLUTE/PATH/TO/simple_mcp_server 带有项目目录的实际路径 - 保存文件并重新启动Claude for Desktop
- 测试服务器:
- 打开Claude桌面版 - 在界面中查找锤子图标 - 您应该看到列出了两个工具: get_alerts 和 get_forecast - 试着问以下问题: - “纽约的天气怎么样?” - “纽约的活跃天气警报是什么?”
可用工具
获取警报
获取美国某个州的天气警报。
参数:
state(str):两个字母的美国州代码(例如,“CA”、“NY”)
获取预测
获取特定位置的天气预报。
参数:
latitude(浮动):位置的纬度longitude(浮动):位置的经度
故障排除
- 如果服务器未被Claude用于桌面:
- 确保配置文件路径正确 - 验证配置中的绝对路径是否正确 - 确保安装了所有依赖项 - 尝试重新启动Claude for Desktop
- 如果您收到天气API错误:
- 检查您的互联网连接 - 验证坐标或状态代码是否有效 - 美国国家气象局API仅适用于美国地区

