MCP Reference: calendarmcp.googleapis.com

Un servidor del Protocolo de contexto del modelo (MCP) actúa como proxy entre un servicio externo que proporciona contexto, datos o capacidades a un modelo de lenguaje grande (LLM) o una aplicación de IA. Los servidores de MCP conectan las aplicaciones de IA a sistemas externos, como bases de datos y servicios web, y traducen sus respuestas a un formato que la aplicación de IA pueda entender.

Herramientas de MCP

Una herramienta de MCP es una función o capacidad ejecutable que un servidor de MCP expone a un LLM o a una aplicación de IA para realizar una acción en el mundo real.

El servidor de MCP de calendarmcp.googleapis.com tiene las siguientes herramientas:

Herramientas de MCP
list_events

Enumera los eventos de calendario en un calendario determinado que satisfacen las condiciones especificadas.

Funciones clave:

  • Cualquier ID de calendario, que puede ser el calendario principal del usuario o cualquier otro.
  • Concordancia de palabras clave
  • Filtrado por intervalo de tiempo
  • Recupera TODOS los eventos que coinciden con las restricciones de tiempo y palabras clave.

En su lugar, usa la herramienta search_events en los siguientes casos:

  • Debes encontrar los eventos más relevantes (los K principales) en lugar de todos los eventos que satisfacen las restricciones.
  • Necesitas capacidades de búsqueda semántica.
  • Solo buscas información específica en el calendario principal del usuario.

Usa esta herramienta para consultas como las siguientes:

  • ¿Qué tengo en mi calendario mañana?
  • ¿Qué eventos tengo en mi calendario el 14 de julio de 2025?
  • ¿Cuáles son mis reuniones de la próxima semana?
  • ¿Tengo algún conflicto esta tarde?

Ejemplo:

list_events(
    start_time='2024-09-17T06:00:00',
    end_time='2024-09-17T12:00:00',
    page_size=10
)
# Returns up to 10 calendar events between 6:00 AM and 12:00 PM on September 17, 2024 from the user's primary calendar.
get_event

Devuelve un solo evento de un calendario determinado.

Usa esta herramienta para consultas como las siguientes:

  • Obtén detalles de la reunión del equipo.
  • Muéstrame el evento con el ID event123 en mi calendario.

Ejemplo:

get_event(
    event_id='event123'
)
# Returns the event details for the event with id `event123` on the user's primary calendar.
list_calendars

Devuelve los calendarios de la lista de calendarios del usuario.

Usa esta herramienta para consultas como las siguientes:

  • ¿Cuáles son todos mis calendarios?

Ejemplo:

list_calendars()
# Returns all calendars the authenticated user has access to.
suggest_time

Sugiere períodos en uno o más calendarios. Para acceder al calendario principal, agrega "primary" en el campo attendee_emails.

Usa esta herramienta para consultas como las siguientes:

  • ¿Cuándo estamos todos disponibles para una reunión?
  • Busca un horario de 30 minutos en el que ambos estén disponibles.
  • Consulta si jane.doe@google.com está disponible el lunes por la mañana.

Ejemplo:

suggest_time(
    attendee_emails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    start_time='2024-09-10T00:00:00',
    end_time='2024-09-17T00:00:00',
    duration_minutes=60,
    preferences={
        'start_hour': '09:00',
        'end_hour': '17:00',
        'exclude_weekends': True
    }
)
# Returns up to 5 suggested time slots where both users are available for at least one hour between 9:00 AM and 5:00 PM on weekdays from September 10 through September 16, 2024.
create_event

Crea un evento de calendario.

Usa esta herramienta para consultas como las siguientes:

  • Crea un evento en mi calendario para mañana a las 2 p.m. llamado "Reunión con Ana".
  • Programa una reunión con john.doe@google.com el próximo lunes de 10 a.m. a 11 a.m.

Ejemplo:

create_event(
    summary='Meeting with Jane',
    start_time='2024-09-17T14:00:00',
    end_time='2024-09-17T15:00:00'
)
# Creates an event on the primary calendar for September 17, 2024 from 2pm to 3pm called 'Meeting with Jane'.
update_event

Actualiza un evento de calendario.

Usa esta herramienta para consultas como las siguientes:

  • Actualiza el evento "Reunión con Ana" para que sea una hora más tarde.
  • Agrega a john.doe@google.com a la reunión de mañana.

Ejemplo:

update_event(
    event_id='event123',
    summary='Meeting with Jane and John'
)
# Updates the summary of event with id 'event123' on the primary calendar to 'Meeting with Jane and John'.
delete_event

Borra un evento de calendario.

Usa esta herramienta para consultas como las siguientes:

  • Borra el evento con el ID event123 de mi calendario.

Para cancelar o rechazar un evento, usa la herramienta respond_to_event.

Ejemplo:

delete_event(
    event_id='event123'
)
# Deletes the event with id 'event123' on the user's primary calendar.
respond_to_event

Responde a un evento.

Usa esta herramienta para consultas como las siguientes:

  • Acepta el evento con el ID event123 en mi calendario.
  • Rechaza la reunión con Jane.
  • Cancela mi próxima reunión.
  • Acepta provisoriamente la reunión de planificación.

Ejemplo:

respond_to_event(
    event_id='event123',
    response_status='accepted'
)
# Responds with status 'accepted' to the event with id 'event123' on the user's primary calendar.

Obtén las especificaciones de la herramienta de MCP

Para obtener las especificaciones de las herramientas de MCP para todas las herramientas en un servidor de MCP, usa el método tools/list. En el siguiente ejemplo, se muestra cómo usar curl para enumerar todas las herramientas y sus especificaciones disponibles actualmente en el servidor de MCP.

Solicitud de Curl
curl --location 'https://calendarmcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'