MCP Tools Reference: calendarmcp.googleapis.com

Outil : update_event

Met à jour un événement dans l'agenda spécifié.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP update_event.

Requête curl
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
}'
                

Schéma d'entrée

Message de requête pour UpdateEvent. Les champs qui ne sont pas définis ne seront pas mis à jour.

UpdateEventRequest

Représentation JSON
{
  "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)
}
Champs
eventId

string

Obligatoire. ID de l'événement.

addedAttendeeEmails[]
(deprecated)

string

Facultatif. Obsolète : utilisez added_attendees à la place.

addedAttendees[]

object (Attendee)

Facultatif. Participants à ajouter à l'événement.

removedAttendeeEmails[]

string

Facultatif. Adresses e-mail des participants à l'événement à supprimer.

overrideReminders[]

object (Reminder)

Facultatif. Si cette option est définie, elle remplace tous les rappels existants pour l'événement.

addedAttachments[]

object (Attachment)

Facultatif. Pièces jointes à ajouter à l'événement.

removedAttachmentFileUrls[]

string

Facultatif. Pièces jointes à supprimer de l'événement.

Champ d'union _calendar_id.

_calendar_id ne peut être qu'un des éléments suivants :

calendarId

string

Facultatif. ID de l'agenda contenant l'événement. Adresse e-mail : peut être résolue à l'aide de list_calendars. Par défaut : agenda principal.

Champ d'union _summary.

_summary ne peut être qu'un des éléments suivants :

summary

string

Facultatif. Nouveau titre.

Champ d'union _description.

_description ne peut être qu'un des éléments suivants :

description

string

Facultatif. Nouvelle description. Peut contenir du code HTML.

Champ d'union _location.

_location ne peut être qu'un des éléments suivants :

location

string

Facultatif. ont déménagé.

Champ d'union _start_time.

_start_time ne peut être qu'un des éléments suivants :

startTime

string

Facultatif. Nouvelle heure de début (ISO 8601). Conserve la durée si seule l'heure de début est modifiée.

Champ d'union _end_time.

_end_time ne peut être qu'un des éléments suivants :

endTime

string

Facultatif. Nouvelle heure de fin (ISO 8601).

Champ d'union _all_day.

_all_day ne peut être qu'un des éléments suivants :

allDay

boolean

Facultatif. L'événement devient un événement d'une journée entière. Si ce paramètre est défini, start_time/end_time doit également être fourni.

Champ d'union _time_zone.

_time_zone ne peut être qu'un des éléments suivants :

timeZone

string

Facultatif. Nom de la base de données des fuseaux horaires IANA (par exemple, America/Los_Angeles). Par défaut, le fuseau horaire principal de l'utilisateur. Remplace les décalages dans start_time et end_time.

Champ d'union _notification_level.

_notification_level ne peut être qu'un des éléments suivants :

notificationLevel

enum (NotificationLevel)

Facultatif. Notification par e-mail à envoyer pour cette modification d'événement. Valeur par défaut : ALL

Champ d'union _add_google_meet_url.

_add_google_meet_url ne peut être qu'un des éléments suivants :

addGoogleMeetUrl

boolean

Facultatif. Si la valeur est "true", une URL Google Meet est créée ou mise à jour pour l'événement. Ignoré si Meet est désactivé.

Champ d'union _visibility.

_visibility ne peut être qu'un des éléments suivants :

visibility

string

Facultatif. Nouvelle visibilité de l'événement. Valeurs possibles :

  • default : utilise la visibilité par défaut des événements dans l'agenda. Valeur par défaut.
  • public : les détails de l'événement sont visibles par tous les lecteurs de l'agenda.
  • private : l'événement est privé et seuls les participants peuvent en afficher les détails.

Champ d'union _color_id.

_color_id ne peut être qu'un des éléments suivants :

colorId

string

Facultatif. Nouvelle couleur de l'événement. Pour obtenir la liste des ID de couleur, consultez la documentation de la ressource Event.

