Cal.com MCP

offiziell

Verbinden Sie KI-Clients mit der Cal.com-Terminplanung über das Model Context Protocol, entweder über den gehosteten Server unter mcp.cal.com oder eine lokale Instanz.

Was kann man mit Cal Com MCP machen?

  • Buchungen verwalten — Bitten Sie Ihren Assistenten, Buchungen aufzulisten, zu erstellen, zu verschieben oder zu stornieren, indem Sie Tools wie get_bookings und create_booking verwenden.
  • Eventtypen konfigurieren — Erstellen oder aktualisieren Sie Eventtypen, z. B. einen 30-minütigen „Quick Chat“, über create_event_type und update_event_type.
  • Verfügbarkeit prüfen — Fragen Sie offene Zeitfenster oder belegte Zeiträume aus verbundenen Kalendern mit get_availability und get_busy_times ab.
  • Zeitpläne verwalten — Erstellen, aktualisieren oder rufen Sie Ihren Standardzeitplan mit create_schedule und get_default_schedule ab.
  • Teams und Mitgliedschaften verwalten — Laden Sie Mitglieder ein oder passen Sie Teamrollen über create_team_invite und update_team_membership an.

Dokumentation

MCP-Server

Verbinden Sie KI-Clients mit der Cal.com-Terminplanung über das Model Context Protocol, entweder mit dem gehosteten Server unter mcp.cal.com oder einer lokalen Instanz.

Der Cal.com MCP-Server kapselt die Cal.com API v2 im Model Context Protocol und ermöglicht Ihnen die Verwaltung von Buchungen, Eventtypen, Zeitplänen und mehr über natürliche Sprache in jedem MCP-kompatiblen Client.

Gehosteter Server (mcp.cal.com)

Der schnellste Weg, loszulegen, ist, Ihren MCP-Client direkt mit mcp.cal.com zu verbinden. Der gehostete Server verwendet Streamable-HTTP-Transport mit OAuth-2.1-Authentifizierung – Ihr Client übernimmt den Autorisierungsablauf automatisch.

Client verbinden

Weisen Sie Ihren MCP-Client auf die URL des gehosteten Servers:

https://mcp.cal.com/mcp

Beim ersten Verbinden führt Sie Ihr Client durch einen OAuth-Autorisierungsablauf, bei dem Sie dem Server Zugriff auf Ihr Cal.com-Konto gewähren. Es ist kein API-Schlüssel erforderlich.

