cancel_meeting
ChatGPTAnnule une réunion du calendrier dont l'utilisateur est l'organisateur : les invités reçoivent la notification d'annulation, et la séance Klee liée est SUPPRIMÉE avec sa préparation (sauf séance en cours ou terminée, qui est préservée). IMPÉRATIF : avant l'appel, récapituler à l'utilisateur ce qui va se passer — invités notifiés ET sort de la séance liée (avec ses objectifs/contexte) — et obtenir sa confirmation explicite.
create_live_session
ChatGPTPrépare une séance pour l'assistant live Klee : titre, objectifs (la to-do vivante suivie pendant la réunion), participants, contexte, durée. La séance apparaît dans l'onglet Live de l'app mobile et sur le web. Utiliser list_projects pour lier un projet. Avec teams_event_id (obtenu via list_upcoming_meetings), la séance est liée à la réunion du calendrier : titre, horaire, durée et participants sont pré-remplis depuis le calendrier — les arguments explicites gardent la priorité, title devient optionnel.
create_meeting
ChatGPTCrée une réunion dans le calendrier Microsoft/Teams de l'utilisateur. Les invitations sont envoyées IMMÉDIATEMENT par Exchange aux invités (avec le lien Teams si réunion en ligne, et l'ordre du jour dans le corps du mail). IMPÉRATIF : avant d'appeler cet outil, présenter à l'utilisateur le récapitulatif complet — objet, date et heures, réunion en ligne ou présentiel (lieu), chaque invité avec son adresse email, corps de l'invitation — et obtenir sa confirmation explicite. Résoudre les adresses via les membres de projet (list_projects) ou les réunions du calendrier (list_upcoming_meetings) ; sinon demander l'adresse à l'utilisateur. Réunions ponctuelles uniquement (pas de récurrence). Chaîner ensuite create_live_session(teams_event_id=…) pour préparer la séance Klee liée.
create_project
ChatGPTCrée un projet (l'utilisateur en devient propriétaire). Renvoie l'id — chaîner move_transcription pour y ranger des transcriptions, et update_project_keywords pour poser son vocabulaire. Échoue si un projet du même nom existe déjà.
get_quota
ChatGPTQuota mensuel de transcription de l'utilisateur (minutes utilisées / disponibles).
get_transcription
ChatGPTDétails d'une transcription + download_url temporaire (30 min). Pour récupérer le fichier sans le charger dans le contexte, exécuter : curl -sS -o '<chemin/fichier>' '<download_url>'. Mettre include_text=true seulement si le contenu doit être lu dans la conversation (coûteux en contexte).
get_upload_link
ChatGPTQuand l'utilisateur veut transcrire un enregistrement ou un fichier audio/vidéo que cet assistant ne peut pas transmettre (pièce jointe sans URL publique, bac à sable sans réseau — cas de ChatGPT) : rend un lien de connexion directe (usage unique, 10 min) vers la page de dépôt de Klee, déjà connectée au compte de l'utilisateur. Lui proposer ce lien ; une fois le fichier déposé, la transcription apparaît dans list_transcriptions et se lit avec get_transcription. When the user wants to transcribe a recording this assistant cannot upload itself, give them this link.
list_live_sessions
ChatGPTListe les séances live préparées de l'utilisateur (id, titre, statut, date, objectifs).
list_project_participants
ChatGPTRéférentiel d'intervenants d'un projet (nom, fonction, société) — construit par capture automatique au fil des transcriptions. Sert de suggestions au lancement d'une transcription et nourrit l'identification des locuteurs.
list_projects
ChatGPTListe les projets Klee de l'utilisateur (id, nom, mots-clés, nombre de transcriptions, membres avec noms et emails — utile pour résoudre les invités de create_meeting).
list_transcriptions
ChatGPTListe les transcriptions accessibles (les siennes + celles des projets partagés), de la plus récente à la plus ancienne. Utiliser only_new=true pour ne voir que les transcriptions terminées pas encore livrées (pas encore récupérées par l'utilisateur). Réponse : {items, count, has_more} — si has_more=true, la liste est tronquée : augmenter limit ou affiner les filtres.
list_upcoming_meetings
ChatGPTListe les réunions à venir du calendrier Microsoft/Teams de l'utilisateur (3 prochaines semaines) : event_id, sujet, horaires, organisateur, participants (noms ET emails — utile pour résoudre les invités de create_meeting), réunion en ligne ou non, lieu. Nécessite un compte Microsoft connecté dans Klee. Sert à préparer une séance live liée via create_live_session(teams_event_id=…).
mark_delivered
ChatGPTMarque des transcriptions comme livrées (récupérées) pour l'utilisateur courant. À appeler après avoir téléchargé et rangé les fichiers.
move_transcription
ChatGPTDéplace une transcription vers un projet dont l'utilisateur est membre (utiliser list_projects pour les ids). Effet immédiat et réversible. Combiné à create_project et rename_transcription, permet de ranger des transcriptions en conversation.
rename_transcription
ChatGPTRenomme une transcription (son titre affiché partout : listes, exports, PV). Effet immédiat et réversible. Utiliser list_transcriptions ou search_transcriptions pour trouver l'id.
search_transcriptions
ChatGPTRecherche plein-texte dans le CONTENU des transcriptions terminées (texte, synthèse, nom de fichier), insensible à la casse. Renvoie les transcriptions correspondantes avec des extraits autour des occurrences — sans charger les transcripts entiers en contexte. La correspondance est une sous-chaîne exacte : préférer des mots-clés courts et retenter avec des variantes si besoin. Réponse : {items: [{id, filename, project, created_at, match_count, excerpts}], count, has_more}.
update_live_session
ChatGPTComplète ou modifie une séance live existante (créée dans l'app ou via MCP) : contexte, objectifs (remplace la liste), titre, horaire, durée. Utiliser list_live_sessions pour trouver l'id.
update_meeting
ChatGPTModifie une réunion du calendrier dont l'utilisateur est l'organisateur (event_id via list_upcoming_meetings). Graph NOTIFIE les invités du changement. IMPÉRATIF : présenter les changements à l'utilisateur et obtenir sa confirmation explicite avant l'appel. Si une séance Klee est liée à la réunion, elle est resynchronisée automatiquement (horaire, durée, participants — contexte et objectifs intacts).
update_my_keywords
ChatGPTAjoute et/ou retire des mots-clés du dictionnaire PERSONNEL de l'utilisateur, appliqué à toutes ses transcriptions dans tous ses projets (noms propres, sigles, jargon). Un mot ajouté est retiré de ses projets non partagés où il figurait (il reste dans les projets partagés). Fournir add et/ou remove ; insensible à la casse. Sans argument : renvoie la liste et les suggestions (mots présents dans au moins deux projets). 500 mots au plus.
update_project_keywords
ChatGPTAjoute et/ou retire des mots-clés d'un projet (vocabulaire qui améliore la qualité de transcription des audios du projet). Fournir add et/ou remove ; détection des doublons et retraits insensible à la casse. Un mot déjà présent dans les mots-clés personnels de l'utilisateur (update_my_keywords) n'est pas ajouté : il s'applique déjà. Renvoie la liste résultante complète.
update_project_participants
ChatGPTAjoute, met à jour et/ou retire des intervenants du référentiel d'un projet. add : liste d'intervenants (name requis ; title/company optionnels — un name déjà présent met à jour sa fonction/société). remove : liste de noms à retirer (insensible à la casse). Renvoie le référentiel résultant complet.