Champ d'union _google_meet_url.

_google_meet_url ne peut être qu'un des éléments suivants :

googleMeetUrl

string

Facultatif. Permet d'associer une URL ou un ID de réunion Google Meet existants à l'événement. Remplace la valeur de addGoogleMeetUrl.

Champ d'union _guest_permissions.

_guest_permissions ne peut être qu'un des éléments suivants :

guestPermissions

object (GuestPermissions)

Facultatif. Paramètres d'autorisation des invités pour cet événement.

Champ d'union _availability.

_availability ne peut être qu'un des éléments suivants :

availability

enum (Availability)

Facultatif. Indique si l'événement bloque du temps dans l'agenda.

Participant

Représentation JSON
{

  "id": string

  "email": string

  "displayName": string

  "organizer": boolean

  "self": boolean

  "resource": boolean

  "optionalAttendee": boolean

  "responseStatus": string

  "comment": string

  "additionalGuests": integer
}
Champs

Champ d'union _id.

_id ne peut être qu'un des éléments suivants :

id

string

Uniquement en sortie. ID du profil.

Champ d'union _email.

_email ne peut être qu'un des éléments suivants :

email

string

Obligatoire. Adresse e-mail du participant.

Champ d'union _display_name.

_display_name ne peut être qu'un des éléments suivants :

displayName

string

Facultatif. Nom

Champ d'union _organizer.

_organizer ne peut être qu'un des éléments suivants :

organizer

boolean

Uniquement en sortie. Indique si le participant est l'organisateur. Valeur par défaut : false

Champ d'union _self.

_self ne peut être qu'un des éléments suivants :

self

boolean

Uniquement en sortie. Indique si cette entrée représente l'agenda dans lequel cette copie de l'événement apparaît. Valeur par défaut : false

Champ d'union _resource.

_resource ne peut être qu'un des éléments suivants :

resource

boolean

Facultatif. Indique si le participant est une ressource (par exemple, une salle). Immuable, ne peut être défini que lorsque le participant est ajouté initialement. Valeur par défaut : false

Champ d'union _optional_attendee.

_optional_attendee ne peut être qu'un des éléments suivants :

optionalAttendee

boolean

Facultatif. Indique si le participant est facultatif. Valeur par défaut : false

Champ d'union _response_status.

_response_status ne peut être qu'un des éléments suivants :

responseStatus

string

Facultatif. État de la réponse. Valeurs possibles :

  • needsAction : le participant n'a pas répondu à l'invitation (recommandé pour les nouveaux événements).
  • declined : le participant a refusé l'invitation.
  • tentative : le participant a accepté provisoirement l'invitation.
  • accepted : le participant a accepté l'invitation.

Champ d'union _comment.

_comment ne peut être qu'un des éléments suivants :

comment

string

Uniquement en sortie. Commentaire de réponse.

Champ d'union _additional_guests.

_additional_guests ne peut être qu'un des éléments suivants :

additionalGuests

integer

Facultatif. Nombre d'invités supplémentaires. Valeur par défaut : 0

Rappel

Représentation JSON
{

  "method": string

  "minutes": integer
}
Champs

Champ d'union _method.

_method ne peut être qu'un des éléments suivants :

method

string

Obligatoire. Mode de diffusion. Valeurs possibles :

  • email : les rappels sont envoyés par e-mail.
  • popup : les rappels sont envoyés via un pop-up de l'UI.

Champ d'union _minutes.

_minutes ne peut être qu'un des éléments suivants :

minutes

integer

Obligatoire. Délai de déclenchement du rappel (en minutes).

Pièce jointe

Représentation JSON
{

  "fileUrl": string

  "title": string
}
Champs

Champ d'union _file_url.

_file_url ne peut être qu'un des éléments suivants :

fileUrl

string

Obligatoire. Lien URL vers la pièce jointe.

Champ d'union _title.

