MCP Reference: calendarmcp.googleapis.com

Il s'agit d'un serveur MCP fourni par l'API Google Agenda. Le serveur fournit aux développeurs des outils pour créer des applications LLM sur Agenda.

Un serveur MCP (Model Context Protocol) sert de proxy entre un service externe qui fournit du contexte, des données ou des capacités à un grand modèle de langage (LLM) ou à une application d'IA. Les serveurs MCP connectent les applications d'IA à des systèmes externes tels que des bases de données et des services Web, et traduisent leurs réponses dans un format que l'application d'IA peut comprendre.

Configuration du serveur

Vous devez configurer le serveur MCP Agenda avant de l'utiliser. Pour en savoir plus sur l'utilisation des serveurs MCP distants Google et Google Cloud, consultez Présentation des serveurs MCP Google Cloud.

Points de terminaison du serveur

Un point de terminaison de service MCP est l'adresse réseau et l'interface de communication (généralement une URL) du serveur MCP qu'une application d'IA (l'hôte du client MCP) utilise pour établir une connexion sécurisée et standardisée. Il s'agit du point de contact permettant au LLM de demander du contexte, d'appeler un outil ou d'accéder à une ressource. Les points de terminaison Google MCP peuvent être globaux ou régionaux.

Le serveur MCP de l'API Calendar possède le point de terminaison MCP global suivant :

  • https://calendarmcp.googleapis.com/mcp/v1

Outils MCP

Un outil MCP est une fonction ou une capacité exécutable qu'un serveur MCP expose à un LLM ou à une application d'IA pour effectuer une action dans le monde réel.

Outils

Le serveur MCP calendarmcp.googleapis.com comporte les outils suivants :

Outils MCP
list_events

Répertorie les événements d'agenda dans un agenda donné qui répondent aux conditions spécifiées.

Principales fonctionnalités :

  • Tout ID d'agenda, qui peut être l'agenda principal de l'utilisateur ou d'autres agendas.
  • La correspondance des mots clés.
  • Filtrage par période.
  • Récupère TOUS les événements correspondant aux contraintes de temps et de mots clés.

Utilisez plutôt l'outil search_events si :

  • Vous devez trouver les événements les plus pertinents (K premiers) plutôt que tous les événements qui répondent aux contraintes.
  • Vous avez besoin de fonctionnalités de recherche sémantique.
  • Vous ne recherchez des informations spécifiques que dans l'agenda principal de l'utilisateur.

Utilisez cet outil pour les requêtes telles que :

  • Qu'y a-t-il dans mon agenda demain ?
  • Qu'y a-t-il dans mon agenda pour le 14 juillet 2025 ?
  • Quelles sont mes réunions la semaine prochaine ?
  • Est-ce que j'ai des réunions qui se chevauchent cet après-midi ?

Exemple :

list_events(
    startTime='2024-09-17T06:00:00',
    endTime='2024-09-17T12:00:00',
    pageSize=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

Renvoie un seul événement d'un agenda donné.

Utilisez cet outil pour les requêtes telles que :

  • Obtenez des informations sur la réunion d'équipe.
  • Montre-moi l'événement event123 dans mon agenda.

Exemple :

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

Renvoie les agendas de la liste d'agendas de l'utilisateur.

Utilisez cet outil pour les requêtes telles que :

  • Quels sont tous mes agendas ?

Exemple :

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

suggère des périodes dans un ou plusieurs agendas. Pour accéder à l'agenda principal, ajoutez "primary" (principal) dans le champ attendee_emails.

Utilisez cet outil pour les requêtes telles que :

  • Quand serons-nous tous disponibles pour une réunion ?
  • Trouve un créneau de 30 minutes où nous sommes tous les deux disponibles.
  • Vérifie si jane.doe@google.com est disponible lundi matin.

Exemple :

suggest_time(
    attendeeEmails=['joedoe@gmail.com', 'janedoe@gmail.com'],
    startTime='2024-09-10T00:00:00',
    endTime='2024-09-17T00:00:00',
    durationMinutes=60,
    preferences={
        'startHour': '09:00',
        'endHour': '17:00',
        'excludeWeekends': 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

Crée un événement d'agenda.

Utilisez cet outil pour les requêtes telles que :

  • Crée un événement dans mon agenda pour demain à 14h qui s'appelle "Réunion avec Jane".
  • Planifie une réunion avec john.doe@google.com lundi prochain de 10h à 11h.

Exemple :

create_event(
    summary='Meeting with Jane',
    startTime='2024-09-17T14:00:00',
    endTime='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

Met à jour un événement d'agenda.

Utilisez cet outil pour les requêtes telles que :

  • Reprogramme la réunion avec Jane à une heure plus tard.
  • Ajoute john.doe@google.com à la réunion de demain.

Exemple :

update_event(
    eventId='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

Supprime un événement d'agenda.

Utilisez cet outil pour les requêtes telles que :

  • Supprime l'événement event123 de mon agenda.

Pour annuler ou refuser un événement, utilisez plutôt l'outil respond_to_event.

Exemple :

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

Répond à un événement.

Utilisez cet outil pour les requêtes telles que :

  • Accepte l'événement portant l'ID event123 dans mon agenda.
  • Refuse la réunion avec Jane.
  • Annule ma prochaine réunion.
  • Acceptez provisoirement la réunion de planification.

Exemple :

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

Obtenir les spécifications de l'outil MCP

Pour obtenir les spécifications des outils MCP pour tous les outils d'un serveur MCP, utilisez la méthode tools/list. L'exemple suivant montre comment utiliser curl pour lister tous les outils et leurs spécifications actuellement disponibles sur le serveur MCP.

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