German Weather Station Daily Forecast (DWD)
dwdwarn/station-daily-forecast
The multi-day forecast for one Deutscher Wetterdienst (DWD) weather station in Germany: daily minimum and maximum temperature, precipitation, wind speed, gusts and direction, sunshine, sunrise and sunset, moonrise and moonset, moon phase and weather icon codes, one entry per day. Values are scaled integers exactly as the DWD app backend sends them (temperatures in tenths of a degree Celsius, wind speeds in tenths of km/h, times as epoch milliseconds). An unknown station id returns an empty list. Deutscher Wetterdienst data (CC BY 4.0) as served by Eden Engine, not an official DWD product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.
Data source
Source: Deutscher Wetterdienst (DWD), licence CC BY 4.0 (dwd.de/DE/service/rechtliche_hinweise). Served by Eden Engine; not an official Deutscher Wetterdienst product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "dwdwarn/station-daily-forecast" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "dwdwarn/station-daily-forecast" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "dwdwarn/station-daily-forecast", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "dwdwarn/station-daily-forecast", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 20, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"station_id"
],
"properties": {
"station_id": {
"type": "string",
"pattern": "^[A-Za-z0-9-]{1,16}$",
"description": "A DWD station id, for example 10865. Letters, digits and hyphens only. An id the service does not know returns an empty list for it, not an error."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"description": "An object keyed by the station id that was requested. Its value is the list of forecast days, empty when the station id is unknown.",
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"required": [
"dayDate"
],
"properties": {
"icon": {
"type": [
"integer",
"null"
],
"description": "Weather icon code as sent."
},
"icon1": {
"type": [
"integer",
"null"
],
"description": "First-half-of-day icon code as sent."
},
"icon2": {
"type": [
"integer",
"null"
],
"description": "Second-half-of-day icon code as sent."
},
"sunset": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"dayDate": {
"type": "string",
"description": "Forecast day, YYYY-MM-DD."
},
"moonset": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"sunrise": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"moonrise": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"sunshine": {
"type": [
"integer",
"null"
],
"description": "Sunshine as sent by the DWD, a scaled integer; unit not documented upstream."
},
"windGust": {
"type": [
"integer",
"null"
],
"description": "Wind gust speed, same scaling as windSpeed."
},
"moonPhase": {
"type": [
"integer",
"null"
],
"description": "Moon phase code as sent."
},
"stationId": {
"type": [
"string",
"null"
],
"description": "Station id; null in the captured responses."
},
"windSpeed": {
"type": [
"integer",
"null"
],
"description": "Wind speed in tenths of km/h."
},
"precipitation": {
"type": [
"integer",
"null"
],
"description": "Precipitation as sent by the DWD, a scaled integer; unit not documented upstream."
},
"windDirection": {
"type": [
"integer",
"null"
],
"description": "Wind direction as sent by the DWD, a scaled integer."
},
"temperatureMax": {
"type": [
"integer",
"null"
],
"description": "Maximum temperature in tenths of a degree Celsius."
},
"temperatureMin": {
"type": [
"integer",
"null"
],
"description": "Minimum temperature in tenths of a degree Celsius (59 is 5.9 C)."
},
"sunsetOnThisDay": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"moonsetOnThisDay": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds; null when the moon does not set on this day."
},
"sunriseOnThisDay": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
},
"moonriseOnThisDay": {
"type": [
"integer",
"null"
],
"description": "Epoch milliseconds."
}
},
"additionalProperties": true
},
"description": "One entry per forecast day, in date order."
}
}