Google Calendar MCP Server
MCP ServerFreeCreate, search, and manage Google Calendar events via MCP.
Capabilities12 decomposed
mcp-compliant calendar tool registration with zod schema validation
Medium confidenceImplements a registry pattern where each calendar operation extends BaseToolHandler and generates MCP-compatible tool definitions with JSON schemas derived from Zod validation schemas. The ToolRegistry.getTools() method transforms handler classes into standardized tool definitions that conform to the Model Context Protocol specification, enabling AI assistants to discover and invoke calendar operations with type-safe argument validation.
Uses a BaseToolHandler inheritance pattern combined with Zod schema extraction to automatically generate MCP-compliant tool definitions, eliminating manual JSON schema writing and ensuring runtime validation matches protocol schema
Reduces boilerplate compared to manually writing MCP tool definitions and JSON schemas separately, with automatic schema-to-validation synchronization
oauth2 authentication with automatic token refresh and persistent storage
Medium confidenceImplements Google OAuth2 flow by spawning a temporary HTTP server via runAuthServer() in src/auth-server.ts that handles the authorization callback, then persists tokens to the user's config directory for automatic refresh during tool execution. The authentication system intercepts API calls, checks token expiration, and transparently refreshes credentials without requiring user re-authentication, enabling seamless long-lived calendar access.
Combines temporary HTTP server spawning for OAuth callback handling with automatic token refresh interceptors, eliminating manual token management while maintaining security through filesystem-based persistent storage
More user-friendly than service account authentication (no JSON key files to manage) and more secure than hardcoded API keys, with automatic refresh preventing token expiration errors
claude desktop configuration with stdio transport setup
Medium confidenceProvides claude_desktop_config.json configuration template that enables Claude Desktop to discover and invoke the MCP server via stdio transport. The configuration specifies the server command (npx or local build), arguments (--transport stdio), and environment variables for OAuth credentials, allowing Claude Desktop to spawn the MCP server as a subprocess and communicate via stdin/stdout.
Provides ready-to-use Claude Desktop configuration template that eliminates manual MCP server setup, enabling one-step integration of calendar functionality into Claude Desktop
Simpler than manual MCP server configuration by providing a template, reducing setup friction for Claude Desktop users
docker deployment with http transport and environment-based configuration
Medium confidenceSupports Docker containerization via docker-compose.yml that runs the MCP server in HTTP mode with environment variable configuration for OAuth credentials and port binding. The Docker setup enables remote deployment of the MCP server with automatic container orchestration, health checks, and volume mounting for persistent token storage. HTTP transport allows multiple remote clients to connect via REST endpoints and Server-Sent Events.
Provides docker-compose.yml template with HTTP transport and environment-based configuration, enabling one-command remote deployment without manual Docker setup
Simpler than manual Docker configuration by providing a template, reducing deployment friction for cloud environments
dual-transport mcp server with stdio and http modes
Medium confidenceSupports two transport modes configured via --transport CLI argument in src/index.ts: stdio mode for local process communication with Claude Desktop, and HTTP mode providing REST endpoints and Server-Sent Events for remote integration. The main() function initializes the appropriate transport handler based on configuration, enabling the same calendar tool registry to serve both local and remote MCP clients without code duplication.
Single codebase supporting both stdio and HTTP transports through pluggable transport handlers, allowing seamless switching between local and remote deployment without duplicating tool logic
More flexible than single-transport MCP servers, enabling both local development (stdio) and production remote deployment (HTTP) from the same implementation
event listing and filtering by calendar and date range
Medium confidenceProvides list-calendars and list-events tools that query Google Calendar API with optional date range filtering (startTime, endTime) and calendar selection. The implementation handles timezone-aware datetime parsing, pagination through large result sets, and formatting of event metadata (title, time, attendees, reminders) into human-readable output suitable for AI assistant context.
Integrates timezone-aware datetime parsing with Google Calendar API pagination, automatically formatting recurring event expansions and attendee lists for AI assistant consumption
More comprehensive than basic event listing by handling timezone conversion and recurring event expansion, providing AI assistants with complete calendar context for scheduling decisions
event creation with conflict detection and attendee management
Medium confidenceImplements create-event tool that accepts event details (title, start/end times, description, attendees, reminders) and performs intelligent conflict detection by querying existing events in the target calendar before insertion. The tool supports adding multiple attendees with optional RSVP notifications, setting reminder configurations (popup, email), and returning the created event ID for subsequent updates or deletions.
Combines event creation with pre-flight conflict detection by querying existing events before insertion, preventing double-booking while maintaining attendee notification workflows
Smarter than basic event creation by detecting conflicts before insertion, reducing the need for manual conflict resolution or event deletion
event updating with partial field modification
Medium confidenceProvides update-event tool that modifies existing events by eventId with support for partial updates (only changed fields are sent to API). The tool accepts optional parameters for title, start/end times, description, attendees, and reminders, applying only non-null values to the target event while preserving unchanged fields. This approach minimizes API payload size and reduces risk of accidentally overwriting fields.
Implements partial update semantics by only sending non-null fields to Google Calendar API, reducing payload size and minimizing risk of unintended field overwrites compared to full event replacement
More efficient than full event replacement by sending only changed fields, reducing API payload and avoiding accidental data loss from missing optional parameters
event deletion with confirmation
Medium confidenceProvides delete-event tool that removes events from calendar by eventId with optional confirmation messaging. The tool calls Google Calendar API's delete endpoint and returns confirmation of successful deletion, enabling AI assistants to remove unwanted events or handle cancellation workflows.
Simple wrapper around Google Calendar API delete endpoint with confirmation messaging for AI assistant workflows, no complex state management or recovery mechanisms
Straightforward deletion without unnecessary complexity, suitable for AI-driven calendar cleanup where user intent is clear
recurring event handling with expansion and recurrence rule parsing
Medium confidenceHandles recurring events by expanding recurrence rules (RRULE) into individual event instances within queried date ranges, parsing recurrence patterns (daily, weekly, monthly, yearly) with frequency, interval, and end date constraints. The system automatically expands recurring events when listing or searching, presenting each instance as a separate event to the AI assistant while maintaining reference to the parent recurring event.
Leverages Google Calendar API's native recurrence expansion to automatically convert RRULE patterns into individual instances, eliminating manual recurrence rule parsing while maintaining parent event references
Avoids custom RRULE parsing complexity by delegating to Google Calendar API, reducing bugs and supporting all Google Calendar recurrence patterns natively
event search with natural language date range interpretation
Medium confidenceProvides search-events tool that queries events by date range with optional text search on event titles and descriptions. The tool accepts ISO 8601 datetime parameters and returns matching events with full metadata, enabling AI assistants to find specific events or check availability for scheduling. The search integrates with the event listing infrastructure to support filtering across multiple calendars.
Combines date range filtering with optional text search on event metadata, enabling AI assistants to locate specific events or verify availability without manual calendar browsing
More practical than basic event listing by adding search capability, allowing AI assistants to find relevant events without retrieving entire calendar
tool execution with error handling and api response formatting
Medium confidenceImplements BaseToolHandler framework that wraps Google Calendar API calls with consistent error handling, response formatting, and logging. Each tool handler extends BaseToolHandler, executes the corresponding API operation, catches Google API errors (authentication failures, rate limits, invalid parameters), and formats responses into human-readable text suitable for AI assistant consumption. The framework provides standardized error messages and retry logic for transient failures.
Provides BaseToolHandler inheritance pattern with standardized error handling and response formatting, ensuring consistent behavior across all calendar tools without duplicating error logic
More maintainable than duplicating error handling in each tool by centralizing it in BaseToolHandler, reducing bugs and improving consistency
Capabilities are decomposed by AI analysis. Each maps to specific user intents and improves with match feedback.
Related Artifactssharing capabilities
Artifacts that share capabilities with Google Calendar MCP Server, ranked by overlap. Discovered automatically through the match graph.
CalDAV MCP
** - A CalDAV MCP server to expose calendar operations as tools for AI assistants.
@shardworks/claude-code-session-provider
Claude Code session provider — launches claude sessions with MCP tool serving
keeper.sh
Calendar sync tool & universal calendar MCP server. Aggregate, sync and control calendars on Google, Outlook, Office 365, iCloud, CalDAV or ICS.
gemini-mcp-tool
MCP server that enables AI assistants to interact with Google Gemini CLI, leveraging Gemini's massive token window for large file analysis and codebase understanding
Financial Datasets
** - Stock market API made for AI agents
Chat for Claude Code
Beautiful Claude Code Chat Interface for VS Code
Best For
- ✓AI assistant developers integrating calendar functionality into Claude Desktop or custom MCP clients
- ✓Teams building multi-tool MCP servers that need consistent tool registration patterns
- ✓Individual developers and teams deploying MCP servers that need secure, user-specific Google Calendar access
- ✓Claude Desktop users who want persistent calendar integration without re-authenticating
- ✓Claude Desktop users who want to add calendar functionality to their AI assistant
- ✓Developers testing MCP server implementations locally with Claude Desktop
- ✓DevOps teams deploying MCP servers to cloud infrastructure (AWS, GCP, Azure)
- ✓Organizations running multiple MCP server instances with load balancing
Known Limitations
- ⚠Schema generation is tightly coupled to Zod validators — changing validation logic requires updating both schema and handler
- ⚠Tool registry is static at server startup — dynamic tool registration requires server restart
- ⚠No built-in tool versioning or deprecation mechanism for backward compatibility
- ⚠OAuth2 flow requires a temporary HTTP server on localhost — incompatible with headless/containerized environments without port forwarding
- ⚠Token storage uses plaintext files in config directory — requires OS-level file permission security
- ⚠Refresh token rotation is not implemented — long-lived tokens may become invalid if Google revokes them
Requirements
Input / Output
UnfragileRank
UnfragileRank is computed from adoption signals, documentation quality, ecosystem connectivity, match graph feedback, and freshness. No artifact can pay for a higher rank.
About
Community MCP server for Google Calendar integration. Enables listing calendars, creating and updating events, searching events by date range, and managing attendees and reminders programmatically.
Categories
Alternatives to Google Calendar MCP Server
Are you the builder of Google Calendar MCP Server?
Claim this artifact to get a verified badge, access match analytics, see which intents users search for, and manage your listing.
Get the weekly brief
New tools, rising stars, and what's actually worth your time. No spam.
Data Sources
Looking for something else?
Search →