天气查询服务器

一个基于Model Context Protocol (MCP)的和风天气API服务,提供实时天气、天气预报、空气质量和天气预警查询功能。

  • by haizhixin
  • 本地部署
  • 更新于
在 GitHub 查看 haizhixin2021/qweather-mcp-server

使用说明

和风天气 MCP Server

英语| 中文

用于QWeather(和API的模型上下文协议(MCP)服务器,使人工智能助手能够查询实时天气、预报、空气质量和天气警报。

✨ 特性

  • 🔍 城市搜索 -搜索城市并获取天气查询的位置ID
  • 🌤️ 实时天气 -获取当前天气状况,包括温度、湿度、风等
  • 📊 天气预报 -获取3天或7天天气预报
  • 🌫️ 空气质量 -获取实时空气质量指数、PM2.5、PM10和其他空气质量指标
  • 🚨 天气警告 -获取天气灾害预警(台风、暴雨、热浪等)

🚀 快速开始

1.获取API密钥

  1. 访问 QWeather开发者平台
  2. 注册并创建应用程序
  3. 从控制台获取API密钥

2.配置

将以下配置添加到MCP客户端:

{
  "mcpServers": {
    "qweather": {
      "command": "uvx",
      "args": ["qweather-mcp-server"],
      "env": {
        "QWEATHER_API_KEY": "your-api-key-here"
      }
    }
  }
}

或者使用pip安装:

pip install qweather-mcp-server

然后配置:

{
  "mcpServers": {
    "qweather": {
      "command": "python",
      "args": ["-m", "qweather_mcp"],
      "env": {
        "QWEATHER_API_KEY": "your-api-key-here"
      }
    }
  }
}

3.环境变量

变量 必填 默认 描述
QWEATHER_API_KEY ✅ 是 - 您的QWeather API密钥
QWEATHER_API_URL 没有 https://devapi.qweather.com QWeather API基础URL

自定义API端点(可选)

如果您需要使用自定义API端点(例如,用于付费计划或企业帐户),请设置 QWEATHER_API_URL:

{
  "mcpServers": {
    "qweather": {
      "command": "uvx",
      "args": ["qweather-mcp-server"],
      "env": {
        "QWEATHER_API_KEY": "your-api-key-here",
        "QWEATHER_API_URL": "https://api.qweather.com"
      }
    }
  }
}

🛠️ 可用工具

工具 说明
search_city 按名称(中文、拼音或英文)搜索城市并获取位置ID
get_current_weather 获取某个位置的实时天气
get_weather_forecast 获取3天或7天天气预报
get_air_quality 获取空气质量指数和污染物水平
get_weather_warning 获取活跃的天气灾害预警

⚠️ API弃用通知:

  • 空气质量API(/v7/air/now)将于2026年6月1日弃用
  • 天气警告API(/v7/warning/now)将于2026年10月1日弃用

此服务器同时支持旧版(v7)和新版(v1)天气警报API。为了获得最佳结果,请在查询天气警报时提供纬度和经度。

📖 用法示例

搜索城市

User: 搜索北京
AI: 找到以下城市:
1. 北京市 北京市 北京
   ID: 101010100
   坐标: 39.90498, 116.40528

获取当前天气

User: 查询北京现在的天气
AI: 🌤️ 实时天气

观测时间: 2025-04-01T14:00+08:00
温度: 18°C (体感 16°C)
天气: 晴
风向: 北风 3级 (12km/h)
湿度: 45%
气压: 1015hPa
能见度: 10km
降水量: 0mm

获取天气预报

User: 北京未来3天天气预报
AI: 📊 3天天气预报

📅 2025-04-01
   白天: 晴 22°C
   夜间: 晴 12°C
   风向: 北风 3级
   湿度: 45% 降水概率: 0%
...

获得空气质量

User: 北京空气质量怎么样
AI: 🌫️ 空气质量指数

AQI: 65 (良)
PM2.5: 45 μg/m³
PM10: 78 μg/m³
NO₂: 32 μg/m³
SO₂: 8 μg/m³
CO: 0.8 mg/m³
O₃: 89 μg/m³
主要污染物: PM2.5

获取天气预警

User: 北京有天气预警吗
AI: ✅ 当前无天气灾害预警

🔧 发展

# Clone the repository
git clone https://github.com/your-username/qweather-mcp-server.git
cd qweather-mcp-server

# Install dependencies
pip install -e .

# Set environment variables
export QWEATHER_API_KEY="your-api-key"
# Optional: custom API endpoint
# export QWEATHER_API_URL="https://api.qweather.com"

# Run the server
python src/qweather_mcp/server.py

使用MCP检查器进行调试

npx @modelcontextprotocol/inspector python src/qweather_mcp/server.py

📝 需求

  • Python>=3.10
  • MCP>=1.8.1
  • httpx>=0.27.0

📄 许可证

MIT许可证


中文说明

一个基于 Model Context Protocol (MCP) 的和风天气 API 服务,让 AI 助手能够查询实时天气、天气预报、空气质量和天气预警。

功能特性

  • 🔍 城市搜索 - 搜索城市并获取城市ID
  • 🌤️ 实时天气 - 获取当前天气状况,包括温度、湿度、风向风力等
  • 📊 天气预报 - 获取3天或7天天气预报
  • 🌫️ 空气质量 - 获取实时AQI、PM2.5、PM10等空气质量指标
  • 🚨 天气预警 - 获取台风、暴雨、高温等天气灾害预警

快速开始

  1. 前往和风天气开发平台注册并获取 API Key
  2. 在 MCP 客户端中添加配置:
{
  "mcpServers": {
    "qweather": {
      "command": "uvx",
      "args": ["qweather-mcp-server"],
      "env": {
        "QWEATHER_API_KEY": "你的API密钥"
      }
    }
  }
}

环境变量说明

变量名 必填 默认值 说明
QWEATHER_API_KEY ✅ 是 - 和风天气 API Key
QWEATHER_API_URL 否 https://devapi.qweather.com 和风天气 API 地址

自定义 API 地址(可选)

如果您使用付费版或企业版,可以自定义 API 地址:

{
  "mcpServers": {
    "qweather": {
      "command": "uvx",
      "args": ["qweather-mcp-server"],
      "env": {
        "QWEATHER_API_KEY": "你的API密钥",
        "QWEATHER_API_URL": "https://api.qweather.com"
      }
    }
  }
}

⚠️ API 弃用通知:

  • 空气质量 API (/v7/air/now) 将于 2026-06-01 弃用
  • 天气预警 API (/v7/warning/now) 将于 2026-10-01 弃用

本服务同时支持旧版 (v7) 和新版 (v1) 天气预警 API。建议在查询预警时提供经纬度坐标以使用新版 API。

支持的客户端

  • 樱桃工作室
  • 克劳德桌面
  • 光标
  • 克莱恩
  • 其他支持 MCP 协议的客户端