使用说明

项目简介

mcp-server-weather 是一个基于 Spring Boot 和和风天气API构建的 MCP (Model Context Protocol) 服务端应用。它提供了一个 'getWeather' 工具,允许大型语言模型(LLM)客户端通过 MCP 协议查询指定城市的实时天气信息。

主要功能点

  • 提供实时天气查询工具: 通过 'getWeather' 工具,LLM 可以获取指定城市的实时天气状况,包括温度、体感温度、天气描述、风向风力、湿度、降水量、气压、能见度等详细信息。
  • 基于 MCP 协议: 遵循 Model Context Protocol 标准,可以与任何支持 MCP 协议的 LLM 客户端(如 Claude、LangChain4j 等)进行无缝集成。
  • 易于部署和使用: 使用 Java 和 Spring Boot 开发,打包成可执行 JAR 文件,配置简单,启动方便。

安装步骤

  1. 下载项目代码: 将 GitHub 仓库 mcp-server-weather 下载到本地。
  2. 安装 Maven (如果未安装): 确保你的开发环境中已安装 Maven。
  3. 配置和风天气 API Key: 访问 和风天气开放平台 注册并获取 API Key。
  4. 打包项目: 在项目根目录下,使用 Maven 命令打包项目:
    mvn clean package -Dmaven.test.skip=true
    打包成功后,会在 'target' 目录下生成 'mcp-server-weather-0.0.1-SNAPSHOT.jar' 文件(版本号可能略有不同)。

服务器配置

对于 MCP 客户端(例如 Claude),需要配置 MCP 服务器的启动命令和参数。以下是 mcp-server-weather 的配置信息示例:

{
  "mcpServers": {
    "mcp-server-weather": {
      "command": "java",
      "args": [
        "-Dspring.ai.mcp.server.stdio=true",
        "-jar",
        "你的jar包路径/mcp-server-weather-0.0.1-SNAPSHOT.jar",  // 请替换为你的 jar 包实际路径
        "--weather.api.api-key=YOUR API KEY" // 请替换为你申请的和风天气 API Key
      ]
    }
  }
}

参数说明:

  • 'command': 启动服务器的命令,这里使用 'java'。
  • 'args': 启动参数列表,包括:
    • '-Dspring.ai.mcp.server.stdio=true': 设置 Spring AI MCP 服务器使用 Stdio 传输协议。
    • '-jar 你的jar包路径/mcp-server-weather-0.0.1-SNAPSHOT.jar': 指定要运行的 JAR 包路径,请替换为实际的 JAR 包路径
    • '--weather.api.api-key=YOUR API KEY': 设置和风天气 API Key,请替换为你申请的 API Key

基本使用方法

  1. 启动 MCP Server: 根据上述服务器配置,在 MCP 客户端中配置并启动 'mcp-server-weather'。
  2. 在 LLM 中使用工具: 在与 LLM 的对话中,可以使用自然语言指令要求查询天气信息。例如,在 Claude 中,你可以提问: "今天北京天气怎么样?" 或 "查询一下上海现在的天气状况"。
  3. LLM 调用工具获取天气: 当 LLM 理解到需要查询天气信息时,会通过 MCP 协议调用 'mcp-server-weather' 提供的 'getWeather' 工具,并将城市名称作为参数传递给服务器。
  4. 服务器返回天气信息: 'mcp-server-weather' 服务端接收到请求后,会调用和风天气 API 获取指定城市的天气数据,并将结果以 JSON-RPC 响应的格式返回给 LLM 客户端。
  5. LLM 回答用户: LLM 客户端接收到天气信息后,会根据返回的数据生成自然语言的回复,呈现给用户。

注意:

  • 城市名称需要转换为汉语拼音,例如 "北京" 转换为 "beijing"。
  • 首次使用前请务必配置正确的和风天气 API Key。
  • 确保 MCP 客户端已正确配置并能与 MCP 服务器建立连接。

信息

分类

网页与API