diff --git a/docs/modules/market_management/konzepte/market_management_hermes_mcp_api.md b/docs/modules/market_management/konzepte/market_management_hermes_mcp_api.md index b973739..6e429d4 100644 --- a/docs/modules/market_management/konzepte/market_management_hermes_mcp_api.md +++ b/docs/modules/market_management/konzepte/market_management_hermes_mcp_api.md @@ -68,7 +68,13 @@ Das Ergebnis steht bei `tools/call` als JSON im Textinhalt des ersten ### Marktdefinitionen - `market_management.search_markets` - - optional: `search`, `include_archived`, `limit` + - optional: `search`, `category_id`, `status`, `place`, + `municipality_reference_id`, `date_from`, `date_to`, `include_archived`, + `sort`, `sort_direction`, `limit`, `offset` +- `market_management.search_occurrences` + - optional: `market_definition_id`, `status`, `place`, `address`, + `municipality_reference_id`, `date_from`, `date_to`, `include_archived`, + `limit`, `offset` - `market_management.get_market` - erforderlich: `market_id` - optional: `include_archived` @@ -89,10 +95,15 @@ Das Ergebnis steht bei `tools/call` als JSON im Textinhalt des ersten Hermes darf Kategorien lesen und bei einem Markt referenzieren, aber keine Kategorien anlegen oder ändern. +- `market_management.list_reference_data` + - liefert Kategorien, Kantone und aktive Gemeinden +- `market_management.get_overview` + - liefert serverseitig gefilterte Markt- und Durchführungslisten + ### Durchführungen - `market_management.create_occurrence` - - erforderlich: `market_definition_id` + - erforderlich: `market_definition_id`, `days` mit mindestens einem Eintrag - initialer Status: `open` - weitere Durchführungsfelder sind optional und werden typisiert validiert - `market_management.get_occurrence` @@ -141,9 +152,13 @@ Weitere mögliche Tagesfelder sind `stand_start_time`, `stand_end_time`, - `market_management.set_organizer` - erforderlich: `occurrence_id`, `organization_contact_id`, `contact_person_id` +- `market_management.delete_organizer` + - erforderlich: `occurrence_id` - `market_management.create_cost_item` - erforderlich: `occurrence_id`, `cost_type`, `gross_amount`, `tax_status` - `tax_status`: `tax_free` oder `taxable` +- `market_management.update_cost_item` + - erforderlich: `cost_item_id` - `market_management.delete_cost_item` - erforderlich: `cost_item_id` @@ -158,7 +173,8 @@ Weitere mögliche Tagesfelder sind `stand_start_time`, `stand_end_time`, "name": "market_management.create_market", "arguments": { "name": "Beispielmarkt Hermes Test", - "category_id": 1 + "category_id": 1, + "idempotency_key": "hermes-create-market-001" } } } @@ -177,7 +193,15 @@ Weitere mögliche Tagesfelder sind `stand_start_time`, `stand_end_time`, "market_definition_id": 1, "status": "open", "place": "Beispielort", - "registration_deadline": "2026-10-01" + "registration_deadline": "2026-10-01", + "idempotency_key": "hermes-create-occurrence-001", + "days": [ + { + "date": "2026-11-21", + "stand_start_time": "09:00", + "stand_end_time": "18:00" + } + ] } } } @@ -208,6 +232,10 @@ Weitere mögliche Tagesfelder sind `stand_start_time`, `stand_end_time`, den OTC-Verkäufen abgeleitet. - Markt und Durchführung werden unabhängig archiviert. - Alle Schreibvorgänge werden serverseitig validiert. +- Jeder schreibende MCP-Aufruf benötigt `idempotency_key`; optional kann + `client_id` mitgegeben werden. Wiederholungen liefern dasselbe Ergebnis. +- Umsatz- und Artikelmengen aus OTC-Verkäufen sind erst verfügbar, sobald die + separate OTC-Schnittstelle die Zuordnung zum Durchführungstag bereitstellt. ## Fehler