otheroauth2

Google Calendar

Google Calendar is a time management tool providing scheduling features, event reminders, and integration with email and other apps for streamlined organization

Verdict

Google Calendar in Switchy lets your team schedule, query, and coordinate meetings without leaving the conversation. @mention it to check availability, create events with attendees, find open slots across calendars, or pull upcoming commitments into planning threads. Useful for anyone juggling shared schedules — PMs blocking time for sprints, support leads routing on-call shifts, or ops teams syncing across time zones. Setup requires OAuth with calendar read/write scopes; you'll grant access to all calendars in your Google account, so consider which workspace member connects it.

Common use cases

  • Check team availability before proposing meeting times
  • Block focus time across shared calendars
  • Pull this week's commitments into standup notes
  • Create recurring 1:1s with new hires
  • Find open slots for cross-timezone syncs

Integration

Vendor
Google Calendar
Category
other
Auth
OAUTH2
Tools
28
Composio slug
googlecalendar

Tools

  • Clear Calendar

    Clears a primary calendar. this operation deletes all events associated with the primary calendar of an account.

  • Create a calendar

    Creates a new, empty google calendar with the specified title (summary).

  • Create Event

    Creates an event on a google calendar, needing rfc3339 utc start/end times (end after start) and write access to the calendar. by default, adds the organizer as an attendee unless exclude organizer is set to true.

  • Delete Calendar
    destructive

    Deletes a secondary calendar. use calendars.clear for clearing all events on primary calendars.

  • Delete event
    destructive

    Deletes a specified event by `event id` from a google calendar (`calendar id`); this action is idempotent and raises a 404 error if the event is not found.

  • Find event

    Finds events in a specified google calendar using text query, time ranges (event start/end, last modification), and event types; ensure `timemin` is not chronologically after `timemax` if both are provided.

  • Find free slots

    Finds free/busy time slots in google calendars for specified calendars within a defined time range (defaults to the current day utc if `time min`/`time max` are omitted), enhancing busy intervals with event details; `time min` must precede

  • Get current date and time

    Gets the current date and time, allowing for a specific timezone offset.

  • Get Event Instances

    Returns instances of the specified recurring event.

  • Get Google Calendar

    Retrieves a specific google calendar, identified by `calendar id`, to which the authenticated user has access.

  • Insert Calendar into List

    Inserts an existing calendar into the user's calendar list.

  • List ACL Rules

    Retrieves the list of access control rules (acls) for a specified calendar, providing the necessary 'rule id' values required for updating specific acl rules.

  • List Events

    Returns events on the specified calendar.

  • List Google Calendars

    Retrieves calendars from the user's google calendar list, with options for pagination and filtering.

  • List Settings

    Returns all user settings for the authenticated user.

  • Move Event

    Moves an event to another calendar, i.e., changes an event's organizer.

  • Patch Calendar

    Partially updates (patches) an existing google calendar, modifying only the fields provided; `summary` is mandatory and cannot be an empty string, and an empty string for `description` or `location` clears them.

  • Patch Event

    Updates specified fields of an existing event in a google calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar id` and `event id` are valid and the user has write access to the

  • Query Free/Busy Information

    Returns free/busy information for a set of calendars.

  • Quick Add Event

    Parses natural language text to quickly create a basic google calendar event with its title, date, and time, suitable for simple scheduling; does not support direct attendee addition or recurring events, and `calendar id` must be valid if n

  • Remove attendee from event
    destructive

    Removes an attendee from a specified event in a google calendar; the calendar and event must exist.

  • Sync Events

    Synchronizes google calendar events, performing a full sync if no `sync token` is provided or if a 410 gone error (due to an expired token) necessitates it, otherwise performs an incremental sync for events changed since the `sync token` wa

  • Update ACL Rule

    Updates an access control rule for the specified calendar.

  • Update Calendar

    Updates metadata for a calendar.

  • Update Calendar List Entry

    Updates an existing entry on the user\'s calendar list.

  • Update Google event

    Updates an existing event by `event id` in a google calendar; this is a full put replacement, so provide all desired fields as unspecified ones may be cleared or reset.

  • Watch Events

    Watch for changes to events resources.

  • Watch Settings

    Watch for changes to settings resources.

Setup

Setup guide

  1. 11. Open your Switchy workspace and navigate to Settings > Integrations. 2. Find Google Calendar in the list and click Connect. 3. You'll be redirected to Google's OAuth consent screen — sign in with the Google account whose calendars you want to expose. 4. Google will ask you to grant 'See, edit, share, and permanently delete all the calendars you can access using Google Calendar' — this scope lets Switchy read availability, create events, and manage secondary calendars. 5. After you authorize, you'll return to Switchy and see Google Calendar marked as connected. 6. Open any Space and type '@Google Calendar get current date and time' to confirm the connection works. 7. To invoke a tool, @mention Google Calendar in a message and describe what you need — for example, '@Google Calendar find free slots tomorrow between 9am and 5pm EST' or '@Google Calendar create event titled Sprint Planning on Friday 2pm to 3pm with alice@example.com'. 8. The MCP will execute the tool and return results inline, which you can reference in follow-up prompts.

What teammates see: by default, memories from Google Calendar are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.

Works well with

Top models

Compatibility data appears once enough Spaces have used this MCP together with a given model.

How Switchy teams use it

Not enough Spaces yet to publish anonymised usage stats (we require ≥ 50 Spaces per week).

Starter prompts

Find Open Slots Tomorrow

@Google Calendar find free slots tomorrow between 9am and 6pm in US/Pacific timezone
Open in a Space →

Create Sprint Kickoff

@Google Calendar create event titled 'Sprint 12 Kickoff' on Monday at 10am for 1 hour, invite alice@example.com and bob@example.com
Open in a Space →

Check This Week's Meetings

@Google Calendar find events on my primary calendar from today through end of this week
Open in a Space →

Block Focus Time

@Google Calendar create event titled 'Focus Block' every Tuesday and Thursday 2pm to 4pm starting next week
Open in a Space →

Clear Test Calendar

@Google Calendar delete all events from the calendar with ID demo@group.calendar.google.com
Open in a Space →

Example outputs

Illustrative - representative of the model's voice and quality, not literal recordings.

Prompt

@Google Calendar find all meetings with 'budget review' in the title or description for the next two weeks

Output

Found 3 events matching 'budget review' between now and two weeks from today: (1) 'Q1 Budget Review' on Jan 15 at 2pm with Finance team, (2) 'Budget Review Prep' on Jan 18 at 10am with Sarah, and (3) 'Final Budget Review' on Jan 22 at 3pm with exec team. All events include Zoom links and are marked as confirmed. The search covered your primary calendar only.

Notes

This example uses the Find event tool with text query and time range filters. The MCP searches event titles, descriptions, and attendee fields. Results depend on which calendars you've granted read access to — secondary calendars require explicit scope. Large result sets may be truncated.

Prompt

@Google Calendar create a 30-minute standup meeting tomorrow at 9am Pacific with the engineering team, include a Google Meet link

Output

Created 'Engineering Standup' on your primary calendar for tomorrow, January 12, 2025 at 9:00am PST (17:00 UTC). Event runs until 9:30am and includes a Google Meet link (meet.google.com/abc-defg-hij). No attendees were added automatically — you'll need to invite the engineering team separately or specify email addresses in the prompt. Event ID: abc123xyz for future reference.

Notes

This demonstrates the Create Event tool, which requires RFC3339 UTC timestamps and write access to the target calendar. The MCP converts 'tomorrow at 9am Pacific' into proper UTC format. By default, only the organizer is added; attendee invitations require explicit email addresses. Meet links are auto-generated when requested.

Prompt

@Google Calendar check when I'm free for a 2-hour block this week between 1pm and 5pm, then suggest the best time based on my meeting density

Output

Checked your availability Monday through Friday, 1pm–5pm. Free blocks: Monday 1–3pm (2hrs), Wednesday 3–5pm (2hrs), Thursday 1–5pm (4hrs), Friday 1–2:30pm (1.5hrs). Based on meeting density, Thursday 2–4pm is optimal — you have no other meetings that day, minimizing context-switching. Wednesday 3–5pm is second-best but follows a 2pm call. Availability data reflects your primary calendar only.

Notes

This pairs the Find free slots tool (which returns raw busy/free intervals) with AI reasoning to recommend a time. The MCP checks only calendars you've authorized; hidden events appear as 'busy' without details. Time zone handling requires explicit offsets or defaults to UTC. Rate limits apply if checking many calendars simultaneously.

Use-case deep-dives

Client meeting scheduling for agencies

When Google Calendar MCP beats manual booking for client-facing teams

A 6-person agency books 20-30 client calls per week across three timezones. The Google Calendar MCP's Find free slots tool surfaces availability windows without toggling between tabs, and Create Event writes confirmed slots directly from Slack threads or project briefs. The 28-tool scope means you also get Find event for last-minute reschedules and Get current date and time for timezone math. This wins when your team already lives in Google Workspace and booking friction costs you follow-up lag. If you're on Microsoft 365 or need multi-calendar polling across vendors, the MCP's Google-only scope becomes a blocker. For agencies under 10 people where Google Calendar is the single source of truth, this MCP cuts booking overhead by half.

Sprint planning event automation

How product teams use this MCP to template recurring sprint rituals

A 4-person product team runs two-week sprints with six recurring ceremonies: standup, planning, review, retro, backlog grooming, and demo. The Google Calendar MCP's Create Event tool writes all six events in one prompt, using RFC3339 timestamps the AI calculates from sprint start dates. Create a calendar spins up per-sprint calendars so old rituals don't clutter the main view, and Clear Calendar wipes them after retro. This setup works when your ceremonies follow a fixed template and you want the AI to handle date math instead of copying events manually. The trade-off: if your sprint cadence shifts mid-cycle or you need cross-calendar dependencies, the MCP's single-calendar focus gets clunky. For teams under 8 people with predictable sprint rhythms, this MCP turns ceremony setup into a one-line prompt.

Support ticket response time tracking

When calendar events become your SLA audit trail

A 5-person support team tracks first-response SLA by logging ticket-open and ticket-close as calendar events, then querying Find event to measure gaps. The Google Calendar MCP writes events from ticket webhooks and pulls response-time reports without leaving the AI workspace. Get current date and time anchors the query window, and Find free slots identifies coverage gaps during peak hours. This approach wins when your ticketing system lacks native SLA reporting and your team already uses Google Calendar for shift planning. The boundary: if you're handling over 100 tickets per day, calendar events become noise and a dedicated SLA tool beats this workaround. For small support teams under 10 people where calendar is the shared context layer, this MCP turns response-time audits into a natural-language query.

Frequently asked

What can the Google Calendar MCP do in Switchy?

It gives your AI agents read-write access to Google Calendar. Agents can create events, find free slots, search calendars by text or time range, and manage secondary calendars. The MCP includes 28 tools covering everything from basic event CRUD to clearing entire primary calendars. Your team can automate scheduling workflows without leaving the Switchy workspace.

Which Google Calendar OAuth scopes does Switchy request?

Switchy requests OAuth2 scopes that allow full calendar read-write access, including creating and deleting events, managing secondary calendars, and querying free/busy data. You'll see the permission prompt when you first connect. Only the user who authenticates can grant access to their own calendars—no domain-wide delegation unless your Google Workspace admin has configured it separately.

Can the MCP schedule meetings across multiple people's calendars?

Only if those people have each connected their own Google Calendar to Switchy. The MCP operates on the authenticated user's calendars by default. To coordinate across team members, each person needs to authorize their account, or you need to share calendars explicitly in Google and reference them by calendar ID in tool calls.

How is this different from using Google Calendar's API directly?

The MCP wraps Google's Calendar API in a tool interface that AI agents understand natively. Instead of writing code to handle OAuth refresh tokens, parse RFC3339 timestamps, and manage pagination, your agents call named tools like Create Event or Find free slots. You trade raw API flexibility for zero-integration-code convenience inside Switchy.

Who on the team should connect Google Calendar to Switchy?

Whoever needs their calendar automated. If you want an agent to schedule on behalf of your sales team, each rep connects their own account. If you're the admin automating a shared team calendar, connect the Google account that owns that calendar. Calendar access follows Google's existing permission model—Switchy doesn't override it.

Data last verified 607 hours ago.Sources aggregated hourly to weekly. See docs/architecture/model-directory.md.