MCP Tools Reference: calendarmcp.googleapis.com

Tool: update_event

Aktualisiert ein Ereignis im angegebenen Kalender.

Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool update_event aufrufen.

Curl-Anfrage
curl --location 'https://calendarmcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_event",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Eingabeschema

Anfragenachricht für UpdateEvent Felder, die nicht festgelegt sind, werden nicht aktualisiert.

UpdateEventRequest

JSON-Darstellung
{
  "eventId": string,
  "addedAttendeeEmails": [
    string
  ],
  "addedAttendees": [
    {
      object (Attendee)
    }
  ],
  "removedAttendeeEmails": [
    string
  ],
  "overrideReminders": [
    {
      object (Reminder)
    }
  ],
  "addedAttachments": [
    {
      object (Attachment)
    }
  ],
  "removedAttachmentFileUrls": [
    string
  ],

  "calendarId": string

  "summary": string

  "description": string

  "location": string

  "startTime": string

  "endTime": string

  "allDay": boolean

  "timeZone": string

  "notificationLevel": enum (NotificationLevel)

  "addGoogleMeetUrl": boolean

  "visibility": string

  "colorId": string

  "googleMeetUrl": string

  "guestPermissions": {
    object (GuestPermissions)
  }

  "availability": enum (Availability)
}
Felder
eventId

string

Erforderlich. Ereignis-ID

addedAttendeeEmails[]
(deprecated)

string

Optional. Verworfen. Verwenden Sie stattdessen added_attendees.

addedAttendees[]

object (Attendee)

Optional. Teilnehmer, die dem Termin hinzugefügt werden sollen.

removedAttendeeEmails[]

string

Optional. Die Teilnehmer der Veranstaltung, die entfernt werden sollen, als E‑Mail-Adressen.

overrideReminders[]

object (Reminder)

Optional. Wenn festgelegt, werden alle vorhandenen Erinnerungen für das Ereignis ersetzt.

addedAttachments[]

object (Attachment)

Optional. Dateianhänge, die dem Termin hinzugefügt werden sollen.

removedAttachmentFileUrls[]

string

Optional. Dateianhänge, die aus dem Termin entfernt werden sollen.

Union-Feld _calendar_id.

Für _calendar_id ist nur einer der folgenden Werte zulässig:

calendarId

string

Optional. ID des Kalenders mit dem Termin. E‑Mail-Adresse – kann mit list_calendars aufgelöst werden. Standard: primärer Kalender.

Union-Feld _summary.

Für _summary ist nur einer der folgenden Werte zulässig:

summary

string

Optional. Neuer Titel

Union-Feld _description.

Für _description ist nur einer der folgenden Werte zulässig:

description

string

Optional. Neue Beschreibung Kann HTML enthalten.

Union-Feld _location.

Für _location ist nur einer der folgenden Werte zulässig:

location

string

Optional. Neuer Standort

Union-Feld _start_time.

Für _start_time ist nur einer der folgenden Werte zulässig:

startTime

string

Optional. Neue Startzeit (ISO 8601). Die Dauer wird beibehalten, wenn nur der Start aktualisiert wird.

Union-Feld _end_time.

Für _end_time ist nur einer der folgenden Werte zulässig:

endTime

string

Optional. Neue Endzeit (ISO 8601).

Union-Feld _all_day.

Für _all_day ist nur einer der folgenden Werte zulässig:

allDay

boolean

Optional. Ändert den Termin in einen ganztägigen Termin. Falls festgelegt, müssen auch start_time/end_time angegeben werden.

Union-Feld _time_zone.

Für _time_zone ist nur einer der folgenden Werte zulässig:

timeZone

string

Optional. Name aus der IANA-Zeitzonendatenbank, z. B. America/Los_Angeles. Standard: primäre Zeitzone des Nutzers. Überschreibt die Offsets in start_time und end_time.

Union-Feld _notification_level.

