API & MCP
Everything a person can do on Outdoor Job Weather Window, a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://hearthweatherwindow.usefulweb.app/api/v1/calculate– run Outdoor Job Weather WindowGET https://hearthweatherwindow.usefulweb.app/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
Outdoor Job Weather Window
Checks the MET Norway forecast hour by hour against the rules of an outdoor job — temperature, humidity, wind, rain and dew point — and lists every window long enough to do it, including rain-free time afterwards for paint to cure or before mowing for the grass to dry.
| Field | Type | Default | Description |
|---|---|---|---|
place (required) | text | "52.52, 13.40" | Place (latitude, longitude). Decimal degrees such as “52.52, 13.40”, or degrees-minutes-seconds. Rounded to 0.01° (about 1 km) before the request. |
timeZone | text | "Europe/Berlin" | Time zone of the place. IANA name such as Europe/Berlin, Europe/London or America/New_York. Hours and dates are shown in this zone. |
activity | select (painting, mowing, bbq, walk) | "painting" | Activity |
days | integer | 7 | Days ahead. MET Norway forecasts about nine days ahead: hourly for the first two to three days, then in 6-hour steps. |
minTemp | number | — | Lowest temperature (°C, optional). Empty = the activity’s rule (painting 10, mowing 5, barbecue 14, walk −5). |
maxTemp | number | — | Highest temperature (°C, optional) |
maxHumidity | number | — | Highest relative humidity (%, optional) |
maxWind | number | — | Strongest wind (m/s, optional) |
minHours | integer | — | Hours needed (optional) |
Example request
Paint the fence in Berlin
curl -X POST https://hearthweatherwindow.usefulweb.app/api/v1/calculate -H 'content-type: application/json' -d '{"place":"52.52, 13.40","timeZone":"Europe/Berlin","activity":"painting","days":7}'
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://hearthweatherwindow.usefulweb.app/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
hearth_weather_window - Local stdio connector:
node src/mcp-stdio.ts --tool=hearth-weather-window
{
"mcpServers": {
"hearth-weather-window": { "type": "http", "url": "https://hearthweatherwindow.usefulweb.app/mcp" }
}
}