天气数据服务器

一个基于Model Context Protocol (MCP)的服务器,提供实时天气数据和预报,适用于位置服务和开发效率工具集成。

  • by BugMentor
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 BugMentor/mcp-server-weather

使用说明

🌤️ MCP气象服务器

模型上下文协议(MCP)服务器,使用 OpenMeteo API 的.

该服务器允许LLM(如克劳德)使用纬度和经度获取地球上任何位置的准确天气信息。

✨ 特性

  • 当前天气: 获取实时温度、风速、风向和大气条件。
  • 预测: 获取长达16天的详细小时天气预报(可定制)。
  • 不需要API密钥: 使用免费的OpenMeteo API。
  • 使用Python构建: 轻便快速,使用 uv.

🛠️ 工具

get_current_weather

获取特定位置的当前天气状况。

  • 论据:
    • latitude (float):位置的纬度。
    • longitude (float):位置的经度。
  • 退货: 包含温度、风、云量等的JSON字符串。

get_forecast

获取每小时的天气预报。

  • 论据:
    • latitude (float):位置的纬度。
    • longitude (float):位置的经度。
    • days (int,可选):要预测的天数(1-16)。默认为3。
  • 退货: JSON字符串,包含每小时的温度、降水概率和风速。

🚀 安装

先决条件

  • Python 3.10+
  • 紫外线 (建议用于依赖关系管理)

设置

  1. 克隆存储库:

    git clone https://github.com/BugMentor/mcp-server-weather.git
    cd mcp-server-weather
    
  2. 创建并激活虚拟环境:

    • Windows(PowerShell):
      uv venv
      .venv\Scripts\activate
      
    • Mac/Linux:
      uv venv
      source .venv/bin/activate
      
  3. 安装依赖项:

    uv pip install mcp httpx
    

💻 用法

本地运行(MCP检查器)

您可以使用MCP检查器交互式地测试这些工具。

mcp dev server.py

这将启动一个本地服务器并打开一个web界面,您可以在其中手动检查和执行工具。

连接到克劳德桌面

要将此服务器与克劳德桌面应用程序一起使用:

  1. 打开或创建您的Claude配置文件:
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  • 雨衣: ~/Library/Application Support/Claude/claude_desktop_config.json
  1. 添加以下配置(更新项目的路径):
{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\Users\\matias.magni2\\Documents\\dev\\mine\\mcp-server-weather",
        "run",
        "server.py"
      ]
    }
  }
}

  1. 重新启动克劳德桌面。现在你应该看到🔌 表示天气工具已连接的图标。

📝 示例提示

连接到Claude后,您可以提出以下问题:

  • “伦敦现在的天气怎么样?”
  • “明天我在特隆赫姆需要雨伞吗?”
  • “比较门多萨和布宜诺斯艾利斯未来3天的预测。”

📄 许可证

麻省理工学院