MissionControlHQMissionControlHQResources
ArticlesDocs
Get early access→
Integrations
Email & Productivity
  • Gmail
  • Outlook
  • Google Docs
  • Google Sheets
  • Excel
  • Notion
  • Confluence
  • Airtable
  • Todoist
  • Google Tasks
  • Canva
Communication
  • Slack
  • Microsoft Teams
  • Discord
  • WhatsApp
  • Webex
Scheduling & Meetings
  • Google Calendar
  • Zoom
  • Calendly
  • Cal.com
  • Google Meet
  • Eventbrite
Marketing & Social
  • Mailchimp
  • Google Ads
  • Facebook
  • LinkedIn
  • YouTube
  • Reddit
  • Dub
CRM & Support
  • HubSpot
  • Salesforce
  • Attio
  • Capsule CRM
  • Intercom
  • Zendesk
  • Gorgias
  • Zoho Desk
  • Gong
File Storage
  • Google Drive
  • Dropbox
  • OneDrive
  • Box
  • SharePoint
  • Google Photos
E-commerce & Payments
  • Stripe
  • Square
Finance & Time
  • Harvest
  • Zoho Books
  • Zoho Invoice
  • FreshBooks
  • Fathom
Analytics
  • Google BigQuery
Dev & Project Management
  • GitHub
  • GitLab
  • Bitbucket
  • Linear
  • Jira
  • Asana
  • ClickUp
  • Trello
  • Monday.com
  • Basecamp
  • Wrike
  • Productboard
  • Figma
  • Miro
  • Sentry
  • PagerDuty
  • Supabase
  • DigitalOcean
Resources/Integrations/Google Calendar

Scheduling & Meetings

📅 Google Calendar integration

Access levels: Read-only · Manage events · Full access · Verified July 15, 2026

PreviousWebexNextZoom

Connect Google Calendar once and every agent in your squad can work in it for you, with exactly as much access as you decide to give, and a receipt for every call it makes.

What your squad can do in Google Calendar

  • Look things up, acl get; acl list; calendar list get, and more.
  • Do real work, acl update; calendars update; create calendar; create event, and more.
  • Run it on a schedule: any of the 49 available tools below can be part of a scheduled task or a mission.

How to connect

  1. In your dashboard, open Integrations and find Google Calendar.
  2. Click Connect and pick an access level (we recommend Manage events): this is the ceiling for every agent.
  3. Sign in to Google Calendar in the window that opens and approve. You land back on the Integrations page with the account live.

You can change an account's access level any time under Manage. It applies instantly, no re-authorization. If the connection ever expires, the card shows Reconnect; one click re-authorizes the same account with the same settings.