Für _notification_level ist nur einer der folgenden Werte zulässig:

notificationLevel

enum (NotificationLevel)

Optional. E-Mail-Benachrichtigung, die für diese Terminaktualisierung gesendet werden soll. Standard: ALL.

Union-Feld _add_google_meet_url.

Für _add_google_meet_url ist nur einer der folgenden Werte zulässig:

addGoogleMeetUrl

boolean

Optional. Wenn „true“, wird eine Google Meet-URL für das Ereignis erstellt oder aktualisiert. Wird ignoriert, wenn Meet deaktiviert ist.

Union-Feld _visibility.

Für _visibility ist nur einer der folgenden Werte zulässig:

visibility

string

Optional. Neue Sichtbarkeit des Ereignisses. Folgende Werte sind möglich:

  • default: Die Standardsichtbarkeit für Termine im Kalender wird verwendet. Standardwert.
  • public: Termindetails sind für alle Leser des Kalenders sichtbar.
  • private: Der Termin ist privat und nur Teilnehmer können die Termindetails sehen.

Union-Feld _color_id.

Für _color_id ist nur einer der folgenden Werte zulässig:

colorId

string

Optional. Neue Farbe des Ereignisses. Eine Liste der Farb-IDs finden Sie in der Dokumentation der Event-Ressource.

Union-Feld _google_meet_url.

Für _google_meet_url ist nur einer der folgenden Werte zulässig:

googleMeetUrl

string

Optional. Ermöglicht das Anhängen einer vorhandenen Google Meet-URL oder Besprechungs-ID an den Termin. Überschreibt den Wert von addGoogleMeetUrl.

Union-Feld _guest_permissions.

Für _guest_permissions ist nur einer der folgenden Werte zulässig:

guestPermissions

object (GuestPermissions)

Optional. Berechtigungseinstellungen für Gäste für diesen Termin.

Union-Feld _availability.

Für _availability ist nur einer der folgenden Werte zulässig:

availability

enum (Availability)

Optional. Gibt an, ob der Termin Zeit im Kalender blockiert.

Teilnehmer

JSON-Darstellung
{

  "id": string

  "email": string

  "displayName": string

  "organizer": boolean

  "self": boolean

  "resource": boolean

  "optionalAttendee": boolean

  "responseStatus": string

  "comment": string

  "additionalGuests": integer
}
Felder

Union-Feld _id.

Für _id ist nur einer der folgenden Werte zulässig:

id

string

Nur Ausgabe. Profil-ID.

Union-Feld _email.

Für _email ist nur einer der folgenden Werte zulässig:

email

string

Erforderlich. E-Mail-Adresse des Teilnehmers.

Union-Feld _display_name.

Für _display_name ist nur einer der folgenden Werte zulässig:

displayName

string

Optional. Name

Union-Feld _organizer.

Für _organizer ist nur einer der folgenden Werte zulässig:

organizer

boolean

Nur Ausgabe. Gibt an, ob der Teilnehmer der Organisator ist. Standard: false.

Union-Feld _self.

Für _self ist nur einer der folgenden Werte zulässig:

self

boolean

Nur Ausgabe. Gibt an, ob dieser Eintrag den Kalender darstellt, in dem diese Kopie des Termins angezeigt wird. Standard: false.

Union-Feld _resource.

Für _resource ist nur einer der folgenden Werte zulässig:

resource

boolean

Optional. Gibt an, ob der Teilnehmer eine Ressource ist (z. B. ein Raum). Unveränderlich, kann nur beim ersten Hinzufügen des Teilnehmers festgelegt werden. Standard: false.

Union-Feld _optional_attendee.

Für _optional_attendee ist nur einer der folgenden Werte zulässig:

optionalAttendee

boolean

Optional. Gibt an, ob der Teilnehmer optional ist. Standard: false.

Union-Feld _response_status.

Für _response_status ist nur einer der folgenden Werte zulässig:

