diff --git a/CLAUDE.md b/CLAUDE.md index 2351494..98c0948 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -41,6 +41,7 @@ und wird in Claude Desktop eingebunden. - v0.5.x: Listen-Management (create_list, delete_list) ✓ - v0.5.1: emoji + color in get_lists / create_list ✓ - v0.5.2: Mengenkonvention im create_task Docstring ✓ +- v0.5.3: Kategorie-Auto-Assign-Hinweis im create_task Docstring ✓ (nachgeliefert in v0.6.1) - v0.6.0: Rezept-Box (get_recipes, get_recipe, create_recipe, delete_recipe) ✓ - v0.6.1: update_recipe + Bugfix Zeilenumbrüche in create_recipe ✓ ← aktuell - v0.6.2: mpadditemtolist (Zutaten → Einkaufsliste) diff --git a/src/mcp_familywall/server.py b/src/mcp_familywall/server.py index 2839cae..c76c548 100644 --- a/src/mcp_familywall/server.py +++ b/src/mcp_familywall/server.py @@ -704,8 +704,21 @@ def create_task( "Äpfel (5x)", "Hackfleisch (500g)", "Joghurt (Erdbeere, 2x)". description: Optional longer description. category_id: Optional category metaId from get_categories - (e.g. ``taskCategory/23431854_200``). Only meaningful for - shopping lists; ignored for TODO lists. + (e.g. ``taskCategory/23431854_200``). + For shopping lists: ALWAYS call get_categories first and assign + the most fitting category to each item. Never leave category_id + empty for shopping list tasks — uncategorized items are harder + to find in the store. + Example mapping (German category names from get_categories): + + - Fleisch, Wurst, Speck, Kasseler → "Fleisch & Fisch" + - Obst, Gemüse, Kraut, Zwiebeln → "Obst & Gemüse" + - Bier, Wein, Saft, Wasser → "Getränke" + - Senf, Honig, Gewürze, Öl → "Zutaten & Gewürze" + - Brot, Brötchen → "Brot & Gebäck" + - Milch, Käse, Joghurt, Eier → "Milch & Käse" + + For TODO lists: ignored. due_date: Optional due date in ISO 8601 format (e.g. ``"2026-04-30T18:00:00"``). assignee_ids: Optional list of member IDs from get_members to assign the task (e.g. ``["23431898"]``). Empty list assigns to nobody.