Fonctionnement
Studeia implémente le Model Context Protocol (MCP) avec le transport Streamable HTTP et OAuth 2.1 (enregistrement dynamique de client, PKCE S256, refresh token rotatif). L'assistant IA se connecte avec votre compte, et non avec une clé de l'établissement : tout ce qu'il fait passe par les mêmes règles de permission que l'interface web et est enregistré dans l'audit.
| Administrateur de l'établissement | Coordinateur / responsable pédagogique | Enseignant | |
|---|---|---|---|
| Qui active le connecteur | Oui | Non | Non |
| Lecture | Tout le tenant : cours, leçons, élèves, groupes-classes, notes, rapports, paramètres | Tout le tenant, sauf les paramètres IA et du tenant | Cours qu'il crée, sur lesquels il collabore ou qu'il enseigne ; élèves de ses classes |
| Écriture | Cours, modules, leçons, guides de l'enseignant, personnes, groupes-classes, inscriptions, notes, gamification, automatisations, paramètres | Idem, sauf 14 outils de configuration | Cours, leçons, notes et sessions en direct de ses cours |
| Outils visibles | 139 | 125 | 76 |
| Hors de portée | Facturation, SSO/SCIM, clés de fournisseurs, uploads, le toggle du connecteur lui-même | idem | idem |
Les captures d'écran de ce guide montrent Studeia en portugais et ChatGPT/Claude dans la langue et le thème du compte utilisé (portugais, thème sombre) ; les noms des menus peuvent varier selon la version et la langue de votre assistant.
1. Activer dans l'établissement (admin)
- Accédez à Paramètres → Connecteurs IA (ChatGPT / Claude).
- Activez Autoriser les connexions via MCP. Désactivez éventuellement Les enseignants peuvent également se connecter (les enseignants sont alors limités aux cours et groupes-classes qu'ils enseignent).
- Copiez l'URL du serveur MCP — généralement
https://<slug>.studeia.com/api/mcp. Si l'établissement dispose d'un domaine personnalisé vérifié, il apparaît comme première option ; l'adresse principalehttps://studeia.com/api/mcpfonctionne également.

Désactiver le connecteur révoque immédiatement toutes les connexions actives. Désactiver uniquement l'option enseignants révoque uniquement les connexions des enseignants.
La liste Connexions actives affiche chaque connexion avec l'utilisateur, le rôle, l'assistant (ChatGPT ou Claude), les permissions, la date d'autorisation et la dernière utilisation — avec le bouton Révoquer sur chaque ligne.

2. Se connecter dans Claude (web, Desktop et mobile)
- Dans le chat, cliquez sur + → Connecteurs → Ajouter un connecteur (ou Paramètres → Connecteurs).
- Dans Ajouter un connecteur personnalisé, donnez un nom (ex. : « MCP Studeia ») et collez l'URL du serveur MCP. Il n'y a pas de Client ID/Secret à renseigner — l'enregistrement est automatique ; si des champs avancés apparaissent, laissez-les vides.
- Cliquez sur Continuer : vous serez redirigé vers la connexion Studeia (si vous n'êtes pas encore connecté) et vers l'écran de consentement.
- Examinez les permissions (lecture, écriture, 30 jours) et l'avis de confidentialité → Autoriser. Le connecteur apparaît dans + → Connecteurs avec un interrupteur ; dans Gérer les connecteurs, vous pouvez voir et activer/désactiver chaque outil.


Tutoriel complet avec captures : Connecter Claude à votre LMS.
Claude Code (terminal)
claude mcp add --transport http studeia https://<slug>.studeia.com/api/mcp
Ouvrez /mcp dans la session et choisissez Authenticate : Claude Code ouvre le navigateur pour le consentement et reçoit le retour sur http://localhost:<port>/callback. L'écran de consentement avertit que le retour va vers une adresse locale — ne continuez que si c'est vous qui avez initié la connexion sur votre ordinateur.

Tutoriel complet : Claude Code + LMS.
3. Se connecter dans ChatGPT
- Paramètres → Plugins → Mode développeur → activez Mode développeur (ChatGPT le signale comme Risque élevé car il accepte des serveurs non vérifiés par OpenAI — c'est attendu).
- Dans Plugins, cliquez sur + (Nouveau plugin) : nom (ex. : « MCP Studeia ») → Connexion URL du serveur → collez l'URL → Authentification OAuth → cochez Je comprends et je souhaite continuer → Créer.
- Finalisez la connexion et le consentement Studeia. La page du plugin affiche désormais votre compte dans Comptes connectés, le bloc Permissions et la liste Actions (chaque outil, avec le badge Écriture pour ceux qui modifient des données).
- Dans le chat, cliquez sur + et choisissez MCP Studeia. Avec la permission par défaut (Autoriser les actions à faible risque), ChatGPT demande une confirmation avant chaque action d'écriture ; Autoriser toutes les actions supprime cette pause.


Les outils search et fetch suivent le contrat ChatGPT, donc le connecteur fonctionne également en recherche approfondie (deep research).
Tutoriel complet : Connecter ChatGPT à votre LMS.
4. Ce que vous pouvez demander à l'assistant
Exemples concrets, par domaine :
- Rapports : « Faites un rapport de la classe 3e A avec les élèves en difficulté et les compétences les moins maîtrisées. »
- Leçons : « Listez les leçons du cours Compétences numériques sans guide de l'enseignant et créez un guide pour la leçon 4. »
- Contenu : « Réécrivez les diapositives de la leçon Coffre numérique dans un langage plus simple et publiez. »
- Personnes : « Quels utilisateurs n'ont jamais accédé à la plateforme ? Exportez sous forme de tableau. »
- Notes : « Attribuez 8,0 à l'élève X pour l'évaluation Y et montrez-moi la moyenne de la classe. »
- Évaluation : « Créez une banque de questions sur les fractions avec 10 questions à choix multiples et une rubrique à 3 critères. »
- Sessions en direct : « Planifiez une session en direct pour la classe B vendredi à 10h et dites-moi qui était absent lors de la dernière. »
- Gamification : « Créez un badge "Grand lecteur" pour ceux qui terminent le module 2 et récompensez les 3 premiers. »
- Automatisations : « Créez une automatisation qui envoie une notification à l'élève lorsqu'il n'a pas accédé à la plateforme depuis 7 jours. »
- Configuration (admin) : « Ajustez le prompt du tuteur IA pour répondre en français et montrez le coût IA de ce mois. »
5. Catalogue des outils (139)
| Domaine | Exemples | Outils | Qui voit |
|---|---|---|---|
| Établissement | get_tenant_overview, update_tenant_settings, list_audit_events, outils intégrés, modèle de rapport | 9 | admin (paramètres : institution_admin uniquement) |
| Cours et modules | list_courses, get_course, create_course, publish_course, reorder_modules, clone_course, export_course_cartridge (IMS CC), révision par IA, RAG du cours, collaborateurs | 19 | enseignant (créer/cloner : admin) |
| Leçons | get_lesson, create_lesson, update_lesson_content (validé par type), update_lesson_teacher_guide, bulk_update_lessons, populate_lesson_with_ai, configuration du quiz | 11 | enseignant |
| Personnes, groupes-classes et inscriptions | list_users, create_user, invitations, tags, create_class_group, enroll_student, update_enrollment | 18 | groupes-classes/inscriptions : enseignant en lecture ; gestion des personnes : admin |
| Évaluation | get_gradebook, record_grades, export_gradebook_csv, compétences et référentiels, banques de questions, rubriques, get_quiz_analytics | 19 | enseignant (référentiels : admin) |
| Rapports | get_student_report, get_course_report, get_tutor_efficacy_report | 3 | enseignant (efficacité du tuteur : admin) |
| Réponses des élèves | list_student_quiz_attempts, get_quiz_attempt (question par question), get_activity_attempt, list_student_tutor_quizzes, get_assignment_submission, grade_assignment_submission, release_quiz_results | 9 | enseignant (élèves de ses classes) |
| Médias et communication | search_media, get_media_transcription, list_announcements, sessions en direct (planifier, démarrer, terminer, présence) | 11 | enseignant |
| Gamification | configuration globale et par cours, badges, award_badge, concours, récompenses, échanges, analytics | 18 | enseignant (badges par cours) ; admin (global) |
| Automatisations | list_automations, create_automation, toggle_automation, test_automation, historique d'exécutions | 8 | admin |
| Configuration IA | prompts du tuteur, limites IA, routage des modèles, configuration pédagogique, analytics IA, lacunes du RAG | 10 | institution_admin (analytics : admin) |
| Recherche | search, fetch (contrat ChatGPT) | 2 | tous |
| Générique | list_api_endpoints, call_institution_api — accède à l'API institutionnelle documentée | 2 | tous (avec les permissions du rôle) |
Totaux : 139 outils — 69 en lecture et 70 en écriture. Les outils d'écriture n'apparaissent que lorsque la connexion dispose de la portée écriture. Ressources MCP disponibles pour l'assistant : studeia://docs/lesson-content-schemas (schémas de tous les types de leçons), studeia://docs/api-endpoints (endpoints accessibles) et studeia://tenant/summary (qui est connecté, rôle et portées).
Non disponible via MCP : upload de fichiers, facturation, SSO/SCIM, clés de fournisseurs IA et vidéo, création d'annonces et la configuration du connecteur lui-même.
6. Comment limiter la portée
La portée de la connexion est demandée par l'assistant (lecture, écriture, 30 jours), elle n'est pas choisie dans Studeia. Pour travailler avec moins de pouvoir :
- Dans Claude : dans Gérer les connecteurs → MCP Studeia, désactivez les outils d'écriture que vous ne souhaitez pas exposer ; Claude demande également une permission pour chaque outil (« Autoriser une fois » / « Toujours autoriser »).
- Dans ChatGPT : maintenez la permission du plugin sur Autoriser les actions à faible risque (par défaut) — chaque outil marqué comme Écriture demande une confirmation avant de s'exécuter ; Autoriser toutes les actions supprime cette pause.
- Dans Claude Code : refusez la permission lorsque l'assistant demande à utiliser un outil d'écriture, ou n'approuvez que ceux en lecture.
- En tant qu'admin : désactivez Les enseignants peuvent également se connecter pour limiter le connecteur aux administrateurs, coordinateurs et responsables pédagogiques.
- Toujours : révoquez la connexion lorsque vous avez terminé — elle expire automatiquement au bout de 30 jours.
7. Sécurité et cycle de vie du token
- OAuth 2.1 avec PKCE S256 obligatoire ; l'enregistrement dynamique n'accepte que les callbacks de Claude, de ChatGPT et en loopback (
http://localhost:<port>/callback). - Tokens opaques : la base de données ne stocke que le hash. Le token d'accès dure 1 heure ; le refresh token est rotatif (la réutilisation d'un ancien refresh token révoque toute la connexion) et la connexion expire au maximum 30 jours après le consentement.
- Lié à l'adresse : un token émis sur
ecole.studeia.comn'est pas valable surstudeia.com— reconnectez-vous via la même adresse si vous changez de domaine. - Rôle et établissement relus à chaque appel : si l'utilisateur change de rôle ou quitte l'établissement, la connexion est automatiquement révoquée.
- Limite d'appels par connexion : 1 000/heure sur la démo et 5 000/heure sur les plans payants ; limites par IP sur les endpoints OAuth.
- Les administrateurs globaux de la plateforme et les sessions d'impersonation ne peuvent pas autoriser de connexions.
8. Audit
Toute la vie de la connexion génère des événements mcp.* dans les journaux de l'établissement : enregistrement du client, consentement accordé/refusé, token émis/renouvelé, réutilisation de refresh détectée, révocation, modification de configuration et chaque appel d'outil (mcp.tool_call), avec le nom de l'outil, les identifiants concernés, le succès et la durée — jamais le contenu envoyé ou reçu. Dans Journaux, filtrez l'action par mcp..

9. Conformité et données des élèves
- Les données que l'assistant consulte (y compris les données de mineurs) sont traitées par le fournisseur du compte de l'utilisateur — OpenAI ou Anthropic — en dehors de Studeia. L'écran de consentement le précise explicitement.
- L'établissement est le responsable du traitement et répond de l'usage légitime : utilisez le connecteur à des fins pédagogiques, ne demandez que le nécessaire (minimisation), révoquez les connexions inactives et vérifiez le contrat de traitement des données (DPA) du fournisseur IA.
- Ce qui reste dans Studeia : la connexion (client, portées, dates) et les événements d'audit — jamais le contenu des conversations. Les connexions de l'utilisateur sont incluses dans l'exportation des données personnelles et peuvent être révoquées à tout moment.
Problèmes courants
| Symptôme | Cause probable | Que faire |
|---|---|---|
| « Couldn't reach the MCP server » dans Claude | URL incorrecte ou connecteur désactivé | Utilisez exactement https://<slug>.studeia.com/api/mcp et vérifiez le toggle dans Paramètres |
| Erreur de redirect_uri lors de l'enregistrement | Client non supporté | Seuls Claude, ChatGPT et les clients avec callback local (Claude Code) sont acceptés |
| « L'établissement n'a pas encore activé les connecteurs IA » | Toggle désactivé | Demandez à l'administrateur d'activer dans Paramètres → Connecteurs IA |
| « L'établissement ne permet pas aux enseignants de se connecter » | Option enseignants désactivée | Demandez à l'administrateur d'activer Les enseignants peuvent également se connecter |
| Demande d'autorisation expirée ou invalide | Le consentement a pris plus de 10 min ou a été rouvert | Recommencez la connexion depuis l'assistant |
| 401 après changement de domaine | Token lié à l'adresse d'origine | Reconnectez-vous en utilisant la même URL |
| L'outil répond forbidden | Enseignant hors du cours/groupe ou action réservée à l'admin | Vérifiez le rôle et si le cours fait partie de ceux que vous enseignez |
| 429 | Limite d'appels par heure atteinte | Attendez ou réduisez les requêtes par lot |
| Demande de connexion à nouveau après des semaines | La connexion a atteint 30 jours | Autorisez à nouveau — c'est le comportement attendu |
| Impossible d'autoriser pendant le support | Session d'impersonation | L'impersonation n'autorise jamais les connexions IA |

Pour les développeurs
- Découverte :
/.well-known/oauth-protected-resource/api/mcpet/.well-known/oauth-authorization-server(relatifs au host). POST /api/mcpsans token répond401avecWWW-Authenticate: Bearer resource_metadata=….- Portées :
read,write,offline_access. Préfixes de token :mcp_at_(accès) etmcp_rt_(refresh). - Les routes de gestion du connecteur (
/api/institution/mcp/*) n'acceptent que la session web — jamais une clé API ni un token MCP. Consultez le groupe « MCP (ChatGPT / Claude) » dans la référence de l'API. - L'automatisation sans utilisateur humain (CI, scripts) doit utiliser l'API publique avec clé
mia_: le consentement MCP est toujours interactif.