DWD MCP Server
Integrates with OpenStreetMap's Nominatim API to provide geocoding capabilities, allowing the server to resolve location names into coordinates for accurate weather data retrieval.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DWD MCP ServerWhat's the current weather and forecast for Berlin?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DWD MCP Server
An MCP server (Model Context Protocol) for weather data from the German Weather Service (DWD) via Bright Sky API.
Features
Current Weather (
get_current_weather) - Temperature, wind, precipitation, cloud cover, etc.Weather Forecast (
get_weather_forecast) - Hourly forecasts and daily summariesWeather Alerts (
get_weather_alerts) - Official DWD warnings (storm, thunderstorm, frost, etc.)Weather Stations (
find_weather_station) - Find nearest DWD stations
Installation
With uv (recommended)
# Clone repository
git clone https://github.com/your-username/dwd-mcp-server.git
cd dwd-mcp-server
# Install dependencies
uv sync
# Development dependencies (optional)
uv sync --extra devWith pip
pip install -e .
# With development dependencies
pip install -e ".[dev]"Usage
Start as MCP server
# With uv
uv run dwd-mcp-server start
# Or directly with Python
python -m dwd_mcp_server.cli startIntegrate with Claude Desktop
Add the following configuration to your Claude Desktop config.json:
{
"mcpServers": {
"dwd-weather": {
"command": "uv",
"args": ["--directory", "/path/to/dwd-mcp-server", "run", "dwd-mcp-server", "start"]
}
}
}Integrate with Claude Code
claude mcp add dwd-weather -- uv --directory /path/to/dwd-mcp-server run dwd-mcp-server startMCP Tools
get_current_weather
Get current weather for a location.
Parameters:
location(string, required): City name (e.g., "Aachen", "Munich") or coordinates (e.g., "50.7753,6.0839")
Example response:
{
"timestamp": "Sat, 15.02.2026 14:00",
"temperature_c": 8.2,
"feels_like_c": 5.5,
"humidity_percent": 78,
"wind_speed_kmh": 22.3,
"wind_direction": "W",
"precipitation_mm": 0.0,
"cloud_cover_percent": 75,
"condition": "cloudy",
"station_name": "Aachen-Orsbach"
}get_weather_forecast
Get weather forecast for a location.
Parameters:
location(string, required): City name or coordinatesdays(integer, optional): Number of days (1-10, default: 3)
Returns: Hourly data and daily summaries with min/max temperatures.
get_weather_alerts
Get official weather alerts.
Parameters:
location(string, optional): City name or coordinates. If omitted: all alerts for Germany.
Returns: List of active alerts with type, severity, description, and validity period.
find_weather_station
Find nearest DWD weather stations.
Parameters:
location(string, required): City name or coordinates
Returns: List of stations with name, ID, and distance.
Geocoding
The server accepts various location inputs:
Direct coordinates:
"50.7753,6.0839"or"50.7753, 6.0839"German cities:
"Aachen","Munich","Cologne"(approx. 100 cities included)Nominatim fallback: For unknown locations, OpenStreetMap/Nominatim is queried
Tests
# With uv
uv run pytest
# With pytest directly
pytestTechnology Stack
MCP Framework: mcp Python SDK (FastMCP)
HTTP Client: httpx (async)
Data Source: Bright Sky API (DWD Open Data)
Geocoding: Built-in city table + Nominatim fallback
License
MIT
Data Sources
Weather data: DWD Open Data
API: Bright Sky
Geocoding: Nominatim/OpenStreetMap
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jimimatt/dwd-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server