使用说明
项目简介
天气信息MCP服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,专注于提供美国国家气象局 (NWS) 的天气信息。它通过标准化的 MCP 协议,向 LLM 客户端提供天气警报和预报查询功能,使得 LLM 应用可以方便地获取实时天气数据作为上下文信息。
主要功能点
- 获取美国州级天气警报:允许用户查询美国特定州(例如加利福尼亚州 "CA")的实时天气警报信息,包括事件类型、区域、严重程度、描述和指导等。
- 获取指定位置天气预报:允许用户通过提供经纬度坐标,查询特定地点的详细天气预报,包括未来数个时段的天气状况、温度、风速风向等信息。
安装步骤
- 克隆仓库
git clone https://github.com/JackKuo666/Weather-MCP-Server.git cd Weather-MCP-Server - 创建并激活虚拟环境
python -m venv .venv source .venv/bin/activate # Linux/macOS .venv\Scripts\activate # Windows - 安装依赖
uv add "mcp[cli]" httpx
服务器配置
要使 MCP 客户端能够连接到此天气信息MCP服务器,您需要在客户端配置中指定服务器的启动命令。以下是推荐的配置信息(JSON 格式):
{ "server_name": "weather", "command": "python", "args": ["weather.py"] }
配置参数说明:
- 'server_name': 服务器名称,可以自定义,例如 "weather"。
- 'command': 启动服务器的命令,这里使用 'python' 解释器。
- 'args': 传递给启动命令的参数,这里指定运行 'weather.py' 文件。
注意: MCP 客户端需要能够执行 'python weather.py' 命令来启动此天气信息服务器。请确保您的 MCP 客户端环境已安装 Python 并可以访问到 'weather.py' 文件。
基本使用方法
在 MCP 客户端中,您可以使用以下工具调用来获取天气信息:
-
获取州级天气警报: 调用工具名: 'weather.get_alerts' 参数:
- 'state': 美国州份的两位字母代码 (例如: "CA", "NY")
例如,在 MCP 客户端中调用获取加利福尼亚州警报的工具:
result = await mcp.call_tool("weather.get_alerts", state="CA") print(result) -
获取位置天气预报: 调用工具名: 'weather.get_forecast' 参数:
- 'latitude': 纬度 (浮点数)
- 'longitude': 经度 (浮点数)
例如,在 MCP 客户端中调用获取旧金山 (大概经纬度) 天气预报的工具:
result = await mcp.call_tool("weather.get_forecast", latitude=37.7749, longitude=-122.4194) print(result)
请根据您的 MCP 客户端的具体使用方式,参考以上工具调用方法来获取天气信息。
信息
分类
网页与API