_title ne peut être qu'un des éléments suivants :

title

string

Facultatif. Titre de la pièce jointe.

GuestPermissions

Représentation JSON
{

  "guestsCanInviteOthers": boolean

  "guestsCanModify": boolean

  "guestsCanSeeGuests": boolean
}
Champs

Champ d'union _guests_can_invite_others.

_guests_can_invite_others ne peut être qu'un des éléments suivants :

guestsCanInviteOthers

boolean

Facultatif. Indique si les invités peuvent inviter d'autres personnes.

Champ d'union _guests_can_modify.

_guests_can_modify ne peut être qu'un des éléments suivants :

guestsCanModify

boolean

Facultatif. Indique si les invités peuvent modifier l'événement.

Champ d'union _guests_can_see_guests.

_guests_can_see_guests ne peut être qu'un des éléments suivants :

guestsCanSeeGuests

boolean

Facultatif. Indique si les invités peuvent voir les autres invités.

NotificationLevel

Niveau de notification par e-mail pour les mises à jour.

Enums
NOTIFICATION_LEVEL_UNSPECIFIED Par défaut. Traitée comme ALL.
NONE Aucune notification
EXTERNAL_ONLY Participants externes uniquement.
ALL Tous les participants.

Disponibilité

Paramètre de disponibilité d'un événement.

Enums
AVAILABILITY_UNSPECIFIED Par défaut. Traitée comme BUSY.
AVAILABILITY_BUSY Bloque du temps dans l'agenda.
AVAILABILITY_FREE Ne bloque pas de créneaux horaires.

Schéma de sortie

Événement

Représentation JSON
{
  "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)
}
Champs
id

string

Identifiant unique.

status

string

Facultatif. État. Valeurs possibles :

  • confirmed : l'événement est confirmé (valeur par défaut).
  • tentative : l'événement est provisoirement confirmé.
  • cancelled : l'événement est annulé ou supprimé.

htmlLink

string

Uniquement en sortie. Lien absolu vers cet événement dans l'interface utilisateur Web de Google Agenda.

created

string

Uniquement en sortie. Heure de création (ISO 8601).

updated

string

Uniquement en sortie. Date et heure de la dernière modification (ISO 8601).

summary

string

et le titre.

description

string

Facultatif. Description : Peut contenir du code HTML.

location

string

Facultatif. Localisation.

creator

object (Principal)

Uniquement en sortie. Créateur.

organizer

object (Principal)

Uniquement en sortie. Organisateur Il figure également dans la liste des participants, le cas échéant.

start

object (DateOrDateTime)

Heure de début (incluse). Pour les événements récurrents, la première instance est utilisée.

end

object (DateOrDateTime)

Heure de fin (exclue). Pour les événements récurrents, la première instance est utilisée.

recurrence[]

string

Règles de récurrence sous forme de chaînes RRULE, EXRULE, RDATE ou EXDATE (conformément à la norme RFC 5545). Omettez-le pour les événements uniques. Les heures de début et de fin doivent être définies dans les champs start et end.

recurringEventId

string

ID de l'événement périodique parent pour les instances d'événements périodiques.

originalStartTime

object (DateOrDateTime)

Heure de début d'origine des instances récurrentes. Il s'agit de l'heure à laquelle cette instance commencerait selon les données de récurrence.

transparency
(deprecated)

string

Facultatif. Obsolète : utilisez availability à la place.

visibility

string

Facultatif. Visibilité de l'événement. Valeurs possibles :

  • default : utilise la visibilité par défaut des événements dans l'agenda. Il s'agit de la valeur par défaut.
  • public : les détails de l'événement sont visibles par tous les lecteurs de l'agenda.
  • private : seuls les participants à l'événement peuvent afficher les détails de l'événement.

attendees[]

object (Attendee)

Participants.

conferenceUrl

string

Lien vers la visioconférence.

colorId

string

