API & MCP
Everything a person can do on Weather-Aware Packing List, a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://hearthpackinglist.usefulweb.site/api/v1/calculate– run Weather-Aware Packing ListGET https://hearthpackinglist.usefulweb.site/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
Weather-Aware Packing List
Builds a packing list with quantities from clear rules: one set of underwear and socks per day until the next wash, layers and rain gear from the expected temperatures and rainy days, plus the extras for beach, hiking, business, winter sports, camping, babies, children and hand-luggage flights. The weather comes from the MET Norway forecast when the trip is near, from 1991–2020 climate normals for Germany and the United States, or from your own numbers.
| Field | Type | Default | Description |
|---|---|---|---|
place | text | — | Destination (latitude, longitude; optional). Needed for the forecast and climate normals. Rounded to 0.01° (about 1 km) before a request. |
timeZone | text | "Europe/Berlin" | Time zone of the destination. IANA name such as Europe/Rome. Used to group forecast hours into local days. |
startDate (required) | date | "2027-04-12" | First day of the trip |
nights | integer | 6 | Nights |
source | select (auto, forecast, climate, manual) | "auto" | Weather |
tMin | number | — | Lowest temperature you expect (°C, for “my own temperatures”) |
tMax | number | — | Highest temperature you expect (°C) |
rainyDays | integer | — | Rainy days you expect (optional) |
adults | integer | 2 | Adults and teenagers |
children | integer | 0 | Children |
infants | integer | 0 | Babies and toddlers in nappies |
laundryEvery | integer | 0 | Wash clothes every … days (0 = no laundry) |
styles | multiselect (city, beach, hiking, business, winter-sports, camping) | ["city"] | Kind of trip |
transport | select (plane-carry-on, plane-checked, car, train) | "plane-checked" | Travelling by |
extras | list | — | Your own items (optional). One item per line, for example “Camera”. |
Example request
Munich in April, 6 nights, two adults: climate normals (DWD)
curl -X POST https://hearthpackinglist.usefulweb.site/api/v1/calculate -H 'content-type: application/json' -d '{"place":"48.14, 11.58","timeZone":"Europe/Berlin","startDate":"2027-04-12","nights":6,"source":"climate","adults":2,"styles":["city"],"transport":"train"}'
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://hearthpackinglist.usefulweb.site/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
hearth_packing_list - Local stdio connector:
node src/mcp-stdio.ts --tool=hearth-packing-list
{
"mcpServers": {
"hearth-packing-list": { "type": "http", "url": "https://hearthpackinglist.usefulweb.site/mcp" }
}
}