responseStatus

string

Optional. Antwortstatus. Folgende Werte sind möglich:

  • needsAction – Der Teilnehmer hat noch nicht auf die Einladung geantwortet (empfohlen für neue Termine).
  • declined: Der Teilnehmer hat die Einladung abgelehnt.
  • tentative: Der Teilnehmer hat die Einladung vorläufig angenommen.
  • accepted: Der Teilnehmer hat die Einladung angenommen.

Union-Feld _comment.

Für _comment ist nur einer der folgenden Werte zulässig:

comment

string

Nur Ausgabe. Kommentar zur Antwort.

Union-Feld _additional_guests.

Für _additional_guests ist nur einer der folgenden Werte zulässig:

additionalGuests

integer

Optional. Anzahl der zusätzlichen Gäste. Standard: 0.

Erinnerung

JSON-Darstellung
{

  "method": string

  "minutes": integer
}
Felder

Union-Feld _method.

Für _method ist nur einer der folgenden Werte zulässig:

method

string

Erforderlich. Die Schaltungsmethode. Folgende Werte sind möglich:

  • email: Erinnerungen werden per E-Mail gesendet.
  • popup: Erinnerungen werden über ein Pop-up in der Benutzeroberfläche gesendet.

Union-Feld _minutes.

Für _minutes ist nur einer der folgenden Werte zulässig:

minutes

integer

Erforderlich. Minuten vor dem Termin, zu dem die Erinnerung ausgelöst wird.

Anhang

JSON-Darstellung
{

  "fileUrl": string

  "title": string
}
Felder

Union-Feld _file_url.

Für _file_url ist nur einer der folgenden Werte zulässig:

fileUrl

string

Erforderlich. URL-Link zum Anhang.

Union-Feld _title.

Für _title ist nur einer der folgenden Werte zulässig:

title

string

Optional. Titel des Anhangs.

GuestPermissions

JSON-Darstellung
{

  "guestsCanInviteOthers": boolean

  "guestsCanModify": boolean

  "guestsCanSeeGuests": boolean
}
Felder

Union-Feld _guests_can_invite_others.

Für _guests_can_invite_others ist nur einer der folgenden Werte zulässig:

guestsCanInviteOthers

boolean

Optional. Ob Gäste andere einladen können.

Union-Feld _guests_can_modify.

Für _guests_can_modify ist nur einer der folgenden Werte zulässig:

guestsCanModify

boolean

Optional. Gäste können den Termin bearbeiten.

Union-Feld _guests_can_see_guests.

Für _guests_can_see_guests ist nur einer der folgenden Werte zulässig:

guestsCanSeeGuests

boolean

Optional. Ob Gäste andere Gäste sehen können.

NotificationLevel

E‑Mail-Benachrichtigungsstufe für Updates.

Enums
NOTIFICATION_LEVEL_UNSPECIFIED Standard. Wird als ALL behandelt.
NONE Keine Benachrichtigungen
EXTERNAL_ONLY Nur externe Teilnehmer.
ALL Alle Teilnehmer.

Verfügbarkeit

Verfügbarkeitseinstellung für ein Ereignis.

Enums
AVAILABILITY_UNSPECIFIED Standard. Wird als BUSY behandelt.
AVAILABILITY_BUSY Blockiert Zeit im Kalender.
AVAILABILITY_FREE Es wird keine Zeit blockiert.

Ausgabeschema

Ereignis