Couleur de l'événement. Cela n'affecte que votre propre vue de l'agenda. Il s'agit d'un ID faisant référence à une entrée dans la palette de couleurs de l'agenda (chaîne '1'-'11') :

  • 1 : Lavande
  • 2 : Sage
  • 3 : Raisin
  • 4 : Flamant rose
  • 5 : Banane
  • 6 : Clémentine
  • 7 : Peacock
  • 8 : Graphite
  • 9 : Blueberry
  • 10 : Basilic
  • 11 : tomate.

overrideReminders[]

object (Reminder)

Rappels. Si elle n'est pas définie, les paramètres par défaut de l'agenda sont utilisés.

attachments[]

object (Attachment)

Pièces jointes.

guestPermissions

object (GuestPermissions)

Autorisations des invités.

eventType

enum (EventType)

Type d'événement

workingLocationProperties

object (WorkingLocationProperties)

Propriétés du lieu de travail. Renseigné uniquement lorsque event_type est défini sur WORKING_LOCATION.

availability

enum (Availability)

Facultatif. Paramètre de disponibilité.

Compte principal

Représentation JSON
{
  "email": string,
  "displayName": string,
  "self": boolean
}
Champs
email

string

par e-mail,

displayName

string

Nom

self

boolean

Uniquement en sortie. Indique si ce principal correspond à l'agenda dans lequel cette copie de l'événement apparaît. Valeur par défaut : false

DateOrDateTime

Représentation JSON
{
  "date": string,
  "dateTime": string,
  "timeZone": string
}
Champs
date

string

Date ISO 8601 à minuit UTC (par exemple, '2019-11-20T00:00:00Z').

dateTime

string

Code temporel ISO 8601 (par exemple, '2019-11-20T08:19:06-07:00').

timeZone

string

Nom du fuseau horaire TZDB.

Participant

Représentation JSON
{

  "id": string

  "email": string

  "displayName": string

  "organizer": boolean

  "self": boolean

  "resource": boolean

  "optionalAttendee": boolean

  "responseStatus": string

  "comment": string

  "additionalGuests": integer
}
Champs

Champ d'union _id.

_id ne peut être qu'un des éléments suivants :

id

string

Uniquement en sortie. ID du profil.

Champ d'union _email.

_email ne peut être qu'un des éléments suivants :

email

string

Obligatoire. Adresse e-mail du participant.

Champ d'union _display_name.

_display_name ne peut être qu'un des éléments suivants :

displayName

string

Facultatif. Nom

Champ d'union _organizer.

_organizer ne peut être qu'un des éléments suivants :

organizer

boolean

Uniquement en sortie. Indique si le participant est l'organisateur. Valeur par défaut : false

Champ d'union _self.

_self ne peut être qu'un des éléments suivants :

self

boolean

Uniquement en sortie. Indique si cette entrée représente l'agenda dans lequel cette copie de l'événement apparaît. Valeur par défaut : false

Champ d'union _resource.

_resource ne peut être qu'un des éléments suivants :

resource

boolean

Facultatif. Indique si le participant est une ressource (par exemple, une salle). Immuable, ne peut être défini que lorsque le participant est ajouté initialement. Valeur par défaut : false

Champ d'union _optional_attendee.

_optional_attendee ne peut être qu'un des éléments suivants :

optionalAttendee

boolean

Facultatif. Indique si le participant est facultatif. Valeur par défaut : false

Champ d'union _response_status.

_response_status ne peut être qu'un des éléments suivants :

responseStatus

string

Facultatif. État de la réponse. Valeurs possibles :

  • needsAction : le participant n'a pas répondu à l'invitation (recommandé pour les nouveaux événements).
  • declined : le participant a refusé l'invitation.
  • tentative : le participant a accepté provisoirement l'invitation.
  • accepted : le participant a accepté l'invitation.

Champ d'union _comment.

_comment ne peut être qu'un des éléments suivants :

comment

string

