Ask Claude what your Thursday looks like and it has no idea. It cannot see your calendar, so every answer about your real week is one you typed in yourself.
Connecting one takes about five minutes. This guide covers what you are connecting it with, the three servers worth choosing between, and the setup itself.
What is MCP?
MCP, the Model Context Protocol, is a standard way for an assistant to use software you already have. A server publishes a list of tools, each with a name and a set of arguments. The assistant reads that list, picks a tool, and calls it.
The point is that neither side needs to know about the other in advance. Any assistant that speaks MCP can use any MCP server, so a calendar only has to be connected once rather than once per app.
For a calendar that means the assistant stops guessing. It sees a tool for reading events and a tool for creating them, calls the one it needs, and gets a real answer back. What it may reach is decided by you, on a permission screen, before the first call.
Which calendar server should you use?
Three are worth comparing. Every third-party claim below is sourced and dated at the end of the article.
| Server | Calendars it can reach | What you set up | Where it runs |
|---|---|---|---|
| Google Calendar MCP | Google Calendar | Sign in with Google | Google hosts it |
| nspady/google-calendar-mcp | Google Calendar, several accounts at once | Your own Google Cloud project | On your own machine |
| Keeper.sh | Google Calendar, Outlook, iCloud, Fastmail, CalDAV servers, calendar links | Sign in and press Allow | Hosted, or your own server |
The first two are enough if every calendar you have is a Google one. The moment a second provider is involved — an Outlook account at work, iCloud or Fastmail at home, a CalDAV server, a shared calendar link — Keeper.sh is the one that can see all of it in a single call.
Google's own Calendar MCP server
Google runs a server at https://calendarmcp.googleapis.com/mcp/v1, with eight tools: list_calendars, list_events, get_event, create_event, update_event, delete_event, respond_to_event and suggest_time. There is nothing to install and no credential to create.
Two conditions come with it. It is in developer preview, through the Google Workspace Developer Preview Program. And Google's own documentation states that reaching it from Claude.ai or Claude Desktop needs a Claude Enterprise, Pro, Max or Team plan.
It reads and writes Google Calendar only. If your work life is in Outlook, this server never sees it.
nspady/google-calendar-mcp
The community favourite, MIT licensed, at about 1.2k stars. You run it yourself with npx @cocal/google-calendar-mcp, or from a clone, or under Docker. It exposes twelve tools, including searching events, reading free and busy time, and adding accounts from inside the chat.
Setting it up is the part to plan for. You create a Google Cloud project, turn on the Calendar API, and create your own OAuth credentials of the Desktop app type. The README is straight about the catch: while your app is in test mode the sign-in expires after a week, and you have to publish it to stop that.
Several Google accounts can be connected at once, which is what most people want it for. Like Google's own server, it is Google-only.
Keeper.sh
Keeper.sh already keeps your calendars in step with each other, and the same connection is what the assistant talks to. One sign-in reaches everything you have connected — Google Calendar, Outlook, iCloud, Fastmail, CalDAV servers and calendar links — through 14 tools.
An event the assistant creates is written to the calendar that owns it, so it appears in Google Calendar or Outlook exactly like one you added by hand.
How do you connect Claude to Keeper.sh?
You need a Keeper.sh account with at least one calendar connected. There is no key to copy anywhere: the client asks for permission and you grant it in the browser.
- Sign in at keeper.sh and connect a calendar.
- In your MCP client, add a server with the address
https://www.keeper.sh/mcp. - The client opens a browser window by itself. Sign in to Keeper.sh.
- A screen headed Authorize MCP access names the client and lists what it is asking for. Press Allow.
- Ask "what is on my calendar tomorrow?".
Clients that take a list of servers as a file want this:
{
"mcpServers": {
"keeper": {
"type": "url",
"url": "https://www.keeper.sh/mcp"
}
}
}
What is that permission screen asking for?
You sign in on Keeper.sh's own page, and the assistant never sees your password. It receives a key of its own instead, which you can take back later without changing anything else.
The screen lists the permissions the client asked for: typically the six Keeper.sh ones, plus Stay connected when you're away. They cover your events, the calendars they live on, and how those calendars are connected to each other. One of them, Read your Keeper data, is required by every call — a client without it is refused.
Creating, changing, deleting and replying to events are covered by that same approval, so there is no read-only half to accept on its own. Per-tool scopes are on the roadmap; until then, a client that asks you to confirm destructive tools individually gives you the same control.
The key the client gets lasts 30 days and renews itself quietly for 90. It is verified statelessly, so an issued key stays valid until it expires. The full list, and what each permission covers, is on the MCP documentation page.
"Find me 45 minutes next week"
Meet Dev, a contract designer with a personal Google Calendar, a client's Outlook calendar, and a shared iCloud calendar at home. Free time is whatever none of the three has claimed.
Asked for 45 minutes next week, the assistant makes two calls:
find_free_time(from: …, to: …, timezone: "America/Toronto", durationMinutes: 45,
workingHoursStart: "09:00", workingHoursEnd: "17:00", workingDays: "1,2,3,4,5")
create_event(calendarId: …, title: "Design review", startTime: …, endTime: …,
timezone: "America/Toronto")
The first reads all three calendars at once, so Dev never has to say which one an event came from. Events marked free do not block; busy, out-of-office and all-day events do. The second writes the booking onto whichever calendar Dev names, and it shows up there within the minute.
That is the difference the third row of the table buys. A Google-only server would have found a slot that was already gone.
What does it cost?
Nothing to try. The free plan covers two connected accounts and three connections between calendars, plus those 25 assistant calls a day. Two or three questions a day never reach that; an assistant checking your week every hour does.
Pro is $5 a month and removes the daily cap along with the account and connection limits. It also shortens the wait for a change to reach your other calendars, from 30 minutes to one.
Can you run this yourself?
Yes, and it is a real alternative rather than a consolation prize. Keeper.sh is open source under AGPL-3.0 with published Docker images, and a copy you run yourself has every Pro feature at no cost.
Your own instance serves the same address at /mcp on your own domain, so everything above holds with your hostname in place of www.keeper.sh.
The honest cost is a server, a domain, updates, backups, and being the person who notices when it stops. The README on GitHub has the walkthrough.
Frequently asked questions
Does this only work with Claude?
No. MCP is a standard rather than a Claude feature, so any client that can add a remote MCP server works the same way. The steps above are the same wherever you paste the address; only the screen you paste it into changes.
Can the assistant change my calendar, or only read it?
It can change it. Creating, updating, deleting and replying to events are all covered by the one approval, and there is no read-only version of it to accept instead. Events it creates are written to the calendar that owns them, so they are yours to delete like any other.
Do I need a Google Cloud project?
Only for nspady/google-calendar-mcp, which asks you to create your own credentials before it will start. Google's own server and Keeper.sh both give you a sign-in screen instead.
Sources
Third-party claims above come from these pages, each checked on 14 August 2026.
- Configure the Calendar MCP server — server address, the eight tools, developer preview status, and the Claude plan requirement.
- nspady/google-calendar-mcp — MIT licence, star count, the tools, the Google Cloud setup, and the one-week test-mode expiry.
- Keeper.sh MCP documentation — the 14 tools, permissions, and daily limit.