使用说明
MCP气象项目
一种MCP(模型上下文协议)服务器,使用美国国家气象局API提供天气数据工具和资源。该服务器包括天气警报、预报和基于RAG的历史天气数据搜索系统。
特性
- 天气警报:获取美国任何州的活跃天气警报
- 天气预报:使用纬度和经度检索任何位置的详细预报
- 历史搜索:使用RAG(检索增强生成)搜索存储的天气数据
- 数据存储:自动存储所有提取的天气数据以供将来参考
- MCP资源:通过MCP资源访问存储的警报、预报和最近的天气数据
安装
- 确保您已安装Python 3.13+
- 使用安装依赖项
uv:
uv sync
用法
运行服务器
启动MCP服务器:
uv run python main.py
可用工具
get_alerts(state: str)
检索美国某个州的活动天气警报。提供两个字母的州代码(例如“CA”、“NY”、“TX”)。
get_forecast(latitude: float, longitude: float)
获取特定位置的详细天气预报。提供纬度和经度坐标。
search_weather_history(query: str, limit: int = 5)
使用关键字匹配搜索存储的天气数据。返回高达 limit 与查询匹配的结果。
可用资源
weather://alerts-列出所有已存储的天气警报weather://forecasts-列出所有存储的天气预报weather://recent-显示最近的天气数据条目
测试
运行测试脚本以验证服务器是否正常工作:
uv run python test_server.py
项目结构
main.py-主MCP服务器入口点weather.py-天气工具实施storage.py-数据存储和RAG搜索功能utils.py-API请求的实用程序函数test_server.py-MCP服务器的测试脚本weather_data.json-存储天气数据的JSON文件
依赖项
fastapi[standard]-Web框架httpx-API请求的HTTP客户端mcp[cli]-模型上下文协议实现
许可证
本项目按原样提供,用于教育和发展目的。