使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 的天气服务器示例,旨在演示如何使用 MCP 框架构建提供工具服务的应用后端。该服务器提供了两个工具:'get-alerts' 用于获取美国州的天气警报,'get-forecast' 用于获取指定经纬度的天气预报。

主要功能点

  • 提供 'get-alerts' 工具:根据美国州代码查询天气警报。
  • 提供 'get-forecast' 工具:根据经纬度查询天气预报。
  • 使用 Stdio 传输协议与 MCP 客户端通信。

安装步骤

TypeScript 服务器

  1. 确保已安装 Node.js 和 npm。
  2. 导航到 'weather-server-typescript/weather' 目录。
  3. 运行 'npm install' 安装依赖。
  4. 运行 'npm run build' 构建项目。

Python 服务器

  1. 确保已安装 Python 和 pip。
  2. 导航到 'weather-server-python' 目录。
  3. 运行 'pip install mcp httpx' 安装依赖。

服务器配置

MCP 客户端需要配置以下 JSON 信息才能连接到天气服务器。请根据您选择的服务器类型(TypeScript 或 Python)进行配置:

TypeScript 服务器配置 (JSON)

{
  "serverName": "weather",
  "command": "node",
  "args": ["path/to/weather-server-typescript/weather/build/index.js"]
}

参数注释:

  • 'serverName': MCP 服务器的名称,此处为 "weather"。
  • 'command': 启动服务器的命令,对于 TypeScript 服务器,使用 'node'。
  • 'args': 命令参数,指向服务器脚本的路径。请将 'path/to/weather-server-typescript/weather/build/index.js' 替换为 'weather-server-typescript/weather/build/index.js' 文件在您本地文件系统中的实际绝对路径。

Python 服务器配置 (JSON)

{
  "serverName": "weather",
  "command": "python",
  "args": ["path/to/weather-server-python/weather.py"]
}

参数注释:

  • 'serverName': MCP 服务器的名称,此处为 "weather"。
  • 'command': 启动服务器的命令,对于 Python 服务器,使用 'python'。
  • 'args': 命令参数,指向服务器脚本的路径。请将 'path/to/weather-server-python/weather.py' 替换为 'weather-server-python/weather.py' 文件在您本地文件系统中的实际绝对路径。

基本使用方法

  1. 启动 MCP 客户端,并根据上述配置信息配置您选择的天气服务器。
  2. 客户端可以使用 'get-alerts' 工具查询指定州的天气警报。例如,要查询加州 (CA) 的天气警报,可以向服务器发送工具调用请求:
    {
      "tool_call": {
        "name": "get-alerts",
        "arguments": {
          "state": "CA"
        }
      }
    }
  3. 客户端可以使用 'get-forecast' 工具查询指定经纬度的天气预报。例如,要查询纽约市 (latitude: 40.7128, longitude: -74.0060) 的天气预报,可以发送以下工具调用请求:
    {
      "tool_call": {
        "name": "get-forecast",
        "arguments": {
          "latitude": 40.7128,
          "longitude": -74.0060
        }
      }
    }
  4. 服务器将返回 JSON-RPC 响应,其中包含工具执行结果,例如天气警报信息或天气预报信息。

信息

分类

网页与API