Google Calendar Integration for AI Agents

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Google Calendar MCP or direct API to schedule events, check availability, manage invites, and send reminders through natural language.
Google Calendar Logo
Gradient Top
Gradient Middle
Gradient Bottom
divider

Supported Tools and Triggers

Tools
Triggers
Insert Calendar into ListInserts an existing calendar into the user's calendar list.
Update Calendar List EntryUpdates an existing entry on the user\'s calendar list.
Delete CalendarDeletes a secondary calendar.
Update CalendarUpdates metadata for a calendar.
Clear CalendarClears a primary calendar.
Create EventCreates an event on a google calendar, needing rfc3339 utc start/end times (end after start) and write access to the calendar.
Delete eventDeletes 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.
Create a calendarCreates a new, empty google calendar with the specified title (summary).
Get Event InstancesReturns instances of the specified recurring event.
List EventsReturns events on the specified calendar.
Move EventMoves an event to another calendar, i.
Watch EventsWatch for changes to events resources.
Find eventFinds 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 slotsFinds 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 `time max` if both are provided.
Query Free/Busy InformationReturns free/busy information for a set of calendars.
Get Google CalendarRetrieves a specific google calendar, identified by `calendar id`, to which the authenticated user has access.
Get current date and timeGets the current date and time, allowing for a specific timezone offset.
List ACL RulesRetrieves the list of access control rules (acls) for a specified calendar, providing the necessary 'rule id' values required for updating specific acl rules.
List Google CalendarsRetrieves calendars from the user's google calendar list, with options for pagination and filtering.
Patch CalendarPartially 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 EventUpdates 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 calendar.
Quick Add EventParses 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 not 'primary'.
Remove attendee from eventRemoves an attendee from a specified event in a google calendar; the calendar and event must exist.
List SettingsReturns all user settings for the authenticated user.
Watch SettingsWatch for changes to settings resources.
Sync EventsSynchronizes 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` was issued.
Update ACL RuleUpdates an access control rule for the specified calendar.
Update Google eventUpdates 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.

Why Use Composio?

AI Native Google Calendar Integration

  • Supports both Google Calendar MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Google Calendar data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Google Calendar access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Google Calendar
  • Scoped, least privilege access to Google Calendar resources
  • Full audit trail of agent actions to support review and compliance

Connect Google Calendar MCP Tool with your Agent

Python
TypeScript

Install Composio

python
pip install composio claude-agent-sdk
Install the Composio SDK and Claude Agent SDK

Create Tool Router Session

python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
Initialize the Composio client and create a Tool Router session

Connect to AI Agent

python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Google Calendar tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Show me all events on my calendar for today')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
Use the MCP server with your AI agent

Connect Google Calendar API Tool with your Agent

Python
TypeScript

Install Composio

python
pip install composio_openai
Install the Composio SDK

Initialize Composio and Create Tool Router Session

python
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
openai = OpenAI()
session = composio.create(user_id='your-user-id')
Import and initialize Composio client, then create a Tool Router session

Execute Google Calendar Tools via Tool Router with Your Agent

python
tools = session.tools
response = openai.responses.create(
  model='gpt-4.1',
  tools=tools,
  input=[{
    'role': 'user',
    'content': 'Schedule a meeting with Anna next Monday at 2pm'
  }]
)
result = composio.provider.handle_tool_calls(
  response=response,
  user_id='your-user-id'
)
print(result)
Get tools from Tool Router session and execute Google Calendar actions with your Agent

Use Google Calendar with any AI Agent Framework

Choose a Framework you want to connect Google Calendar with

OpenAI Agents SDK

OpenAI Agents SDK

Use Google Calendar MCP with OpenAI Agents SDK

Claude Agents SDK

Claude Agents SDK

Use Google Calendar MCP with Claude Agents SDK

Google ADK

Google ADK

Use Google Calendar MCP with Google ADK

Langchain

Langchain

Use Google Calendar MCP with Langchain

AI SDK

AI SDK

Use Google Calendar MCP with AI SDK

Mastra AI

Mastra AI

Use Google Calendar MCP with Mastra AI

LlamaIndex

LlamaIndex

Use Google Calendar MCP with LlamaIndex

CrewAI

CrewAI

Use Google Calendar MCP with CrewAI

Pydantic AI

Pydantic AI

Use Google Calendar MCP with Pydantic AI

Autogen

Autogen

Use Google Calendar MCP with Autogen

Frequently Asked Questions

Do I need my own developer credentials to use Google Calendar with Composio?

No, you can get started immediately using Composio's built-in Google Calendar app. For production, we recommend configuring your own OAuth credentials.

Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. Learn more.

What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Used by agents from

Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
ASU
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai

Never worry about agent reliability

We handle tool reliability, observability, and security so you never have to second-guess an agent action.