a qweather mcp server
Valid MCP server (2 strong, 4 medium validity signals). 2 known CVEs in dependencies (0 critical, 2 high severity) Imported from the Official MCP Registry. 1 finding(s) downgraded by scanner intelligence.
3 files analyzed · 3 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: QWEATHER_API_BASE
Environment variable: QWEATHER_API_KEY
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-overstarry-qweather-mcp": {
"env": {
"QWEATHER_API_KEY": "your-qweather-api-key-here",
"QWEATHER_API_BASE": "your-qweather-api-base-here"
},
"args": [
"-y",
"qweather-mcp"
],
"command": "npx"
}
}
}From the project's GitHub README.
English | 简体中文
MCP server for QWeather API, providing comprehensive weather information query capabilities through Model Context Protocol (MCP).
Recommended: Install automatically for Claude Desktop using Smithery:
npx -y @smithery/cli install @overstarry/qweather-mcp --client claude
# stdio server
npx -y qweather-mcp
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.
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>"
}
}
}
}
| 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).
Get current weather information for a specified location.
Get weather forecast information for a specified location with customizable forecast days:
Forecast data includes:
Provides minute-by-minute precipitation forecast for the next 2 hours, including:
Provides hourly weather forecasts for 24, 72, or 168 hours, including:
Provides real-time weather warning information, including:
Provides weather life indices information, supporting various index types:
Provides real-time air quality data, including:
Provides hourly air quality forecast for the next 24 hours:
Provides air quality forecast for the next 3 days:
Issues and improvements are welcome! Please check our contribution guidelines.
MIT
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.