3.6 KiB
3.6 KiB
name, description
| name | description |
|---|---|
| google-calendar | Read, search, create, update, and delete Google Calendar events across the Family Calendar and Regensburg & more Calendar. Use when the user asks about upcoming appointments ("Was steht an?", "Termine diese Woche", "Wann ist der nächste Arzttermin?"), wants to add appointments or family events, check for scheduling conflicts, or track city events in Regensburg. |
📅 Google Calendar (Familie & Regensburg)
Full two-way Google Calendar integration for Moritz and family, managing two distinct calendars via a dedicated GCP Service Account:
- 👨👩👧 Familienkalender (
family):- Primary personal & family schedule: doctor visits, daycare/kindergarten, birthdays, visits, work trips, family outings, shared commitments.
- Default calendar for all personal appointment requests.
- 🏛️ Regensburg & mehr (
regensburg):- Local city life: Dult, Bürgerfest, concerts, theatre, local festivals, markets, exhibitions.
- Keeps the family calendar clean and uncluttered while keeping track of exciting local events.
🛠️ MCP Tools
You have access to 5 dedicated calendar tools:
-
calendar_list_events(calendar="family"|"regensburg", time_min=None, time_max=None, query=None, max_results=25):- Lists appointments within a timeframe.
time_min/time_max: ISO format (e.g.2026-09-20or2026-09-20T08:00:00). Defaults to start of today until 30 days ahead.query: Text filter to search summaries and descriptions.
-
calendar_create_event(calendar="family"|"regensburg", summary, start_time, end_time=None, description=None, location=None, all_day=False):- Adds a new appointment.
- For timed events: pass ISO datetime (e.g.
2026-09-20T14:30:00). Ifend_timeis omitted, defaults to 1 hour after start. - For all-day events: set
all_day=Trueand provide dateYYYY-MM-DD.
-
calendar_update_event(calendar="family"|"regensburg", event_id, summary=None, start_time=None, end_time=None, description=None, location=None):- Updates fields on an existing event.
-
calendar_delete_event(calendar="family"|"regensburg", event_id):- Deletes an event.
-
calendar_get_event(calendar="family"|"regensburg", event_id):- Retrieves full event metadata.
🧭 Routing & Operational Rules
1. Calendar Routing
- Default to
family: Any request like "Erinnere mich an...", "Trage Zahnarzt am Dienstag um 10 Uhr ein", "Wann haben wir diese Woche Zeit?" always targets the family calendar. - Route to
regensburg: Events concerning the city, public festivals, concerts, or cultural events in Regensburg (e.g. "Trage die Herbstdult ein", "Wann ist das Bürgerfest?") belong in the regensburg calendar.
2. Timezone & DateTime Precision
- All dates and times operate in Europe/Berlin (
CET/CEST). - Always specify concrete dates and times when confirming actions.
3. Safety & Confirmations
- Conflict awareness: When adding an appointment, check whether there is already a conflicting event at that time and politely point it out if relevant.
- Deletions require care: If deleting or overwriting an existing event, confirm the title and date clearly.
📱 Telegram Presentation Style
Format calendar overviews cleanly for mobile viewing:
📅 **Termine diese Woche (Familie)**:
• **Mo, 16.09. 09:00 - 10:00**: Kinderarzt U6 🏥
• **Mi, 18.09. Ganztägig**: Oma zu Besuch 👵
• **Fr, 20.09. 15:30 - 17:00**: Spielplatz-Treffen 🛝
🏛️ **Regensburg Highlights**:
• **Sa, 21.09. ab 18:00**: Jazz-Konzert im Thon-Dittmer-Palais 🎷