使用说明
气象MCP服务器
模型上下文协议(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(状态:str)
获取美国某个州的活跃天气警报。
参数:
state:两个字母的美国州代码(例如,“CA”代表加利福尼亚州,“NY”代表纽约州)
get_forecast(纬度:float,经度:float)
获取特定地点的详细天气预报。
参数:
latitude:位置纬度longitude:位置经度
发展
该项目使用Docker卷进行开发,允许在不重建容器的情况下反映代码更改。源代码安装在 /app/src 在容器中。
技术细节
- 使用Python的MCP框架构建
- 使用httpx进行异步HTTP请求
- 实现正确的错误处理和请求超时
- 使用uv进行依赖关系管理
- 使用Docker进行容器化,便于部署
环境变量
PYTHONUNBUFFERED=1:确保Python输出直接发送到终端,无需缓冲
端口
服务器在容器内的端口8000上运行,并映射到主机上的端口8001。