JSON-Darstellung
{
  "id": string,
  "status": string,
  "htmlLink": string,
  "created": string,
  "updated": string,
  "summary": string,
  "description": string,
  "location": string,
  "creator": {
    object (Principal)
  },
  "organizer": {
    object (Principal)
  },
  "start": {
    object (DateOrDateTime)
  },
  "end": {
    object (DateOrDateTime)
  },
  "recurrence": [
    string
  ],
  "recurringEventId": string,
  "originalStartTime": {
    object (DateOrDateTime)
  },
  "transparency": string,
  "visibility": string,
  "attendees": [
    {
      object (Attendee)
    }
  ],
  "conferenceUrl": string,
  "colorId": string,
  "overrideReminders": [
    {
      object (Reminder)
    }
  ],
  "attachments": [
    {
      object (Attachment)
    }
  ],
  "guestPermissions": {
    object (GuestPermissions)
  },
  "eventType": enum (EventType),
  "workingLocationProperties": {
    object (WorkingLocationProperties)
  },
  "availability": enum (Availability)
}
Felder
id

string

Eindeutige Kennung.

status

string

Optional. Status aus. Folgende Werte sind möglich:

  • confirmed: Der Termin ist bestätigt (Standard).
  • tentative: Der Termin ist vorläufig bestätigt.
  • cancelled – Das Event wurde abgesagt oder gelöscht.

htmlLink

string

Nur Ausgabe. Ein absoluter Link zu diesem Termin in der Google Kalender-Web-UI.

created

string

Nur Ausgabe. Erstellungszeit (ISO 8601).

updated

string

Nur Ausgabe. Letzte Änderung (ISO 8601).

summary

string

Titel

description

string

Optional. Beschreibung: Kann HTML enthalten.

location

string

Optional. Standort.

creator

object (Principal)

Nur Ausgabe. Creator

organizer

object (Principal)

Nur Ausgabe. Organisator Wenn Sie teilnehmen, werden Sie auch in der Liste der Teilnehmer aufgeführt.

start

object (DateOrDateTime)

Beginn (einschließlich). Bei wiederkehrenden Ereignissen wird die erste Instanz verwendet.

end

object (DateOrDateTime)

Endzeit (ausschließlich). Bei wiederkehrenden Terminen wird die erste Instanz verwendet.

recurrence[]

string

Wiederholungsregeln als RRULE-, EXRULE-, RDATE- oder EXDATE-Strings (gemäß RFC 5545). Bei einzelnen Ereignissen wird sie nicht angegeben. Die Start- und Endzeit muss in den Feldern start/end festgelegt werden.

recurringEventId

string

ID des übergeordneten wiederkehrenden Termins für Instanzen von wiederkehrenden Terminen.

originalStartTime

object (DateOrDateTime)

Ursprüngliche Startzeit von wiederkehrenden Instanzen. Dies ist die Uhrzeit, zu der diese Instanz gemäß den Daten für wiederkehrende Termine beginnen würde.

transparency
(deprecated)

string

Optional. Verworfen. Verwenden Sie stattdessen availability.

visibility

string

Optional. Sichtbarkeit des Ereignisses. Folgende Werte sind möglich:

  • default: Die Standardsichtbarkeit für Termine im Kalender wird verwendet. „Immer“ ist der Standardwert.
  • public: Termindetails sind für alle Leser des Kalenders sichtbar.
  • private: Nur Teilnehmer der Veranstaltung können die Termindetails sehen.

attendees[]

object (Attendee)

Teilnehmer

conferenceUrl

string

Link zur Videokonferenz.

colorId

string

Die Farbe des Ereignisses. Wirkt sich nur auf Ihre eigene Kalenderansicht aus. Dies ist eine ID, die sich auf einen Eintrag in der Farbpalette des Kalenders bezieht (String '1''11'):

  • 1: Lavendel
  • 2: Salbei
  • 3: Grape
  • 4: Flamingo
  • 5: Banane
  • 6: Mandarine
  • 7: Peacock
  • 8: Graphite
  • 9: Blaubeere
  • 10: Basilikum
  • 11: Tomato.

overrideReminders[]

object (Reminder)

Erinnerungen. Wenn kein Wert festgelegt ist, wird auf die Kalendereinstellungen zurückgegriffen.

attachments[]

object (Attachment)

Dateianhänge

