Calendar MCP logo

Calendar MCP

Google Calendar MCP server for searching, scheduling, updating, and analyzing events across one or more signed-in accounts.

Install Calendar MCP

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "calendar-mcp-2": {
      "command": "uvx",
      "args": [
        "calendar-mcp-server"
      ],
      "env": {
        "GOOGLE_CLIENT_ID": "YOUR_VALUE_HERE",
        "GOOGLE_CLIENT_SECRET": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 23 tools correctly (8d ago).

Overview

calendar-mcp MCP server gives AI clients read and write access to Google Calendar through 23 structured tools. It supports event search and changes, free/busy checks, recurring-event analysis, RSVP management, and scheduling workflows such as finding mutual availability or blocking focus time. Authentication uses Google OAuth 2.0 with locally cached tokens, and the server runs over stdio by default or streamable HTTP when configured. Reach for it when an agent needs to inspect calendars or safely automate calendar changes.

Use cases

  • Search upcoming events across Google calendars
  • Book a meeting when all attendees are free
  • Find and reserve uninterrupted focus blocks
  • Audit meeting time by date range and participant
  • Detect conflicts across personal and work accounts

Key features

  • Google Calendar event and calendar management
  • Free/busy and mutual scheduling
  • Recurring-event projection and busyness analysis
  • Focus-time planning with dry-run previews
  • Multi-account conflict detection
  • Stdio and streamable HTTP transports

Tools23

What Calendar MCP lets your agent do. Expand a tool for its parameters.

Verified live~7.5k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

4/4 checks healthy over the last 23d

What it can do

From the 23 tools this server returned when we ran it; 23 declare their own safety hints.

Runs commands · 1Can delete or modify data · 2Makes network requests · 20Read-only tools · 20
Network at startup2 connections
Files written at startup30

Observed 2026-10-15 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 2h ago via OSV.dev · calendar-mcp-server (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars26Stargazers on the source repository.
Last commit24d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed23Callable tools this server registers over MCP.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How Calendar MCP works

What calendar-mcp MCP server does

The calendar-mcp MCP server connects an MCP client to Google Calendar and exposes structured operations for calendars, events, availability, and scheduling. It can list visible calendars, search events including expanded recurring instances, inspect attendee responses, query busy intervals, and measure scheduled time.

Write operations cover creating secondary calendars and events, parsing natural-language event descriptions, editing or moving events, inviting attendees, setting an RSVP, scheduling a shared free slot, and deleting events. Deletion is the only tool described as destructive, and the client is asked to confirm through elicitation when supported.

The calendar-mcp MCP server also includes scheduling logic based on saved working hours, lunch, meeting buffers, minimum focus-block length, and a selected focus calendar. It can find focus blocks, detect conflicts across signed-in accounts, audit time usage, suggest alternate meeting times, and reserve focus time. Focus-time booking supports a dry-run preview, while rescheduling applies changes only when requested.

How it works

Google OAuth 2.0 uses a Desktop app client ID and secret. A one-time authentication command opens a browser and stores a token locally; later server runs refresh that token without opening a browser unless browser authentication is explicitly enabled. Multiple Google accounts can be signed in, with one default account and optional account selection for calendar operations.

The default transport is stdio. HTTP mode is available with a configurable host, port, and MCP path. Availability checks and writes are separate Google API calls, so another client can book a slot between those operations. Unknown or inaccessible availability is treated as unavailable for focus booking, mutual scheduling, and rescheduling actions.

Setup and configuration

Enable the Google Calendar API in Google Cloud and create OAuth credentials for a Desktop app. Provide GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET through the environment or a .env file, then authenticate with uvx calendar-mcp-server auth. The package provides both calendar-mcp and calendar-mcp-server command names.

Tokens normally use the operating system configuration directory. TOKEN_FILE_PATH can point to an existing token file and should be absolute when used in a client configuration. Add the server to an MCP client using its standard mcpServers configuration. The HTTP endpoint has no authentication layer, so it should remain on loopback, a trusted authenticated proxy, or a private network rather than a public interface.

Tools and capabilities

The tool set includes:

  • Calendar and event listing, searching, creation, editing, movement, and deletion.
  • Plain-English event creation through Google’s quick-add parsing.
  • Attendee invitations, RSVP changes, and attendee response reporting.
  • Free/busy queries, busyness summaries, recurrence projection, and mutual scheduling.
  • Focus-time discovery and booking, conflict detection, rescheduling suggestions, and time audits.
  • Local account and scheduling-preference management without a Google API call.

Limitations and notes

The calendar-mcp MCP server requires Google OAuth credentials and access to the relevant calendars. Its local preference settings are stored locally and are not Google Calendar settings. HTTP transport does not currently authenticate callers; anyone who can reach the endpoint can use the saved token’s calendar access. Previewing a focus-time booking does not reserve the selected slots, and concurrent calendar changes can still create competing bookings.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Calendar MCP

calendar-mcp is an MCP server that connects AI clients to Google Calendar through OAuth 2.0. Its main tools search, create, update, move, RSVP to, and delete events, while also checking free/busy status, scheduling mutual meetings, finding focus time, detecting conflicts, and auditing calendar usage across signed-in accounts.

Install and run it with `uvx calendar-mcp-server`, after setting `GOOGLE_CLIENT_ID` and `GOOGLE_CLIENT_SECRET`. Enable the Google Calendar API, create Desktop app OAuth credentials, then run `uvx calendar-mcp-server auth` once to sign in and cache a token.

Yes, calendar-mcp works with Cursor through its standard `mcpServers` configuration. Add a server entry using the `uvx calendar-mcp-server` command and provide the Google OAuth environment variables; project-level and global Cursor MCP configuration files are supported.

Yes, use `block_focus_time` with `dry_run: true` to preview selected blocks before creating events. Booking checks availability again before writing, and unknown or inaccessible availability causes the operation to stop. The separate availability and write calls cannot prevent a competing booking afterward.

Run `calendar-mcp --transport http --host 127.0.0.1 --port 8000`; the MCP endpoint is then `http://127.0.0.1:8000/mcp` unless you change the path. HTTP has no authentication layer, so keep it on loopback, behind a trusted authenticated proxy, or on a private network.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewCalendar MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/calendar-mcp-2?style=directory)](https://allmcps.com/mcp/calendar-mcp-2)
HTML Embed
<a href="https://allmcps.com/mcp/calendar-mcp-2"><img src="https://allmcps.com/api/badge/calendar-mcp-2?style=directory" alt="Calendar MCP on AllMCPs" /></a>