Google Calendar
Arcade toolkit · docs.arcade.dev
The Google Calendar toolkit connects Arcade to Google Calendar, enabling LLMs to read, create, update, and manage calendar events and availability on behalf of authenticated users.
Capabilities
- Event CRUD: Create events (including recurring series via
recurrence), retrieve a single event by ID (including cancelled/deleted occurrences and series recurrence rules), list events within a datetime window with precise boundary semantics, update any subset of event fields or move an event to another calendar, and delete events. - Availability & scheduling: Find time slots when all specified participants are free within a given date range and time boundaries.
- RSVP / response management: Accept, decline, or tentatively accept meeting invitations on the authenticated user's behalf.
- Calendar discovery: List all calendars accessible to the authenticated user.
- User identity: Retrieve the authenticated user's profile, email, and Google Calendar access permissions.
Tools9
GoogleCalendar_CreateEvent
Create a new event/meeting/sync/meetup in the specified calendar. Pass recurrence to create a repeating event.
GoogleCalendar_DeleteEvent
Delete an event from Google Calendar.
GoogleCalendar_FindTimeSlotsWhenEveryoneIsFree
Provide time slots when everyone is free within a given date range and time boundaries.
GoogleCalendar_GetEvent
Get one Google Calendar event by its id. When the event is one occurrence of a recurring series, the series' repeat rule and first start are returned too, so read them here before changing or ending a series. The rule counts from series_start, not from this occurrence's start. Use this instead of listing a time window whenever the event id is already known. Deleted events and deleted occurrences are still returned, with a cancelled status.
GoogleCalendar_ListCalendars
List all calendars accessible by the user.
GoogleCalendar_ListEvents
List events from the specified calendar within the given datetime range. min_end_datetime serves as the lower bound (exclusive) for an event's end time. max_start_datetime serves as the upper bound (exclusive) for an event's start time. For example, with min_end_datetime at 09:00 on one day and max_start_datetime at 17:00 the next day, the function returns events that: 1. End after 09:00 on the first day (exclusive) 2. Start before 17:00 on the second day (exclusive) So an event from 08:00 to 10:00 on the first day is included, but an event starting at 17:00 on the second day is not.
GoogleCalendar_RespondToEvent
Accept, decline, or tentatively accept (RSVP to) a meeting invitation on the authenticated user's behalf. Sets the user's responseStatus for an event they were invited to.
GoogleCalendar_UpdateEvent
Update an existing event in the specified calendar with the provided details. Only the provided fields will be updated; others will remain unchanged. Pass updated_calendar_id to move the event to another calendar. An event's details can only be changed by the event's organizer, or by a guest when the organizer has enabled guest editing for that event. updated_start_datetime and updated_end_datetime are independent and can be provided separately, except that all-day dates must be provided for both.
GoogleCalendar_WhoAmI
Get comprehensive user profile and Google Calendar environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Calendar access permissions, and other important profile details from Google services.