Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Google Calendar MCP

von mmedumVersion 5.1.1i★ –iLäuft auf deinem Computer
Name in der Registryio.github.mmedum/google-calendar-mcp

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Google Calendar over MCP: calendars, events, recurrence and availability.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Dokumente, Tabellen & Büroarbeit

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Die Registry nennt keinen Schlüssel zum Eintragen.

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Die .mcpb-Datei des Entwicklers herunterladen

Der Link führt zur Datei des Entwicklers selbst; wir hosten sie nicht und verpacken sie nicht neu. Öffne die Datei, dann installiert Claude Desktop sie.

Führe das in deinem Terminal aus

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 8. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto mmedum bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Dokumente, Tabellen & Büroarbeiti

  • Mehr Sterne als 0 % der anderen 3589 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 85 % der anderen 3589 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 3589 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist Google Calendar MCP sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (5.1.1) kam vor 5 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du MCPB auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Agent-Native Calendar

Agent-Native Google Calendar - manage events, sync, and public booking

von BuilderIOWeit verbreitet★ 7620Aktualisiert vor 2 Monaten

Läuft in der Cloud

Excel MCP Server

Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.

von haris-musaWeit verbreitet↓ 49.636/Wo.★ 4276Aktualisiert vor 8 Tagen

Läuft auf deinem Computer

MCP Server for Excel

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

von sbroenneWachsend↓ 4321/Wo.★ 847Aktualisiert vor 5 Tagen

Läuft auf deinem Computer

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

google-calendar-mcp

An MCP server for Google Calendar. One binary, stdio, per-user OAuth against your own Google account.

It answers when — calendars, the events on them, and who is free. What a meeting produces (a recording, a notes document, an attachment) belongs to servers built on the Meet, Docs and Drive APIs. get_event names the files attached to an event, with the Drive file id those servers take.

It is for one person who uses Google Calendar, on a Workspace or a personal Google account, and wants an assistant to read and change that calendar as them. You create your own OAuth client in Google Cloud once, and nothing is hosted.

Goals and non-goals

Goals:

  • Correct about time. An all-day event stays a date, every timed write carries an IANA zone, and every read states its window and zone.
  • Nobody emailed by surprise. notify is required on any write that can reach a guest, and scope on any write to a repeating event, with no default for either.
  • A write never overwrites what it did not see. Every change is a patch under the etag of the read that planned it.
  • Safe by default. What cannot be taken back, and every share beyond your organization, is registered only when you turn it on. Read-only mode removes every write, and the writes take dry_run.
  • Act as you, and log nothing about your calendar. Every call runs as the signed-in account, and the logs never carry event content or addresses.

Non-goals:

  • What a meeting produces. Recordings, notes documents and the files attached to an event belong to the Drive and Docs servers. Google Tasks is a separate API.
  • Push notifications. Google's watch methods need a public HTTPS endpoint, which a stdio server cannot offer. list_changes hands back a sync token instead.
  • A local cache or sync loop. The server keeps no copy of your calendar between calls.
  • Migration and administration. Importing events from another system and transferring a calendar's ownership as an administrator are out.
  • Parsing natural language into events. Google's quick-add hides which fields it set and in which zone it read the time; the model calling this server parses better.
  • A hosted service. It speaks stdio only, so Claude on the web and on mobile cannot reach it.
  • Asking you before a call. Your client approves each call; the server asks nothing.

What makes this one different

Calendar tooling often gets these wrong. This server is built around getting them right, and a test enforces each:

  • An all-day event is a date, not a time. It never becomes an instant, so it cannot land on the wrong day for anyone west of UTC. Every timed event carries a real IANA zone, not just an offset, because an offset cannot expand a repeating event across a daylight-saving change.
  • Every read says what it read. The absolute window, the time zone, where that zone came from, and whether the list was truncated. A schedule that does not say which Thursday it is showing can be read as any Thursday.
  • Availability is not a list of events. An event you cannot see the details of still makes someone busy, and an event marked "free" does not. A calendar that could not be read is reported as *unknown*, never folded into "free".

The design and the decisions behind it are in docs/architecture.md.

Install

go install github.com/mmedum/google-calendar-mcp/v5/cmd/google-calendar-mcp@latest

Or take a signed archive from the latest release. docs/release.md gives the commands that verify it.

Set up

You need your own Google Cloud project and OAuth client. Nothing deployer-specific is baked into this repository.

  1. Create a project and enable the Google Calendar API.
  2. Configure the OAuth consent screen and, on an External app, add the scopes docs/gcp-setup.md lists; an Internal app needs no list. A gate checks that file against the code, so it cannot fall behind what login asks for.
  3. Create an OAuth client of type Desktop app and download the JSON.
  4. Sign in:
google-calendar-mcp login --client-secret ~/path/to/client_secret.json

google-calendar-mcp doctor

doctor checks the client JSON, the stored token, the granted scopes and whether the API answers, and names what is missing.

Signing in over SSH

The OAuth callback reaches the loopback interface of the machine running login, while your browser is on your own machine. Forward the port first. Use --no-browser: it prints the authorization URL and the exact ssh -L line to run, with the port it actually picked.