guestPermissions

object (GuestPermissions)

Berechtigungen für Gäste.

eventType

enum (EventType)

Ereignistyp

workingLocationProperties

object (WorkingLocationProperties)

Eigenschaften des Arbeitsorts. Wird nur ausgefüllt, wenn event_type WORKING_LOCATION ist.

availability

enum (Availability)

Optional. Verfügbarkeitseinstellung

Hauptkonto

JSON-Darstellung
{
  "email": string,
  "displayName": string,
  "self": boolean
}
Felder
email

string

E‑Mail-Adresse

displayName

string

Name

self

boolean

Nur Ausgabe. Gibt an, ob dieses Prinzipal dem Kalender entspricht, in dem diese Kopie des Termins angezeigt wird. Standard: false.

DateOrDateTime

JSON-Darstellung
{
  "date": string,
  "dateTime": string,
  "timeZone": string
}
Felder
date

string

ISO 8601-Datum um Mitternacht UTC (z. B. '2019-11-20T00:00:00Z').

dateTime

string

ISO 8601-Zeitstempel (z. B. '2019-11-20T08:19:06-07:00').

timeZone

string

TZDB-Zeitzonenname.

Teilnehmer

JSON-Darstellung
{

  "id": string

  "email": string

  "displayName": string

  "organizer": boolean

  "self": boolean

  "resource": boolean

  "optionalAttendee": boolean

  "responseStatus": string

  "comment": string

  "additionalGuests": integer
}
Felder

Union-Feld _id.

Für _id ist nur einer der folgenden Werte zulässig:

id

string

Nur Ausgabe. Profil-ID.

Union-Feld _email.

Für _email ist nur einer der folgenden Werte zulässig:

email

string

Erforderlich. E-Mail-Adresse des Teilnehmers.

Union-Feld _display_name.

Für _display_name ist nur einer der folgenden Werte zulässig:

displayName

string

Optional. Name

Union-Feld _organizer.

Für _organizer ist nur einer der folgenden Werte zulässig:

organizer

boolean

Nur Ausgabe. Gibt an, ob der Teilnehmer der Organisator ist. Standard: false.

Union-Feld _self.

Für _self ist nur einer der folgenden Werte zulässig:

self

boolean

Nur Ausgabe. Gibt an, ob dieser Eintrag den Kalender darstellt, in dem diese Kopie des Termins angezeigt wird. Standard: false.

Union-Feld _resource.

Für _resource ist nur einer der folgenden Werte zulässig:

resource

boolean

Optional. Gibt an, ob der Teilnehmer eine Ressource ist (z. B. ein Raum). Unveränderlich, kann nur beim ersten Hinzufügen des Teilnehmers festgelegt werden. Standard: false.

Union-Feld _optional_attendee.

Für _optional_attendee ist nur einer der folgenden Werte zulässig:

optionalAttendee

boolean

Optional. Gibt an, ob der Teilnehmer optional ist. Standard: false.

Union-Feld _response_status.

Für _response_status ist nur einer der folgenden Werte zulässig:

responseStatus

string

Optional. Antwortstatus. Folgende Werte sind möglich:

  • needsAction – Der Teilnehmer hat noch nicht auf die Einladung geantwortet (empfohlen für neue Termine).
  • declined: Der Teilnehmer hat die Einladung abgelehnt.
  • tentative: Der Teilnehmer hat die Einladung vorläufig angenommen.
  • accepted: Der Teilnehmer hat die Einladung angenommen.

Union-Feld _comment.

Für _comment ist nur einer der folgenden Werte zulässig:

comment

string

Nur Ausgabe. Kommentar zur Antwort.

Union-Feld _additional_guests.

Für _additional_guests ist nur einer der folgenden Werte zulässig:

additionalGuests

integer

Optional. Anzahl der zusätzlichen Gäste. Standard: 0.

Erinnerung

