About Qweather1
Qweather1 is an MCP server that connects MCP clients to the QWeather API for current conditions, forecasts, alerts, air quality, and weather indices. It supports JWT and legacy API Key authentication, along with a configurable API base URL.
Key features
- 01Current weather queries
- 02Forecasts from 3 to 30 days
- 03Hourly and minute-level forecasts
- 04Weather alerts and indices
- 05Current and forecast air quality
- 06JWT and API Key authentication
Use cases
- 01Check current conditions for a location
- 02Review forecasts across multiple time spans
- 03Get precipitation timing and weather alerts
- 04Check air quality and health guidance
MCP support
The server exposes QWeather API capabilities to MCP clients through tools for weather, forecasts, alerts, indices, and air quality.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y qweather-mcpQWEATHER_API_BASESecretYour qweather api hostQWEATHER_API_KEYSecretYour qweather api keyLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
9Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| cityName | string | Yes | Name of the city to look up weather for |
Details
From the project READMEqweather-mcp
English | 简体中文
MCP server for QWeather API, providing comprehensive weather information query capabilities through Model Context Protocol (MCP).
✨ Features
- 🌤️ Real-time weather queries
- 📅 Multi-day weather forecasts (3/7/10/15/30 days)
- 🔐 JWT (EdDSA/Ed25519) and legacy API Key authentication
- 🔌 Custom API base URL support
- 🛠️ Complete tool integration
📦 Installation
Via Smithery
Recommended: Install automatically for Claude Desktop using Smithery:
npx -y @smithery/cli install @overstarry/qweather-mcp --client claude
Manual Configuration
- First, get your credentials from the QWeather Console.
- Start the server:
# stdio server
npx -y qweather-mcp
- Configure environment variables (pick one of the two auth modes below).
🔐 JWT Authentication (recommended)
QWeather has announced that API Key authentication will be deprecated in 2027 and recommends migrating to JWT (EdDSA + Ed25519). Generate an Ed25519 key pair, upload the public key to the QWeather console, and configure:
QWEATHER_API_BASE=https://<your-host>.qweatherapi.com
QWEATHER_PROJECT_ID=<project-id>
QWEATHER_KEY_ID=<credential-id>
# Either pass the PEM path…
QWEATHER_PRIVATE_KEY_PATH=/path/to/ed25519-private.pem
# …or the PEM content directly (newlines preserved)
# QWEATHER_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----"
If both QWEATHER_PRIVATE_KEY_PATH and QWEATHER_PRIVATE_KEY are provided, the path takes precedence. For QWEATHER_PRIVATE_KEY, the literal two-character sequence \n is auto-converted to real newlines, so the single-line form above works in shells, .env files, and JSON configs.
JSON config example:
{
"mcpServers": {
"qweather": {
"command": "npx",
"args": ["-y", "qweather-mcp"],
"env": {
"QWEATHER_API_BASE": "https://<your-host>.qweatherapi.com",
"QWEATHER_PROJECT_ID": "<project-id>",
"QWEATHER_KEY_ID": "<credential-id>",
"QWEATHER_PRIVATE_KEY_PATH": "/path/to/ed25519-private.pem"
}
}
}
}
JWT details: tokens are signed with alg=EdDSA, iat is back-dated 30s to tolerate clock skew, exp = iat + 900s (15 min, well under QWeather's 24h cap), and tokens are cached and reused until ~30s before expiry. See the official authentication docs.
🔑 API Key Authentication (legacy)
QWEATHER_API_BASE=https://api.qweather.com
QWEATHER_API_KEY=<your-api-key>
JSON config example:
{
"mcpServers": {
"qweather": {
"command": "npx",
"args": ["-y", "qweather-mcp"],
"env": {
"QWEATHER_API_BASE": "<your-api-url>",
"QWEATHER_API_KEY": "<your-api-key>"
}
}
}
}
Mode detection
| Env vars present | Mode |
|---|---|
Full JWT vars (QWEATHER_PROJECT_ID + QWEATHER_KEY_ID + QWEATHER_PRIVATE_KEY[_PATH]) | JWT (wins even if QWEATHER_API_KEY is also set) |
Full JWT vars + QWEATHER_API_KEY | JWT (API Key is ignored) |
Partial JWT vars + QWEATHER_API_KEY | API Key, with a startup warning to stderr |
| Partial JWT vars only | startup error |
QWEATHER_API_KEY only | API Key |
| neither | startup error |
The active mode is logged to stderr at startup, e.g. Weather MCP Server running on stdio (auth: JWT/EdDSA).
🛠️ Available Tools
get-weather-now
Get current weather information for a specified location.
get-weather-forecast
Get weather forecast information for a specified location with customizable forecast days:
- 3-day forecast
- 7-day forecast
- 10-day forecast
- 15-day forecast
- 30-day forecast
Forecast data includes:
- Temperature range (min/max)
- Day/night weather conditions
- Sunrise/sunset times
- Precipitation
- Humidity
- Wind conditions
- UV index
get-minutely-precipitation
Provides minute-by-minute precipitation forecast for the next 2 hours, including:
- Precipitation type (rain/snow)
- Precipitation amount per minute
- Precise time predictions
- Real-time forecast descriptions
get-hourly-forecast
Provides hourly weather forecasts for 24, 72, or 168 hours, including:
- Temperature changes
- Weather conditions
- Wind direction and force
- Relative humidity
- Atmospheric pressure
- Precipitation probability
- Cloud coverage
get-weather-warning
Provides real-time weather warning information, including:
- Warning issuing authority
- Warning level and type
- Detailed warning content
- Warning validity period
- Related recommendations
get-weather-indices
Provides weather life indices information, supporting various index types:
- Sports index
- Car wash index
- Dressing index
- Fishing index
- UV index
- Tourism index
- Allergy index and 16 other life indices
get-air-quality
Provides real-time air quality data, including:
- AQI index
- Air quality level
- Primary pollutants
- Health advice
- Pollutant concentrations
get-air-quality-hourly
Provides hourly air quality forecast for the next 24 hours:
- Hourly AQI predictions
- Pollutant concentration changes
- Health impact assessment
- Protection recommendations
get-air-quality-daily
Provides air quality forecast for the next 3 days:
- Daily AQI predictions
- Primary pollutant forecasts
- Air quality level changes
- Health protection advice
🤝 Contributing
Issues and improvements are welcome! Please check our contribution guidelines.
📄 License
MIT
🔗 Related Links
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.
