Herramienta: create_event
Crea un evento en el calendario especificado.
En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP create_event.
| Solicitud de 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": "create_event", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Es el mensaje de solicitud para CreateEvent.
CreateEventRequest
| Representación JSON |
|---|
{ "summary": string, "startTime": string, "endTime": string, "attendeeEmails": [ string ], "attendees": [ { object ( |
| Campos | |
|---|---|
summary |
Obligatorio. Título. |
startTime |
Obligatorio. Hora de inicio (ISO 8601, por ejemplo, |
endTime |
Obligatorio. Hora de finalización (ISO 8601, por ejemplo, |
attendeeEmails[] |
Opcional. Obsoleto: Usa |
attendees[] |
Opcional. Son los asistentes al evento. En el caso de los eventos que se crean en el calendario principal del usuario con al menos otro asistente, el usuario actual se agregará automáticamente como asistente si aún no se incluyó. |
recurrenceData[] |
Opcional. Reglas de recurrencia como cadenas |
overrideReminders[] |
Opcional. Los recordatorios anulan los valores predeterminados del calendario. |
attachments[] |
Opcional. Archivos adjuntos |
Campo de unión
|
|
calendarId |
Opcional. ID del calendario en el que se creará el evento. Dirección de correo electrónico: Se puede resolver con |
Campo de unión
|
|
description |
Opcional. Descripción. Puede contener HTML. |
Campo de unión
|
|
location |
Opcional. Ubicación. |
Campo de unión
|
|
allDay |
Opcional. Indica si el evento abarca todo el día. Si es verdadero, las horas de inicio y finalización se tratan como la medianoche. |
Campo de unión
|
|
timeZone |
Opcional. Nombre de la base de datos de zonas horarias de IANA (por ejemplo, |
Campo de unión
|
|
notificationLevel |
Opcional. Notificación por correo electrónico que se debe enviar para esta actualización del evento. |
Campo de unión
|
|
addGoogleMeetUrl |
Opcional. Crea y agrega una URL de Google Meet. Valor predeterminado: |
Campo de unión
|
|
visibility |
Opcional. Visibilidad del evento. Los valores posibles son:
|
Campo de unión
|
|
colorId |
Opcional. Color del evento. Para obtener una lista de los IDs de color, consulta la documentación del recurso Event. |
Campo de unión
|
|
googleMeetUrl |
Opcional. Es la URL o el ID de la reunión de Google Meet específicos. Anula |
Campo de unión
|
|
guestPermissions |
Opcional. Permisos de invitados |
Campo de unión
|
|
availability |
Opcional. Es el parámetro de configuración de disponibilidad. |
Campo de unión
|
|
eventType |
Opcional. Es el tipo de evento. |
Campo de unión
|
|
workingLocationProperties |
Opcional. Propiedades de la ubicación de trabajo (si |
Asistente
| Representación JSON |
|---|
{ "id": string "email": string "displayName": string "organizer": boolean "self": boolean "resource": boolean "optionalAttendee": boolean "responseStatus": string "comment": string "additionalGuests": integer } |
| Campos | |
|---|---|
Campo de unión
|
|
id |
Solo salida. Es el ID del perfil. |
Campo de unión
|
|
email |
Obligatorio. Es la dirección de correo electrónico del asistente. |
Campo de unión
|
|
displayName |
Opcional. Nombre |
Campo de unión
|
|
organizer |
Solo salida. Indica si el asistente es el organizador. Valor predeterminado: |
Campo de unión
|
|
self |
Solo salida. Indica si esta entrada representa el calendario en el que aparece esta copia del evento. Valor predeterminado: |
Campo de unión
|
|
resource |
Opcional. Indica si el asistente es un recurso (por ejemplo, una sala). Es inmutable y solo se puede configurar cuando se agrega inicialmente el asistente. Valor predeterminado: |
Campo de unión
|
|
optionalAttendee |
Opcional. Indica si el asistente es opcional. Valor predeterminado: |
Campo de unión
|
|
responseStatus |
Opcional. Es el estado de la respuesta. Los valores posibles son:
|
Campo de unión
|
|
comment |
Solo salida. Comentario de la respuesta. |
Campo de unión
|
|
additionalGuests |
Opcional. Cantidad de huéspedes adicionales. Valor predeterminado: |
Recordatorio
| Representación JSON |
|---|
{ "method": string "minutes": integer } |
| Campos | |
|---|---|
Campo de unión
|
|
method |
Obligatorio. Es el método de publicación. Los valores posibles son:
|
Campo de unión
|
|
minutes |
Obligatorio. Minutos de antelación con los que se activa el recordatorio. |
GuestPermissions
| Representación JSON |
|---|
{ "guestsCanInviteOthers": boolean "guestsCanModify": boolean "guestsCanSeeGuests": boolean } |
| Campos | |
|---|---|
Campo de unión
|
|
guestsCanInviteOthers |
Opcional. Indica si los invitados pueden invitar a otras personas. |
Campo de unión
|
|
guestsCanModify |
Opcional. Indica si los invitados pueden modificar el evento. |
Campo de unión
|
|
guestsCanSeeGuests |
Opcional. Indica si los invitados pueden ver a otros invitados. |
Archivo adjunto
| Representación JSON |
|---|
{ "fileUrl": string "title": string } |
| Campos | |
|---|---|
Campo de unión
|
|
fileUrl |
Obligatorio. Es el vínculo URL al archivo adjunto. |
Campo de unión
|
|
title |
Opcional. Título del archivo adjunto. |
WorkingLocationProperties
| Representación JSON |
|---|
{
"type": enum ( |
| Campos | |
|---|---|
Campo de unión
|
|
type |
Opcional. Es el tipo de ubicación de trabajo. |
Campo de unión
|
|
customLocationLabel |
Opcional. Es la etiqueta de una ubicación personalizada. Es obligatorio si el tipo es |
NotificationLevel
Nivel de notificación por correo electrónico para las actualizaciones.
| Enums | |
|---|---|
NOTIFICATION_LEVEL_UNSPECIFIED |
Predeterminado. Se trata como ALL. |
NONE |
No hay notificaciones. |
EXTERNAL_ONLY |
Solo para asistentes externos. |
ALL |
Todos los asistentes |
Disponibilidad
Es el parámetro de configuración de disponibilidad de un evento.
| Enums | |
|---|---|
AVAILABILITY_UNSPECIFIED |
Predeterminado. Se trata como BUSY. |
AVAILABILITY_BUSY |
Bloquea tiempo en el calendario. |
AVAILABILITY_FREE |
No bloquea el tiempo. |
EventType
Es el tipo de evento. Es inmutable después de la creación.
| Enums | |
|---|---|
EVENT_TYPE_UNSPECIFIED |
Se trata como DEFAULT. |
DEFAULT |
Evento normal. Valor predeterminado |
OUT_OF_OFFICE |
Evento fuera de la oficina. |
FOCUS_TIME |
Es un evento de tiempo dedicado. |
WORKING_LOCATION |
Es un evento de ubicación de trabajo. |
BIRTHDAY |
Evento especial de todo el día con recurrencia anual. |
FROM_GMAIL |
Evento de Gmail. No se puede crear este tipo de evento. |
WorkingLocationType
Es el tipo de ubicación de trabajo.
| Enums | |
|---|---|
WORKING_LOCATION_TYPE_UNSPECIFIED |
No se especificó el tipo de ubicación de trabajo. Se tratará como HOME_OFFICE. |
HOME_OFFICE |
Oficina en casa |
CUSTOM_LOCATION |
Ubicación personalizada |
Esquema de salida
Evento
| Representación JSON |
|---|
{ "id": string, "status": string, "htmlLink": string, "created": string, "updated": string, "summary": string, "description": string, "location": string, "creator": { object ( |
| Campos | |
|---|---|
id |
Es un identificador único. |
status |
Opcional. Estado. Los valores posibles son:
|
htmlLink |
Solo salida. Es un vínculo absoluto a este evento en la IU web del Calendario de Google. |
created |
Solo salida. Hora de creación (ISO 8601). |
updated |
Solo salida. Hora de la última modificación (ISO 8601). |
summary |
Título. |
description |
Opcional. Descripción. Puede contener HTML. |
location |
Opcional. Ubicación. |
creator |
Solo salida. Creador. |
organizer |
Solo salida. Organizador. También se muestra en la lista de asistentes si asistes. |
start |
Hora de inicio (inclusive). En el caso de los eventos recurrentes, se usa la primera instancia. |
end |
Hora de finalización (no incluida). En el caso de los eventos recurrentes, se usa la primera instancia. |
recurrence[] |
Reglas de recurrencia como cadenas |
recurringEventId |
Es el ID del evento recurrente principal para las instancias de eventos recurrentes. |
originalStartTime |
Es la hora de inicio original de las instancias recurrentes. Es la fecha y hora en la que comenzaría esta instancia según los datos de recurrencia. |
transparency |
Opcional. Obsoleto: Usa |
visibility |
Opcional. Visibilidad del evento. Los valores posibles son:
|
attendees[] |
Asistentes |
conferenceUrl |
Vínculo de la videoconferencia. |
colorId |
Color del evento. Solo afecta tu vista del calendario. Es un ID que hace referencia a una entrada en la paleta de colores del calendario (cadena
|
overrideReminders[] |
Recordatorios. Si no se establece, se recurre a los valores predeterminados del calendario. |
attachments[] |
Archivos adjuntos |
guestPermissions |
Permisos de invitados |
eventType |
Es el tipo de evento. |
workingLocationProperties |
Son las propiedades de la ubicación de trabajo. Se propaga solo cuando |
availability |
Opcional. Es el parámetro de configuración de disponibilidad. |
Principal
| Representación JSON |
|---|
{ "email": string, "displayName": string, "self": boolean } |
| Campos | |
|---|---|
email |
el correo electrónico, |
displayName |
Nombre |
self |
Solo salida. Indica si este principal corresponde al calendario en el que aparece esta copia del evento. Valor predeterminado: |
DateOrDateTime
| Representación JSON |
|---|
{ "date": string, "dateTime": string, "timeZone": string } |
| Campos | |
|---|---|
date |
Fecha ISO 8601 a la medianoche (UTC; por ejemplo, |
dateTime |
Marca de tiempo ISO 8601 (por ejemplo, |
timeZone |
Nombre de la zona horaria de TZDB. |
Asistente
| Representación JSON |
|---|
{ "id": string "email": string "displayName": string "organizer": boolean "self": boolean "resource": boolean "optionalAttendee": boolean "responseStatus": string "comment": string "additionalGuests": integer } |
| Campos | |
|---|---|
Campo de unión
|
|
id |
Solo salida. Es el ID del perfil. |
Campo de unión
|
|
email |
Obligatorio. Es la dirección de correo electrónico del asistente. |
Campo de unión
|
|
displayName |
Opcional. Nombre |
Campo de unión
|
|
organizer |
Solo salida. Indica si el asistente es el organizador. Valor predeterminado: |
Campo de unión
|
|
self |
Solo salida. Indica si esta entrada representa el calendario en el que aparece esta copia del evento. Valor predeterminado: |
Campo de unión
|
|
resource |
Opcional. Indica si el asistente es un recurso (por ejemplo, una sala). Es inmutable y solo se puede configurar cuando se agrega inicialmente el asistente. Valor predeterminado: |
Campo de unión
|
|
optionalAttendee |
Opcional. Indica si el asistente es opcional. Valor predeterminado: |
Campo de unión
|
|
responseStatus |
Opcional. Es el estado de la respuesta. Los valores posibles son:
|
Campo de unión
|
|
comment |
Solo salida. Comentario de la respuesta. |
Campo de unión
|
|
additionalGuests |
Opcional. Cantidad de huéspedes adicionales. Valor predeterminado: |
Recordatorio
| Representación JSON |
|---|
{ "method": string "minutes": integer } |
| Campos | |
|---|---|
Campo de unión
|
|
method |
Obligatorio. Es el método de publicación. Los valores posibles son:
|
Campo de unión
|
|
minutes |
Obligatorio. Minutos de antelación con los que se activa el recordatorio. |
Archivo adjunto
| Representación JSON |
|---|
{ "fileUrl": string "title": string } |
| Campos | |
|---|---|
Campo de unión
|
|
fileUrl |
Obligatorio. Es el vínculo URL al archivo adjunto. |
Campo de unión
|
|
title |
Opcional. Título del archivo adjunto. |
GuestPermissions
| Representación JSON |
|---|
{ "guestsCanInviteOthers": boolean "guestsCanModify": boolean "guestsCanSeeGuests": boolean } |
| Campos | |
|---|---|
Campo de unión
|
|
guestsCanInviteOthers |
Opcional. Indica si los invitados pueden invitar a otras personas. |
Campo de unión
|
|
guestsCanModify |
Opcional. Indica si los invitados pueden modificar el evento. |
Campo de unión
|
|
guestsCanSeeGuests |
Opcional. Indica si los invitados pueden ver a otros invitados. |
WorkingLocationProperties
| Representación JSON |
|---|
{
"type": enum ( |
| Campos | |
|---|---|
Campo de unión
|
|
type |
Opcional. Es el tipo de ubicación de trabajo. |
Campo de unión
|
|
customLocationLabel |
Opcional. Es la etiqueta de una ubicación personalizada. Es obligatorio si el tipo es |
EventType
Es el tipo de evento. Es inmutable después de la creación.
| Enums | |
|---|---|
EVENT_TYPE_UNSPECIFIED |
Se trata como DEFAULT. |
DEFAULT |
Evento normal. Valor predeterminado |
OUT_OF_OFFICE |
Evento fuera de la oficina. |
FOCUS_TIME |
Es un evento de tiempo dedicado. |
WORKING_LOCATION |
Es un evento de ubicación de trabajo. |
BIRTHDAY |
Evento especial de todo el día con recurrencia anual. |
FROM_GMAIL |
Evento de Gmail. No se puede crear este tipo de evento. |
WorkingLocationType
Es el tipo de ubicación de trabajo.
| Enums | |
|---|---|
WORKING_LOCATION_TYPE_UNSPECIFIED |
No se especificó el tipo de ubicación de trabajo. Se tratará como HOME_OFFICE. |
HOME_OFFICE |
Oficina en casa |
CUSTOM_LOCATION |
Ubicación personalizada |
Disponibilidad
Es el parámetro de configuración de disponibilidad de un evento.
| Enums | |
|---|---|
AVAILABILITY_UNSPECIFIED |
Predeterminado. Se trata como BUSY. |
AVAILABILITY_BUSY |
Bloquea tiempo en el calendario. |
AVAILABILITY_FREE |
No bloquea el tiempo. |
Anotaciones de herramientas
Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌
Alcances de la autorización
Se necesita uno de los siguientes alcances de OAuth:
https://www.googleapis.com/auth/calendarhttps://www.googleapis.com/auth/calendar.events