JSON-Darstellung
{

  "method": string

  "minutes": integer
}
Felder

Union-Feld _method.

Für _method ist nur einer der folgenden Werte zulässig:

method

string

Erforderlich. Die Schaltungsmethode. Folgende Werte sind möglich:

  • email: Erinnerungen werden per E-Mail gesendet.
  • popup: Erinnerungen werden über ein Pop-up in der Benutzeroberfläche gesendet.

Union-Feld _minutes.

Für _minutes ist nur einer der folgenden Werte zulässig:

minutes

integer

Erforderlich. Minuten vor dem Termin, zu dem die Erinnerung ausgelöst wird.

Anhang

JSON-Darstellung
{

  "fileUrl": string

  "title": string
}
Felder

Union-Feld _file_url.

Für _file_url ist nur einer der folgenden Werte zulässig:

fileUrl

string

Erforderlich. URL-Link zum Anhang.

Union-Feld _title.

Für _title ist nur einer der folgenden Werte zulässig:

title

string

Optional. Titel des Anhangs.

GuestPermissions

JSON-Darstellung
{

  "guestsCanInviteOthers": boolean

  "guestsCanModify": boolean

  "guestsCanSeeGuests": boolean
}
Felder

Union-Feld _guests_can_invite_others.

Für _guests_can_invite_others ist nur einer der folgenden Werte zulässig:

guestsCanInviteOthers

boolean

Optional. Ob Gäste andere einladen können.

Union-Feld _guests_can_modify.

Für _guests_can_modify ist nur einer der folgenden Werte zulässig:

guestsCanModify

boolean

Optional. Gäste können den Termin bearbeiten.

Union-Feld _guests_can_see_guests.

Für _guests_can_see_guests ist nur einer der folgenden Werte zulässig:

guestsCanSeeGuests

boolean

Optional. Ob Gäste andere Gäste sehen können.

WorkingLocationProperties

JSON-Darstellung
{

  "type": enum (WorkingLocationType)

  "customLocationLabel": string
}
Felder

Union-Feld _type.

Für _type ist nur einer der folgenden Werte zulässig:

type

enum (WorkingLocationType)

Optional. Typ des Arbeitsorts.

Union-Feld _custom_location_label.

Für _custom_location_label ist nur einer der folgenden Werte zulässig:

customLocationLabel

string

Optional. Das Label für einen benutzerdefinierten Standort. Erforderlich, wenn der Typ CUSTOM_LOCATION ist.

EventType

Ereignistyp Nach der Erstellung nicht mehr veränderbar.

Enums
EVENT_TYPE_UNSPECIFIED Wird als DEFAULT behandelt.
DEFAULT Regelmäßig stattfindender Termin. Standardwert.
OUT_OF_OFFICE Außer-Haus-Termin.
FOCUS_TIME Fokuszeit-Termin
WORKING_LOCATION Termin am Arbeitsort
BIRTHDAY Besonderes ganztägiges Event, das jährlich wiederkehrt.
FROM_GMAIL Termin aus Gmail. Dieser Ereignistyp kann nicht erstellt werden.

WorkingLocationType

Art des Arbeitsorts.

Enums
WORKING_LOCATION_TYPE_UNSPECIFIED Nicht angegebener Arbeitsorttyp. Wird als HOME_OFFICE behandelt.
HOME_OFFICE Home office.
CUSTOM_LOCATION Benutzerdefinierter Standort

Verfügbarkeit

Verfügbarkeitseinstellung für ein Ereignis.

Enums
AVAILABILITY_UNSPECIFIED Standard. Wird als BUSY behandelt.
AVAILABILITY_BUSY Blockiert Zeit im Kalender.
AVAILABILITY_FREE Es wird keine Zeit blockiert.

Tool-Annotationen

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ❌ | Open-World-Hinweis: ❌

Autorisierungsbereiche

Erfordert einen der folgenden OAuth-Bereiche:

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