天气数据查询工具

一个基于Model Context Protocol(MCP)的天气数据查询工具,通过Open Meteo API和Open Geocoding API获取城市天气数据,支持本地开发和远程部署。

  • by Brian06
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Brian06/weather-mcp

使用说明

天气MCP示例

一个示例天气MCP存储库,说明了模型上下文协议的基本原理,包括工具定义、服务器设置和通过MCP接口查询天气数据。

特性

  • 获取给定城市的天气数据
  • 使用Open Meteo API和Open Geocoding API获取天气数据
  • 使用标准输入/输出(stdio)传输进行本地开发

运作原理

MCP服务器在 index.ts 文件usinf来自MCP SDK的McpServer类。它注册了一个工具,使用地理编码API获取城市的天气,以获取城市的纬度和经度,然后使用Open Meteo API获取天气数据。

然后创建一个传输,使用用于本地开发的标准输入/输出(stdio)传输和用于远程部署的HTTP传输与服务器通信。AI代理将使用这些信息向用户发送更好的响应。

如何测试

MCP检查员

使用 https://modelcontextprotocol.io/docs/tools/inspector#mcp-inspector 您可以在本地测试MCP服务器。

跑 npx -y @modelcontextprotocol/inspector npx -y tsx index.ts 启动MCP服务器,然后您可以使用MCP检查器测试该工具。

npx -y @modelcontextprotocol/inspector 启动MCP检查器 npx -y tsx index.ts 是如何运行文件。

克劳德代码

  • 转到克劳德代码设置
  • 开发者
  • 编辑配置
    • 打开配置文件“claude_desktop_config.json”
{
  "mcpServers": {
    "weatherMCP": {
      "command": "npx",
      "args": [
        "-y",
        "tsx",
        "<path to your MCP server file>"
      ]
    }
  }
}

光标

  • 转到光标设置
  • 转到“工具和MCP”部分
  • 点击“添加自定义MCP”按钮
  • 将以下内容粘贴到与mcp服务器相关的mcp.json文件中:
{
  "mcpServers": {
    "weatherMCP": {
      "command": "npx",
      "args": [
        "-y",
        "tsx",
        "<path to your MCP server file>"
      ]
    }
  }
}