Google Calendar MCP server for Claude, ChatGPT, Claude Code and Cursor
Access/manage events, calendars, ACLs, and user settings in Google Calendar, including free/busy queries.
Examples of what your AI apps can do in Google Calendar. You'll see the exact list of tools after you connect it.
calendar_list_insert
ToolThis action allows the user to insert a new calendar into their calendar list. It ensures that the calendar is properly configured and accessible to the user.
calendars_delete
ToolThis action permanently deletes a secondary calendar from Google Calendar. You must be the owner or have delete permissions on the calendar. Primary calendars cannot be deleted. To find which calendars you can delete, use the List Calendars action and look for calendars where your accessRole is 'owner'.
calendars_update
ToolThis action updates the metadata for a specified calendar. It allows modification of the calendar's title, description, location, and time zone.
create_event
ToolThis action creates a new event in a specified Google Calendar. By default, it attempts to add a Google Meet link to events (works for Workspace accounts, gracefully falls back for personal Gmail accounts). It allows users to set the event details and handle attendance options, including whether to include the organizer as an attendee. Use start_datetime with event_duration_hour and event_duration_minutes to specify the event time. The end_datetime parameter is not supported - use duration fields instead.
delete_event
ToolDeletes an event from a specified Google Calendar using its unique event ID. This action ensures that if the same request is made multiple times, the result will remain consistent.
duplicate_calendar
ToolThis action creates a new Google Calendar. It allows the user to specify a title for the calendar. If no title is provided, an empty calendar is created.
events_instances
ToolReturns individual occurrences (instances) of a SPECIFIC recurring event. You MUST provide the recurring event's ID (eventId) - use GOOGLECALENDAR_FIND_EVENT or GOOGLECALENDAR_EVENTS_LIST action first to find recurring events and get their IDs. This is NOT for searching or listing all events in a time range; for that, use GOOGLECALENDAR_FIND_EVENT or GOOGLECALENDAR_EVENTS_LIST instead.
find_event
ToolThis action retrieves events from a Google Calendar based on specified search criteria including time ranges and event types. It allows users to find events that match certain search terms and can include deleted events if specified.
free_busy_query
ToolThis action retrieves free and busy times for a specified set of calendars. It allows users to check availability within a set time range.
get_calendar
ToolThis action retrieves a specific Google Calendar based on the provided calendar_id. It returns details about the calendar, including its ID, title, and metadata.
patch_calendar
ToolThis action updates specific details of a Google Calendar based on the provided inputs. Users can modify fields such as the title, description, location, and timezone of the calendar.
patch_event
ToolThis action updates existing events in Google Calendar by modifying specified fields. It can change details like event time, title, and attendees as needed.
sync_events
ToolSynchronizes events from Google Calendar based on the provided parameters. It can perform either a full sync or incremental sync depending on the conditions of the sync token.
update_event
ToolUpdates an existing event in Google Calendar. This action replaces the event with the provided details, allowing changes to the title, time, attendees, location, and other event properties.
calendar_list_update
ToolThis action updates an existing calendar entry for the user. It allows modifications to details like color, reminders, and visibility settings.
clear_calendar
ToolThis action clears all events from the user's primary calendar. It is a destructive operation that permanently removes all calendar events for the specified calendar.
events_list
ToolThis action retrieves events from a specified calendar. It allows for various filtering options such as event type, time range, and more to customize the results. To include hidden invitations that you have not yet responded to, set showHiddenInvitations=true. In the response, hidden invitations can be identified by an attendee entry with attendees[].self==true and attendees[].responseStatus=="needsAction". TIMEZONE NOTE: If results are unexpectedly empty when filtering by time, check that your timeMin/timeMax timezone offsets match the calendar's timezone. UTC times may not align with local calendar dates.
events_move
ToolMoves an event from one calendar to another by changing its organizer. This action is useful for managing event assignments across different calendars.
events_watch
ToolThis action sets up a notification channel for real-time updates on events in a specified calendar. Users can receive alerts whenever there are changes to the events, ensuring they stay informed.
find_free_slots
ToolThis action retrieves free and busy time slots for the specified calendars over a given time period. It analyzes the busy intervals from the calendars and provides calculated free slots based on the gaps in the busy periods.
get_current_date_time
ToolThis action retrieves the current date and time for a specified timezone. It returns the formatted date, time, and day of the week based on the provided UTC offset.
list_acl_rules
ToolRetrieves access control rules for a specified calendar, allowing users to see the permissions associated with different users and groups. This action helps in managing who can view or edit calendar events effectively.
list_calendars
ToolFetches a list of calendars associated with the user's Google account. It provides options to filter and paginate results based on the user's preferences.
remove_attendee
ToolThis action allows you to remove a specific attendee from an event in your Google Calendar. Provide the attendee's email address in a valid email format to proceed with removal.
settings_list
ToolThis action retrieves all user settings for the authenticated user, allowing access to their predefined preferences. It can limit the number of results and handle pagination for convenience.
settings_watch
ToolThis action sets up a notification channel to watch for changes to specified settings resources. It enables real-time updates for the client whenever relevant changes occur.
update_acl_rule
ToolThis action modifies the access permissions for a specified rule on a calendar. It allows you to change the role assigned to a user or group, affecting their access level to the calendar.
Free. No card needed.
How to connect Google Calendar
- 1Create your free ContextGate account.
- 2Go to Connections → Add Connection, search for Google Calendar and sign in to Google Calendar.
- 3Add ContextGate to Claude, Cursor or ChatGPT (the Setup page shows you how), then ask it to use Google Calendar.
What you get with Google Calendar and ContextGate
- Your AI apps can use Google Calendar Claude, Cursor, ChatGPT and other AI apps reach Google Calendar through the one ContextGate connection you add to them.
- You choose which tools they can use Switch off any Google Calendar tool you don't want used. It's hidden from your AI apps and refused if called.
- Every call is checked and recorded Your policies check each call (for example, personal data is hidden and secrets are blocked), and Activity keeps a record of it.
ContextGate sees only the tool calls that go through it, not your AI app's built-in tools or your chats.
Select a tool on the left to see its parameters
What you get with Google Calendar and ContextGate
- Your AI apps can use Google Calendar: Claude, Cursor, ChatGPT and other AI apps reach Google Calendar through the one ContextGate connection you add to them.
- You choose which tools they can use: Switch off any Google Calendar tool you don't want used. It's hidden from your AI apps and refused if called.
- Every call is checked and recorded: Your policies check each call (for example, personal data is hidden and secrets are blocked), and Activity keeps a record of it.
ContextGate sees only the tool calls that go through it, not your AI app's built-in tools or your chats.
Free. No card needed.
How to connect Google Calendar
- Create your free ContextGate account.
- Go to Connections → Add Connection, search for Google Calendar and sign in to Google Calendar.
- Add ContextGate to Claude, Cursor or ChatGPT (the Setup page shows you how), then ask it to use Google Calendar.