feat(meal-planner): add get_meal_plan read-only tool (v0.10.0)

- Implement get_meal_plan() tool for accessing Family Wall meal planner
- Parameters: date_from, date_to (ISO 8601 format)
- Returns raw JSON for initial verification via FW_DEBUG=1
- Response structure to be verified in first deployment
- Add Meal Planner API section to SPEC.md documenting mplistinterval and other endpoints
- Update version to 0.10.0 in __init__.py and pyproject.toml
- Update README.md and CLAUDE.md with tool info and roadmap

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-04-17 11:03:48 +02:00
parent 935a159331
commit 500ad278a4
6 changed files with 75 additions and 6 deletions
+42
View File
@@ -664,6 +664,48 @@ Löscht einen Kreis und alle zugehörigen Inhalte (Listen, Tasks, Rezepte, Wall-
**Verifiziert am:** 2026-04-16 via FW_DEBUG=1 (family/23447371 erfolgreich gelöscht)
## Meal Planner API
Premium-Feature. Endpoints extrahiert aus JS-Bundle `startupmodule.js?vfw=2026-04-03T140539`.
Browser-Analyse blockiert durch Service Worker. Response-Struktur wird nach erstem Deploy
mit `FW_DEBUG=1` verifiziert.
### `mplistinterval` Essensplan für Datumsbereich abrufen
POST https://api.familywall.com/api/mplistinterval
**Body-Parameter:**
| Parameter | Pflicht | Wert |
|---|---|---|
| `from` | ja | Start-Datum (ISO 8601, Format TBD: `"2026-04-13"` oder `"2026-04-13T00:00:00"`) |
| `to` | ja | End-Datum (ISO 8601, Format TBD) |
**Response-Struktur:** TBD — Tool liefert Raw JSON zur Verifizierung.
**Mahlzeiten-Typen:**
- `BREAKFAST` Frühstück
- `LUNCH` Mittagessen
- `SNACK` Snack
- `DINNER` Abendessen
**Mahlzeiten-Objekt:** MetaId-Format `dish/<id>` (Präfix "dish/").
**Verifiziert am:** 2026-04-17 (Endpoint-Name aus JS-Bundle, Response TBD)
### Weitere Meal Planner Endpoints (nicht implementiert)
| Endpoint | Parameter | Bedeutung |
|---|---|---|
| `mpcreate` | `name`, `date`, `type`, `clientOpId` | Mahlzeit mit freiem Text erstellen |
| `mpcreateByRecipeId` | `recipeId`, `date`, `type`, `clientOpId` | Mahlzeit aus Rezept erstellen |
| `mpmealput` | Mahlzeiten-Objekt (encoded) | Mahlzeit aktualisieren |
| `mpmove` | `metaId`, `date`, `type`, `clientOpId` | Mahlzeit zu anderem Datum/Typ verschieben |
| `mpdelete` | `metaId` | Mahlzeit löschen |
| `mpsettings` | | Einstellungen lesen |
**Quelle:** JS-Bundle-Analyse (startupmodule.js).
**Status:** Endpunkte bekannt, Response-Struktur unbekannt.
### Recipe Categories API Details
Recipe categories are managed via `mprecipeput` endpoint. Each recipe can have zero or more