Configure your MCP client

{

"mcpServers": { "google-calendar": { "command": "google-calendar-mcp", "env": { "GCAL_CLIENT_SECRET": "/path/to/client_secret.json" } } } }

Every setting is in docs/configuration.md.

Claude Desktop

Every release also carries a .mcpb bundle. Open it and Claude Desktop installs the server and asks for the settings a client's configuration would carry: your OAuth client JSON, which may be left empty to use the one login recorded, the profile, read-only and the switches. Deleting a calendar or every event on one, publishing it and sharing it outside your organization (enable_destructive), and an event that declines every meeting it overlaps (enable_decline_all) stay off unless you turn them on. Sharing inside your organization (sharing) stays on, as on a server you configure by hand, and read-only leaves every switch nothing to register. This server asks nobody before a call. Claude Desktop approves each tool, with Allow once or Always allow, and a tool you always allow then runs unasked, so leave a switch off unless you need its tools.

The bundle covers macOS, Windows and Linux on both architectures: macOS through a universal binary, Windows through amd64, and Linux through a small launcher that picks the binary at start. It does not log you in. Install the binary as well, run google-calendar-mcp login once, and the bundle uses the same login.

Tools

ToolWhat it does
list_calendarsEvery calendar this account can see, with ids, time zones and your access level. Start here.
get_calendarOne calendar in full, including who it is shared with and its default reminders.
list_eventsThe events on one or more calendars in a window, or only the kinds you name, such as out of office, or the event an invitation email is about.
search_eventsFree-text search across a window, over titles, descriptions, locations and guests.
get_eventOne event, with its guests and their responses, what guests may do, your reminders, and the files attached to it.
list_instancesThe occurrences of one repeating event, with the dates that were moved or removed.
list_changesWhat changed since you last looked, including deletions — which a list cannot report, because a deleted event simply stops matching. Hands back a sync token to pass in next time, or reads what changed since a moment you name.
check_availabilityWhen people are busy and when they are free, from Google's free/busy service rather than from a list of events. Takes an optional working-hours mask.
get_settingsThe account's time zone, week start and color palette.
create_eventCreate an event, one-off or repeating, with guests, optional guests, rooms, your reminders, its visibility, what guests may do, and a Google Meet link if you ask for one. Or a status event on your primary calendar: out of office, focus time or a working location.
create_event_declining_allAn out-of-office or focus-time event that declines every meeting it overlaps, the accepted ones too. Behind its own flag.
update_eventChange an event, including your reminders, its visibility and what guests may do, or add a Google Meet link. Only the fields you pass are touched.
cancel_eventCancel an event, or one occurrence of a repeating one.
move_eventMove an event to another calendar, which changes who organizes it.
respond_to_eventAnswer an invitation: accepted, declined or tentative.
create_calendarCreate a calendar of your own.
manage_calendarRename or re-zone a calendar, set your own color and name for it, or add and remove it from your list.
list_sharingWho can see a calendar, and what each of them can see.
share_calendarGive a person or a group inside your organization access below owner, or change the access they have.
unshare_calendarTake somebody's access away.
publish_calendarPublish a calendar to the internet, or open it to a whole domain. Gated.
widen_calendar_accessShare with somebody outside your organization, or make somebody an owner. Gated.
delete_calendarDelete a calendar and every event on it. Gated.
clear_calendarDelete every event on your primary calendar. Gated.

GCAL_READ_ONLY=true registers only the reads, the rows above create_event, and requests only read scopes, so the API itself refuses a write.

manage_calendar covers what the API splits across two resources and people do not: the calendar — its title, description, location and time zone — is what everybody it is shared with sees, while your subscription to it — the color, the name you give it, whether it is hidden, what you are emailed about — is yours alone. Unsubscribing removes it from your list; it deletes nothing and nobody else notices.

These rules run through every write:

  • `notify` is required whenever the write can reach another person, and there is no default in either direction. none is refused outright when a guest is outside your organization — such a guest may have no Google Calendar for the event to appear in, so email is the only way they can learn of it.
  • `scope` is required when the event repeats: instance, series or this_and_following. "Move the standup to 10:30" is three different operations and the API makes them look like one.
  • Every write is a patch under `If-Match`, so it is refused as [stale] rather than overwriting somebody who changed it first. Adding a guest reads the list and adds to it; it never replaces it.

dry_run: true on any of them reports what would change and how many guests would be emailed, without writing.

Above 200 guests Google stops propagating individual responses, so every result about such an event says that the RSVPs it lists are incomplete.

Resources

For clients that attach context rather than call tools, the same content is published as resources:

URIWhat it carries
gcal://calendarsThe calendar list, as list_calendars returns it.
gcal://calendars/{calendar_id}One calendar, as get_calendar returns it.
gcal://calendars/{calendar_id}/events/{event_id}One event, as get_event returns it.

They carry no handles and take no arguments, which is why there is no resource for a schedule: a window and a zone are not optional here, and a URI with nowhere to state them would have to invent both.

Working hours

check_availability answers over a window, and a window is one interval — so "next week, 09:00 to 17:00" cannot be asked for

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen