使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 实现的天气查询服务器。它提供了一组工具,允许 LLM 客户端通过 MCP 协议查询指定城市的天气信息,包括实时天气、天气预报和未来逐小时的精细天气预报。

主要功能点

  • 实时天气查询: 提供指定城市的实时天气状况,包括温度、天气状况、湿度、风向风力等详细信息,以及空气质量和生活指数。
  • 天气预报查询: 提供指定城市未来几天的天气预报,包括每日天气状况、温度范围、日出日落时间等。
  • 精细天气预报查询: 提供指定城市未来几个小时的逐3小时精细天气预报,包括温度范围、天气状况和降水量等。
  • 支持城市: 目前支持北京、上海、武汉等常用城市的天气查询 (城市列表可扩展)。
  • 标准MCP协议: 使用 JSON-RPC over Stdio 与客户端通信,符合 MCP 服务器规范。

安装步骤

  1. 克隆仓库

    git clone https://github.com/kyre-99/MCP-SERVER-WZH.git
    cd MCP-SERVER-WZH
  2. 安装依赖

    确保你的环境中已安装 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
}

基本使用方法

  1. 启动服务器: MCP 客户端根据上述配置启动服务器。服务器启动后,将监听标准输入,等待客户端发送 MCP 请求。

  2. 客户端请求: 客户端可以使用 MCP 协议发送 JSON-RPC 请求调用以下工具:

    • query_weather: 查询实时天气。
      • 参数: '{"city": "城市名称"}' (例如: '{"city": "北京"}')
    • query_forecast: 查询天气预报。
      • 参数: '{"city": "城市名称"}' (例如: '{"city": "上海"}')
    • query_hourly_forecast: 查询精细天气预报。
      • 参数: '{"city": "城市名称"}' (例如: '{"city": "武汉"}')
  3. 服务器响应: 服务器接收到请求后,会调用相应的工具获取天气数据,并将结果封装成 MCP 响应返回给客户端。响应内容为 JSON-RPC 格式,包含查询到的天气信息或错误信息。

示例 (MCP客户端请求 query_weather 工具):

{
  "jsonrpc": "2.0",
  "method": "call",
  "params": {
    "tool_call": {
      "tool_name": "query_weather",
      "parameters": {
        "city": "北京"
      }
    }
  },
  "id": "1"
}

服务器会返回北京的实时天气信息。

信息

分类

网页与API