MCP server connecting AI assistants to Google Calendar for event management, scheduling, and availability checks
Multi-account support with cross-calendar conflict detection and natural language date understanding
Open source with OAuth 2.0 auth — works with Claude Desktop, Cursor, and all MCP clients
Pricing: Free forever
Best for: Individuals & startups
Pros & Cons
Pros
Multi-account conflict detection is genuinely useful for people juggling work and personal calendars
Natural language scheduling eliminates manual date formatting and timezone math
Intelligent import from images and PDFs handles conference flyers and invitations automatically
Multiple community implementations give you flexibility to choose TypeScript, Python, or SSE transport
Cons
Requires Google Cloud project setup with Calendar API enabled and OAuth consent screen
Community-maintained — no official Google MCP server, so quality and update frequency vary
Multi-account setup requires separate OAuth credentials for each Google account
Key Features
Full event management — create, update, delete, and search calendar events via natural languageMulti-account and multi-calendar support — aggregate events across all your Google accountsCross-account conflict detection warns when new events overlap existing commitmentsFree/busy queries to check availability across multiple calendars simultaneouslyNatural language date/time understanding with automatic timezone detectionIntelligent import — extract event details from images, PDFs, or web links automaticallyRecurring event modification with advanced editing capabilitiesOAuth 2.0 authentication supporting both Desktop app and Web application credentials
Google Calendar MCP is a Model Context Protocol server that connects AI assistants to Google Calendar, enabling natural-language event management, scheduling, and availability checking. You can create, update, delete, and search calendar events, check free/busy slots across multiple calendars, and handle recurring event modifications — all through Claude Desktop, Cursor, and other MCP-compatible clients.
The server supports multi-account and multi-calendar operations, meaning you can connect several Google accounts and list events from multiple calendars in a single request. Cross-account conflict detection automatically warns you when a new event overlaps with existing commitments across any connected calendar. Natural language date and time understanding lets you say things like "schedule a meeting next Tuesday at 3pm" without worrying about date formatting or timezone conversion — the server handles automatic timezone detection from your Google Calendar settings.
Several community implementations exist, with the most popular (nspady/google-calendar-mcp) providing a TypeScript-based server focused on reliability and feature completeness. Advanced features include intelligent import from images, PDFs, or web links — the AI can extract event details from a conference flyer or meeting invitation and create the calendar entry automatically. Authentication uses OAuth 2.0 with both Desktop app and Web application credentials supported, and credentials are stored securely on your local machine. The server is open source and free to use.
Can the AI assistant create calendar events for me?
Yes. The server supports creating, updating, and deleting events including setting titles, descriptions, start/end times, attendees, location, and recurrence rules. The AI can also check your availability before scheduling, making it practical for meeting coordination.
Does it support multiple Google Calendar accounts?
Yes. The server is designed for multi-account support, letting you connect personal and work Google Calendar accounts simultaneously. The AI can query availability and manage events across all connected calendars in a single conversation.
How does authentication work?
The server uses Google OAuth 2.0 with the Calendar API scope. You provide a credentials.json from the Google Cloud Console, authorize on first run, and the server stores refresh tokens for subsequent sessions. Each connected account requires a separate authorization flow.
Can the AI check free/busy times for other people?
If the authenticated account has access to other users' calendars (common in Google Workspace organizations), the server can query their free/busy information. For external contacts, it can only see what the Google Calendar FreeBusy API exposes based on sharing settings.