Fügen Sie Folgendes zu Ihrer `claude_desktop_config.json` hinzu:
* **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
* **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`

```json theme={null}
{
  "mcpServers": {
    "calcom": {
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```
Öffnen Sie **Einstellungen → MCP** und fügen Sie einen neuen Server mit der URL `https://mcp.cal.com/mcp` hinzu, oder fügen Sie ihn zu Ihrer `.cursor/mcp.json` hinzu:
```json theme={null}
{
  "mcpServers": {
    "calcom": {
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```
Fügen Sie den Server zu Ihren VS-Code-MCP-Einstellungen hinzu:
```json theme={null}
{
  "mcpServers": {
    "calcom": {
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```
Fügen Sie Folgendes zu Ihrer `~/.fx/mcp.json` hinzu:
```json theme={null}
{
  "mcp": {
    "calcom": {
      "type": "http",
      "url": "https://mcp.cal.com/mcp"
    }
  }
}
```

Führen Sie dann `/mcp auth calcom --open` in fx aus, um zu autorisieren. Siehe die
[fx-MCP-Dokumentation](https://fx.sh/docs/capabilities/mcp) für Transporte,
Authentifizierungsoptionen und Tool-Erkennung.

Selbst gehosteter Server (stdio)

Wenn Sie den Server lieber lokal ausführen möchten, können Sie den stdio-Transport mit einem API-Schlüssel verwenden. Dies ist nützlich für die Entwicklung oder wenn Sie die volle Kontrolle über den Server wünschen.

Voraussetzungen

Client verbinden

Fügen Sie Folgendes zur Konfiguration Ihres MCP-Clients hinzu:

{
  "mcpServers": {
    "calcom": {
      "command": "npx",
      "args": ["@calcom/cal-mcp@latest"],
      "env": {
        "CAL_API_KEY": "cal_live_xxxx"
      }
    }
  }
}

Ersetzen Sie cal_live_xxxx durch Ihren tatsächlichen API-Schlüssel.

Warnung

Geben Sie Ihren API-Schlüssel niemals weiter und committen Sie ihn nicht. Wenn er offengelegt wurde, rotieren Sie ihn sofort in Ihren Cal.com-Einstellungen.

Toolsets

Sie können einschränken, welche Tools der Server für eine Sitzung registriert, indem Sie einen toolsets-Abfrageparameter an die Server-URL anhängen:

https://mcp.cal.com/mcp?toolsets=bookings,availability

Gültige Toolsets: profile, event-types, bookings, availability, schedules, calendars, teams, organizations, routing-forms, catalog (die find_api_operation / describe_api_operation / call_api_operation-Meta-Tools). Unbekannte Namen werden mit 400 invalid_request abgelehnt. Wenn der Parameter weggelassen wird, werden alle Tools registriert; die lokalen Tools get_app_link und search_docs werden unabhängig von der Auswahl immer registriert. Für einen selbst gehosteten stdio-Server setzen Sie stattdessen MCP_TOOLSETS.

Verfügbare Tools

Der MCP-Server stellt 63 Tools bereit, die nach Kategorie organisiert sind:

App-Links

ToolBeschreibung
get_app_linkErstellt eine URL, die eine Buchung, einen Eventtyp, einen Zeitplan, ein Team, ein Routing-Formular oder eine Einstellungsseite in der Cal.com-Web-App öffnet

Dokumentation

ToolBeschreibung
search_docsDurchsucht die Cal.com-Produktdokumentation; gibt bewertete Seiten mit einem Auszug des besten Ergebnisses zurück

Benutzerprofil

ToolBeschreibung
get_meRuft Ihr authentifiziertes Benutzerprofil ab
update_meAktualisiert Ihr Benutzerprofil

Eventtypen

ToolBeschreibung
get_event_typesListet alle Eventtypen auf
get_event_typeRuft einen bestimmten Eventtyp anhand der ID ab
create_event_typeErstellt einen neuen Eventtyp
update_event_typeAktualisiert einen Eventtyp
delete_event_typeLöscht einen Eventtyp
get_event_type_settingsRuft die Einstellungen eines Eventtyps ab
get_event_type_historyRuft den Änderungsverlauf eines Eventtyps ab
get_scheduling_configRuft die Terminplanungskonfiguration eines Eventtyps ab
get_crm_sync_errorsRuft CRM-Synchronisierungsfehler für einen Eventtyp ab

Buchungen

ToolBeschreibung
get_bookingsListet Buchungen mit optionalen Filtern auf
get_bookingRuft eine bestimmte Buchung anhand der UID ab
create_bookingErstellt eine neue Buchung
reschedule_bookingVerschiebt eine Buchung
cancel_bookingStorniert eine Buchung
confirm_bookingBestätigt eine ausstehende Buchung
mark_booking_absentMarkiert eine Buchung als abwesend
get_booking_attendeesRuft alle Teilnehmer einer Buchung ab
add_booking_attendeeFügt einer Buchung einen Teilnehmer hinzu
get_booking_attendeeRuft einen bestimmten Teilnehmer ab
get_booking_routing_traceRuft die Routing-Ablaufverfolgung für eine Buchung ab
get_org_team_bookingsRuft Buchungen für ein Organisationsteam ab
get_org_user_bookingsRuft Buchungen für einen Organisationsbenutzer ab

Zeitpläne

ToolBeschreibung
get_schedulesListet alle Zeitpläne auf
get_scheduleRuft einen bestimmten Zeitplan anhand der ID ab
create_scheduleErstellt einen neuen Zeitplan
update_scheduleAktualisiert einen Zeitplan
delete_scheduleLöscht einen Zeitplan
get_default_scheduleRuft Ihren Standardzeitplan ab

Verfügbarkeit & Kalender

ToolBeschreibung
get_availabilityRuft verfügbare Zeitfenster ab
get_busy_timesRuft belegte Zeiten aus Kalendern ab
get_connected_calendarsListet verbundene Kalender auf
get_conferencing_appsListet Konferenzanwendungen auf

Teams & Mitgliedschaften

ToolBeschreibung
get_my_teamsRuft die Teams ab, denen Sie angehören
get_org_teamsRuft Organisationsteams ab
create_team_inviteLädt jemanden zu einem Team ein
create_team_membershipErstellt eine Teammitgliedschaft
get_team_membershipsRuft alle Teammitgliedschaften ab
get_team_membershipRuft eine Teammitgliedschaft ab
update_team_membershipAktualisiert eine Teammitgliedschaft
delete_team_membershipLöscht eine Teammitgliedschaft

Organisationen

ToolBeschreibung
get_org_membershipsRuft alle Organisationsmitgliedschaften ab
create_org_membershipErstellt eine Organisationsmitgliedschaft
get_org_membershipRuft eine Organisationsmitgliedschaft ab
update_org_membershipAktualisiert eine Organisationsmitgliedschaft
delete_org_membershipLöscht eine Organisationsmitgliedschaft
get_org_attributesRuft Organisationsattribute ab
get_org_attributeRuft ein Organisationsattribut ab
get_attribute_optionsRuft Optionen für ein Attribut ab
get_user_attributesRuft einem Benutzer zugewiesene Attribute ab
assign_attribute_to_userWeist einem Benutzer ein Attribut zu
update_user_attributeAktualisiert ein einem Benutzer zugewiesenes Attribut
unassign_attribute_from_userHebt die Zuweisung eines Attributs von einem Benutzer auf
get_user_attribute_historyRuft den Verlauf der Attributzuweisungen eines Benutzers ab

Routing-Formulare

ToolBeschreibung
calculate_routing_form_slotsBerechnet Zeitfenster basierend auf der Routing-Formularantwort
get_org_routing_formsRuft Organisations-Routing-Formulare ab
get_org_routing_form_responsesRuft Routing-Formularantworten ab

API-Katalog

ToolBeschreibung
find_api_operationDurchsucht den vollständigen API-v2-Operationskatalog
describe_api_operationRuft das Eingabeschema für eine API-Operation ab
call_api_operationFührt jede API-v2-Operation aus dem Katalog aus

Beispielaufforderungen

Nach der Verbindung können Sie mit Cal.com über natürliche Sprache interagieren:

  • „Welche Buchungen habe ich diese Woche?"
  • „Erstelle einen 30-minütigen Eventtyp namens ‚Quick Chat'"
  • „Storniere mein Meeting mit John morgen"
  • „Zeig mir meine verfügbaren Zeitfenster für nächsten Montag"
  • „Verschiebe mein Meeting um 14 Uhr auf Donnerstag um 15 Uhr"
  • „Welche Eventtypen habe ich?"

Zugehörige Ressourcen

Diese Dokumentation wird auf Mintlify erstellt und gehostet, einer Plattform für Entwicklerdokumentation.