使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 实现的天气查询服务器。它提供了一组工具,允许 LLM 客户端通过 MCP 协议查询指定城市的天气信息,包括实时天气、天气预报和未来逐小时的精细天气预报。
主要功能点
- 实时天气查询: 提供指定城市的实时天气状况,包括温度、天气状况、湿度、风向风力等详细信息,以及空气质量和生活指数。
- 天气预报查询: 提供指定城市未来几天的天气预报,包括每日天气状况、温度范围、日出日落时间等。
- 精细天气预报查询: 提供指定城市未来几个小时的逐3小时精细天气预报,包括温度范围、天气状况和降水量等。
- 支持城市: 目前支持北京、上海、武汉等常用城市的天气查询 (城市列表可扩展)。
- 标准MCP协议: 使用 JSON-RPC over Stdio 与客户端通信,符合 MCP 服务器规范。
安装步骤
-
克隆仓库
git clone https://github.com/kyre-99/MCP-SERVER-WZH.git cd MCP-SERVER-WZH -
安装依赖
确保你的环境中已安装 Node.js 和 npm (或 yarn)。在项目根目录下运行:
npm install
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接到此天气查询服务器。请注意,'command' 和 'args' 需根据实际情况配置,确保客户端能够正确启动服务器进程。
{ "serverName": "weather-mcp", // 服务名称,与 server.js 中 McpServer 构造函数的 name 字段一致 "command": "node", // 启动服务器的命令,这里使用 Node.js 运行 JavaScript 文件 "args": ["weather/server.js"] // 启动命令的参数,指向服务器入口文件 weather/server.js }
基本使用方法
-
启动服务器: MCP 客户端根据上述配置启动服务器。服务器启动后,将监听标准输入,等待客户端发送 MCP 请求。
-
客户端请求: 客户端可以使用 MCP 协议发送 JSON-RPC 请求调用以下工具:
- query_weather: 查询实时天气。
- 参数: '{"city": "城市名称"}' (例如: '{"city": "北京"}')
- query_forecast: 查询天气预报。
- 参数: '{"city": "城市名称"}' (例如: '{"city": "上海"}')
- query_hourly_forecast: 查询精细天气预报。
- 参数: '{"city": "城市名称"}' (例如: '{"city": "武汉"}')
- query_weather: 查询实时天气。
-
服务器响应: 服务器接收到请求后,会调用相应的工具获取天气数据,并将结果封装成 MCP 响应返回给客户端。响应内容为 JSON-RPC 格式,包含查询到的天气信息或错误信息。
示例 (MCP客户端请求 query_weather 工具):
{ "jsonrpc": "2.0", "method": "call", "params": { "tool_call": { "tool_name": "query_weather", "parameters": { "city": "北京" } } }, "id": "1" }
服务器会返回北京的实时天气信息。
信息
分类
网页与API