{"ok":true,"site":{"host":"wamichae1.github.io","url":"https://wamichae1.github.io/Tempo/","type":"live","desc":"Tempo","tools":[{"name":"tempo_list_calendars","kind":"answer","impl":"imperative","description":"List the user's calendars in Tempo with id, name, color, visibility, and event count.","title":"List calendars","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_list_events","kind":"answer","impl":"imperative","description":"List events between two dates (recurring events are expanded into occurrences). Optionally filter by calendar or search text.","title":"List events in range","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"start":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"end":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"calendarId":{"type":"string"},"query":{"type":"string","description":"Case-insensitive substring match on title/description/location."}},"required":["start","end"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_get_event","kind":"answer","impl":"imperative","description":"Get full details for a single event by id.","title":"Get event","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"eventId":{"type":"string"}},"required":["eventId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_find_conflicts","kind":"answer","impl":"imperative","description":"Find overlapping timed events between two dates. All-day events are ignored.","title":"Find scheduling conflicts","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"start":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"end":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"calendarId":{"type":"string"}},"required":["start","end"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_create_event","kind":"act","impl":"imperative","description":"Create a new calendar event, optionally recurring. Times are ISO date-times in the user's local timezone.","title":"Create event","inputSchema":{"type":"object","properties":{"title":{"type":"string"},"start":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"end":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"calendarId":{"type":"string","description":"Defaults to the first visible calendar."},"isAllDay":{"type":"boolean"},"description":{"type":"string"},"location":{"type":"string"},"recurrence":{"type":"object","description":"RFC 5545-style recurrence rule (subset).","properties":{"freq":{"type":"string","enum":["daily","weekly","monthly"]},"interval":{"type":"integer","minimum":1},"byWeekDays":{"type":"array","items":{"type":"integer","minimum":0,"maximum":6},"description":"Weekdays (0=Sunday..6=Saturday), weekly rules only."},"until":{"type":"string","description":"Inclusive end date, yyyy-mm-dd."},"count":{"type":"integer","minimum":1}},"required":["freq"]}},"required":["title","start","end"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_update_event","kind":"act","impl":"imperative","description":"Update fields of an existing event. For recurring events the whole series is updated (per-occurrence edits are not supported).","title":"Update event","inputSchema":{"type":"object","properties":{"eventId":{"type":"string","description":"Base event id. Updates apply to the whole series for recurring events."},"patch":{"type":"object","properties":{"title":{"type":"string"},"start":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"end":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"description":{"type":"string"},"location":{"type":"string"},"calendarId":{"type":"string"},"isAllDay":{"type":"boolean"},"recurrence":{"type":"object","description":"RFC 5545-style recurrence rule (subset).","properties":{"freq":{"type":"string","enum":["daily","weekly","monthly"]},"interval":{"type":"integer","minimum":1},"byWeekDays":{"type":"array","items":{"type":"integer","minimum":0,"maximum":6},"description":"Weekdays (0=Sunday..6=Saturday), weekly rules only."},"until":{"type":"string","description":"Inclusive end date, yyyy-mm-dd."},"count":{"type":"integer","minimum":1}},"required":["freq"]}}}},"required":["eventId","patch"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_move_event","kind":"act","impl":"imperative","description":"Move an event to a new start/end time.","title":"Move event","inputSchema":{"type":"object","properties":{"eventId":{"type":"string"},"start":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"},"end":{"type":"string","format":"date-time","description":"ISO 8601 date-time, e.g. 2026-09-02T14:00:00"}},"required":["eventId","start","end"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_duplicate_event","kind":"act","impl":"imperative","description":"Duplicate an event, optionally at a new start time (duration preserved).","title":"Duplicate event","inputSchema":{"type":"object","properties":{"eventId":{"type":"string"},"newStart":{"type":"string","format":"date-time","description":"Optional new start time; duration is preserved."}},"required":["eventId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_delete_event","kind":"transact","impl":"imperative","description":"Delete an event. For recurring events the entire series is deleted. Requires user confirmation.","title":"Delete event","inputSchema":{"type":"object","properties":{"eventId":{"type":"string","description":"Deletes the whole series for recurring events."}},"required":["eventId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_create_calendar","kind":"act","impl":"imperative","description":"Create a new calendar with a name and optional color.","title":"Create calendar","inputSchema":{"type":"object","properties":{"name":{"type":"string"},"color":{"type":"string","enum":["red","orange","yellow","green","blue","purple","gray"]}},"required":["name"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_update_calendar","kind":"act","impl":"imperative","description":"Rename, recolor, or show/hide a calendar.","title":"Update calendar","inputSchema":{"type":"object","properties":{"calendarId":{"type":"string"},"name":{"type":"string"},"color":{"type":"string","enum":["red","orange","yellow","green","blue","purple","gray"]},"visible":{"type":"boolean"}},"required":["calendarId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_delete_calendar","kind":"transact","impl":"imperative","description":"Delete a calendar and all of its events. Requires user confirmation.","title":"Delete calendar","inputSchema":{"type":"object","properties":{"calendarId":{"type":"string","description":"Deletes the calendar and all of its events."}},"required":["calendarId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_undo","kind":"act","impl":"imperative","description":"Undo the most recent calendar change.","title":"Undo","inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"},{"name":"tempo_redo","kind":"act","impl":"imperative","description":"Redo the most recently undone calendar change.","title":"Redo","inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/Tempo/"}],"category":"Productivity & Business","favicon":"/favicons/wamichae1.github.io.svg","apiSurface":"spec","toolCount":14}}