PlugWiki
google-calendar-mcp logo

Google Calendar MCP Server (nspady): Setup for Claude, Cursor and Other Apps

CommunityLocal
Getnpm@cocal/google-calendar-mcpnspady/google-calendar-mcp

Lets your AI assistant read, create, change and delete Google Calendar events, check free time and answer invitations.

It runs on your computer and uses a Google Cloud OAuth client you create yourself, then you sign in with your Google account in a browser. The setup takes about ten minutes the first time, and it is the main hurdle. Events can be created, changed and deleted, so check what the assistant plans before you approve it.

Good for

  • People who want Claude or Cursor to find free slots and book meetings
  • Anyone juggling several Google accounts or calendars in one chat
  • Developers who want to limit the tool set with a flag

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install google-calendar MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the google-calendar MCP server to Claude Code. Run this command:
    
    claude mcp add google-calendar -e GOOGLE_OAUTH_CREDENTIALS=<GOOGLE_OAUTH_CREDENTIALS> -- npx -y @cocal/google-calendar-mcp
    
    Ask me for GOOGLE_OAUTH_CREDENTIALS and only put the values in that config, nowhere else.
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

Built from the package data we hold. Not yet tested by us.

Tools

  • Shows every calendar on your Google account

    Returns the calendars your connected Google account can see, so the assistant can pick the right one.

    Try: “Which calendars do I have?”

    Network · list-calendars

  • Lists events in a date range

    Pulls events from one or more calendars between two dates. You can name a calendar instead of giving its ID.

    Try: “What is on my work calendar next week?”

    Network · list-events

  • Finds events by keyword

    Looks through a calendar for events whose text matches a word or phrase.

    Try: “Find every event with "dentist" in the title.”

    Network · search-events

  • Opens one event in full

    Fetches all details of a single event when you already know its ID.

    Try: “Show me the details of the event we just found.”

    Network · get-event

  • Checks when people or calendars are free

    Asks Google which time slots are busy across calendars, including other people's. The date range can be at most three months.

    Try: “When am I and Sam both free on Thursday afternoon?”

    Network · get-freebusy

  • Tells the assistant today's date and time

    Returns the current date and time in your calendar's timezone. The tool text says to call it before any scheduling so "tomorrow" means the right day.

    Try: “What time is it in my calendar's timezone?”

    Read · get-current-time

  • Lists event colors and labels

    Returns the old numbered event colors, plus a calendar's custom event labels when you pass the calendar.

    Try: “What colors can I use for events on my work calendar?”

    Network · list-colors

  • Adds an event to a calendar

    Makes one new event. It can also colour the event with a custom label, and it checks for conflicts and duplicates first.

    Try: “Book a 30 minute call with Priya on Friday at 2pm.”

    Write · create-event

  • Adds many events at once

    Makes several events in one call from shared defaults such as calendar and timezone. It skips the conflict and duplicate checks to go faster.

    Try: “Add these five workshop dates to my team calendar.”

    Write · create-events

  • Changes an existing event

    Edits an event's fields. For repeating events you choose whether the change hits one occurrence or the whole series.

    Try: “Move tomorrow's standup to 10am and rename it "Sprint sync".”

    Write · update-event

  • Removes an event

    Deletes an event from a calendar. Google marks this tool as destructive.

    Try: “Delete the "Old project review" meeting on Tuesday.”

    Delete · delete-event

  • Accepts or declines an invitation

    Sends your reply to an invitation: accept, decline, maybe, or no response.

    Try: “Decline the Friday all-hands invite.”

    Write · respond-to-event

Read from the source code

Permissions

high risk · 4 things to watch

High risk

The assistant can create, edit and delete events on every calendar your Google account can change. Turn on the tool filter so it only gets the read tools until you need more.

What it can do

Watch out for

  • It can delete events

    delete-event and update-event are marked destructive in the source. Approve each call, or limit tools with ENABLED_TOOLS. github.com

  • Write tools are on by default

    With no filter, all 13 tools load, including create and respond. Use --enable-tools to expose only what you need. github.com

  • Test-mode sign-in expires after a week

    While your Google Cloud app is in test mode, the sign-in token expires after 7 days and you must run the auth command again. github.com

  • manage-accounts can remove stored accounts

    The remove action deletes a saved Google account from this server. It does not touch your Google account itself. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlySet ENABLED_TOOLS (or pass --enable-tools) to a comma-separated list of the read tools, for example list-events,search-events,get-event,get-freebusy,get-current-time. manage-accounts stays unless you leave it off the list.
Talks toGoogle Calendar API (www.googleapis.com)
Sign-in and keysOAuth tokens are saved on your machine in tokens.json under ~/.config/google-calendar-mcp, or the path in GOOGLE_CALENDAR_MCP_TOKEN_PATH.
Scopes
  • https://www.googleapis.com/auth/calendar.events

  • https://www.googleapis.com/auth/calendar

Questions

Is the nspady Google Calendar MCP server official?

No. It is a community project by nspady and Google did not make it. It talks to the standard Google Calendar API with your own Google Cloud OAuth client.

How does it differ from Google's own Calendar MCP server?

Google runs its own remote Calendar MCP server, but it is in Developer Preview and needs membership in the Google Workspace Developer Preview Program plus a Google Cloud project with the Calendar API and the Calendar MCP API enabled. This one is a community server that runs on your machine with your own OAuth client, and it has no preview gate. Google's docs list nine tools (list_events, get_event, list_calendars, suggest_time, create_event, update_event, delete_event, respond_to_event, search_events). This server also has get-freebusy, create-events for batches, list-colors, get-current-time and manage-accounts for several Google accounts.

Does it need a Google Cloud project?

Yes. You create a Google Cloud project, turn on the Calendar API, make a Desktop-app OAuth client, add yourself as a test user, and download the key file. Point GOOGLE_OAUTH_CREDENTIALS at that file, then sign in once with npx @cocal/google-calendar-mcp auth.

Which Claude and Cursor apps does it work in?

Any app that runs local servers over stdio, such as Claude Desktop, Claude Code and Cursor. See the install box for each. It also has an HTTP mode for other setups.

Can it run read-only?

Yes, by filtering tools. Set ENABLED_TOOLS or pass --enable-tools with only the read tools. There is no single read-only switch.

Why does it ask me to sign in again after a week?

Google expires sign-in tokens after 7 days while your OAuth app is in test mode. Publish the app in Google Cloud or run the auth command again.

Can I use more than one Google account?

Yes. The account tool adds extra Google accounts. When you do not name an account, read tools merge results from all of them and write tools pick one with the right permissions.

Can it use a service account instead?

Yes. Set GOOGLE_SERVICE_ACCOUNT_KEY to a service account key file. Set GOOGLE_SERVICE_ACCOUNT_SUBJECT too if you use domain-wide delegation.

Information

updated Nov 2, 2026

Publisher
Community
Package
@cocal/google-calendar-mcp
Registry
npm
Transport
stdio, Streamable HTTP
Auth
OAuth
Version
2.8.1
License
MIT
Last commit
Oct 29, 2026
Open issues
1

GitHubnpmChangelogIssues

Other Google Calendar MCP servers

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 3
  1. google-calendar-mcp README (v2.8.1) · github.com
  2. Tool registry (v2.8.1) · github.com
  3. Configure the Calendar MCP server (Google for Developers) · developers.google.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.