Multiple accounts: connect as many as you need (say, yours and a client's). One is primary. Agents use it unless a mission says otherwise.

Access levels

The level you pick at connect time is enforced on our side for every agent call: an agent can never do more than the level allows, no matter what it's asked.

LevelWhat it allows
Read-onlySee calendars and events. Cannot create, edit, or delete.
Manage eventsRead and edit events. Cannot delete entire calendars.Recommended
Full accessSee, edit, share, and delete any calendar.

On top of the connection's level, every agent can be individually allowed, scoped down, or denied for this app from the Integrations page. Deny an agent and it doesn't even see the connection.

Every tool, in plain terms

The 49 tools agents use in Google Calendar through Mission Control, and the lowest access level that includes each. Agents discover these themselves. You never have to name a tool; asking in plain language is enough.

ToolWhat it doesAccess level
Acl delete
GOOGLECALENDAR_ACL_DELETE
Deletes an access control rule from a Google Calendar.Full access
Acl get
GOOGLECALENDAR_ACL_GET
Retrieves a specific access control rule for a calendar.All levels
Acl insert
GOOGLECALENDAR_ACL_INSERT
Creates an access control rule for a calendar.Manage events, Full access
Acl list
GOOGLECALENDAR_ACL_LIST
Retrieves the list of access control rules (ACLs) for a specified calendar, providing the necessary 'rule_id' values required for updating specific ACL rules.Manage events, Full access
Acl patch
GOOGLECALENDAR_ACL_PATCH
Updates an existing access control rule for a calendar using patch semantics (partial update).Manage events, Full access
Acl update
GOOGLECALENDAR_ACL_UPDATE
Updates an access control rule for the specified calendar.Manage events, Full access
Acl watch
GOOGLECALENDAR_ACL_WATCH
Watch for changes to ACL resources. Use when you need to set up real-time notifications for access control list modifications on a calendar.Manage events, Full access
Batch events
GOOGLECALENDAR_BATCH_EVENTS
Execute up to 1000 event mutations (create/patch/delete) in one Google Calendar HTTP batch request with per-item status/results.Full access
Calendars delete
GOOGLECALENDAR_CALENDARS_DELETE
Deletes a secondary calendar that you own or have delete permissions on.Full access
Calendars update
GOOGLECALENDAR_CALENDARS_UPDATE
Full PUT-style update that overwrites all calendar metadata fields; unspecified optional fields are cleared.Manage events, Full access
Calendar list delete
GOOGLECALENDAR_CALENDAR_LIST_DELETE
Remove a calendar from the user's calendar list.Full access
Calendar list get
GOOGLECALENDAR_CALENDAR_LIST_GET
Retrieves metadata for a SINGLE specific calendar from the user's calendar list by its calendar ID.All levels
Calendar list insert
GOOGLECALENDAR_CALENDAR_LIST_INSERT
Inserts an existing calendar into the user's calendar list, making it visible in the UI.Manage events, Full access
Calendar list patch
GOOGLECALENDAR_CALENDAR_LIST_PATCH
Updates an existing calendar on the user's calendar list using patch semantics.Manage events, Full access
Calendar list update
GOOGLECALENDAR_CALENDAR_LIST_UPDATE
Updates a calendar list entry's display/subscription settings (color, visibility, reminders, selection) for the authenticated user, does not modify the underlying calendar resource (title, timezone, etc.).Manage events, Full access
Calendar list watch
GOOGLECALENDAR_CALENDAR_LIST_WATCH
Watch for changes to CalendarList resources using push notifications.Manage events, Full access
Channels stop
GOOGLECALENDAR_CHANNELS_STOP
Stop watching resources through a notification channel.Full access
Clear calendar
GOOGLECALENDAR_CLEAR_CALENDAR
Clears a primary calendar by deleting all events from it.Full access
Colors get
GOOGLECALENDAR_COLORS_GET
Returns the color definitions for calendars and events.All levels
Create calendar
GOOGLECALENDAR_CREATE_CALENDAR
Creates a new secondary Google Calendar with the specified title and optional settings.Full access
Create event
GOOGLECALENDAR_CREATE_EVENT
Create a Google Calendar event using start_datetime plus duration fields.Manage events, Full access
Delete event
GOOGLECALENDAR_DELETE_EVENT
Deletes a specified event by event_id from a Google Calendar (calendar_id); idempotent, a 404 for an already-deleted event is a no-op.Full access
Duplicate calendar
GOOGLECALENDAR_DUPLICATE_CALENDAR
Creates a new, empty Google Calendar with the specified title (summary).Manage events, Full access
Events get
GOOGLECALENDAR_EVENTS_GET
Retrieves a SINGLE event by its unique event_id (REQUIRED).All levels
Events import
GOOGLECALENDAR_EVENTS_IMPORT
Import an event as a private copy to a calendar.Manage events, Full access
Events instances
GOOGLECALENDAR_EVENTS_INSTANCES
Returns instances of the specified recurring event.Manage events, Full access
Events list
GOOGLECALENDAR_EVENTS_LIST
Returns events on the specified calendar. TIMEZONE WARNING: When using timeMin/timeMax with UTC timestamps (ending in 'Z'), the time window is interpreted in UTC regardless of the calendar's timezone. For example, query…Manage events, Full access
Events list all calendars
GOOGLECALENDAR_EVENTS_LIST_ALL_CALENDARS
Return a unified event list across all calendars in the user's calendar list for a given time range.All levels
Events move
GOOGLECALENDAR_EVENTS_MOVE
Moves an event to another calendar, i.e., changes an event's organizer.Manage events, Full access
Events watch
GOOGLECALENDAR_EVENTS_WATCH
Watch for changes to Events resources. Watch channels expire; persist the channel id per calendarId to re-establish watches after expiration or restarts.Manage events, Full access
Find event
GOOGLECALENDAR_FIND_EVENT
Finds events in a specified Google Calendar using text query, time ranges (event start/end, last modification), and event types.Manage events, Full access
Find free slots
GOOGLECALENDAR_FIND_FREE_SLOTS
Finds both free and busy time slots in Google Calendars for specified calendars within a defined time range.Manage events, Full access
Free busy query
GOOGLECALENDAR_FREE_BUSY_QUERY
DEPRECATED: Use GOOGLECALENDAR_FIND_FREE_SLOTS instead (though this tool provides wider secondary/shared calendar coverage).Manage events, Full access
Get calendar
GOOGLECALENDAR_GET_CALENDAR
Retrieves a specific Google Calendar, identified by calendar_id, to which the authenticated user has access.Manage events, Full access
Get calendar profile
GOOGLECALENDAR_GET_CALENDAR_PROFILE
DEPRECATED: Use CalendarListGet instead. Tool to retrieve the authenticated user's primary calendar profile. Use when you need to get information about the user's main calendar, including timezone, settings, and prefere…All levels
Get current date time
GOOGLECALENDAR_GET_CURRENT_DATE_TIME
Gets the current date and time, allowing for a specific timezone offset.Manage events, Full access
List buildings
GOOGLECALENDAR_LIST_BUILDINGS
Lists all buildings for a Google Workspace customer account with full details including addresses, coordinates, and floor names.Manage events, Full access
List calendars
GOOGLECALENDAR_LIST_CALENDARS
Retrieves calendars from the user's Google Calendar list, with options for pagination and filtering.Manage events, Full access
List calendar resources
GOOGLECALENDAR_LIST_CALENDAR_RESOURCES
Retrieves calendar resources (such as conference rooms) from a Google Workspace domain using the Admin SDK Directory API.Manage events, Full access
List settings
GOOGLECALENDAR_LIST_SETTINGS
DEPRECATED: Use GOOGLECALENDAR_SETTINGS_LIST instead.All levels
Patch calendar
GOOGLECALENDAR_PATCH_CALENDAR
Partially updates (PATCHes) an existing Google Calendar, modifying only the fields provided.Manage events, Full access
Patch event
GOOGLECALENDAR_PATCH_EVENT
Update 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…Manage events, Full access
Quick add
GOOGLECALENDAR_QUICK_ADD
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_i…Manage events, Full access
Remove attendee
GOOGLECALENDAR_REMOVE_ATTENDEE
Removes an attendee from a specified event in a Google Calendar; the calendar and event must exist.Full access
Settings get
GOOGLECALENDAR_SETTINGS_GET
Return a single user setting for the authenticated user.All levels
Settings list
GOOGLECALENDAR_SETTINGS_LIST
Returns all user settings for the authenticated user.Manage events, Full access
Settings watch
GOOGLECALENDAR_SETTINGS_WATCH
Watch for changes to Settings resources.Manage events, Full access
Sync events
GOOGLECALENDAR_SYNC_EVENTS
DEPRECATED: Use GOOGLECALENDAR_EVENTS_LIST instead.Manage events, Full access
Update event
GOOGLECALENDAR_UPDATE_EVENT
Updates an existing event in Google Calendar.Manage events, Full access

What agents can't do in Google Calendar (yet)

  • Anything not in the table above. The tools mirror what Google Calendar makes available to connected apps. If Google Calendar doesn't expose an operation, agents can't perform it either.
  • If something you need is missing, there's usually a path: add the service's API key under Settings → Custom integrations and your agents can call it directly. See custom integrations & secrets. You can also ask your lead agent to open a ticket describing what it needs.

Using it in missions

Just ask in plain language: “check Google Calendar for …”, “create … in Google Calendar”, “every Monday, … ”, and the agent finds the right tool, runs it, and reports back with a receipt in your Runs ledger. Anything outward-facing (sending, posting, publishing) that a mission didn't clearly authorize comes back to you as a ticket first.

Troubleshooting

Agent saysWhat's happeningFix
"Google Calendar isn't connected"No active connection (or this agent is denied)Connect on the Integrations page; check the agent's per-app policy
"The connection has expired"Google Calendar ended the authorization (they all do periodically)Click Reconnect on the account, same settings, one click
"I'm not allowed to do that"The action is above the account's access level, or the agent is scoped downRaise the level under Manage, or adjust that agent's policy
It did something unexpectedThe ask was ambiguous (e.g. matched an existing item)Be explicit, "create a NEW …", and give agents a working folder where relevant