Uniquement en sortie. Commentaire de réponse.

Champ d'union _additional_guests.

_additional_guests ne peut être qu'un des éléments suivants :

additionalGuests

integer

Facultatif. Nombre d'invités supplémentaires. Valeur par défaut : 0

Rappel

Représentation JSON
{

  "method": string

  "minutes": integer
}
Champs

Champ d'union _method.

_method ne peut être qu'un des éléments suivants :

method

string

Obligatoire. Mode de diffusion. Valeurs possibles :

  • email : les rappels sont envoyés par e-mail.
  • popup : les rappels sont envoyés via un pop-up de l'UI.

Champ d'union _minutes.

_minutes ne peut être qu'un des éléments suivants :

minutes

integer

Obligatoire. Délai de déclenchement du rappel (en minutes).

Pièce jointe

Représentation JSON
{

  "fileUrl": string

  "title": string
}
Champs

Champ d'union _file_url.

_file_url ne peut être qu'un des éléments suivants :

fileUrl

string

Obligatoire. Lien URL vers la pièce jointe.

Champ d'union _title.

_title ne peut être qu'un des éléments suivants :

title

string

Facultatif. Titre de la pièce jointe.

GuestPermissions

Représentation JSON
{

  "guestsCanInviteOthers": boolean

  "guestsCanModify": boolean

  "guestsCanSeeGuests": boolean
}
Champs

Champ d'union _guests_can_invite_others.

_guests_can_invite_others ne peut être qu'un des éléments suivants :

guestsCanInviteOthers

boolean

Facultatif. Indique si les invités peuvent inviter d'autres personnes.

Champ d'union _guests_can_modify.

_guests_can_modify ne peut être qu'un des éléments suivants :

guestsCanModify

boolean

Facultatif. Indique si les invités peuvent modifier l'événement.

Champ d'union _guests_can_see_guests.

_guests_can_see_guests ne peut être qu'un des éléments suivants :

guestsCanSeeGuests

boolean

Facultatif. Indique si les invités peuvent voir les autres invités.

WorkingLocationProperties

Représentation JSON
{

  "type": enum (WorkingLocationType)

  "customLocationLabel": string
}
Champs

Champ d'union _type.

_type ne peut être qu'un des éléments suivants :

type

enum (WorkingLocationType)

Facultatif. Type de lieu de travail.

Champ d'union _custom_location_label.

_custom_location_label ne peut être qu'un des éléments suivants :

customLocationLabel

string

Facultatif. Libellé d'un lieu personnalisé. Obligatoire si le type est CUSTOM_LOCATION.

EventType

Type d'événement Immuable après création.

Enums
EVENT_TYPE_UNSPECIFIED Traitée comme DEFAULT.
DEFAULT Événement régulier. Valeur par défaut.
OUT_OF_OFFICE Absence du bureau
FOCUS_TIME Événement "Moment de concentration".
WORKING_LOCATION Événement sur le lieu de travail.
BIRTHDAY Événement spécial sur toute la journée avec une récurrence annuelle.
FROM_GMAIL Événement ajouté à partir de Gmail. Ce type d'événement ne peut pas être créé.

WorkingLocationType

Type de lieu de travail.

Enums
WORKING_LOCATION_TYPE_UNSPECIFIED Type de lieu de travail non spécifié. Sera traité comme HOME_OFFICE.
HOME_OFFICE Bureau à domicile
CUSTOM_LOCATION Emplacement personnalisé.

Disponibilité

Paramètre de disponibilité d'un événement.

Enums
AVAILABILITY_UNSPECIFIED Par défaut. Traitée comme BUSY.
AVAILABILITY_BUSY Bloque du temps dans l'agenda.
AVAILABILITY_FREE Ne bloque pas de créneaux horaires.

Annotations d'outils

Indication de destruction : ❌ | Indication d'idempotence : ✅ | Indication de lecture seule : ❌ | Indication de monde ouvert : ❌

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

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