MCP
Connectez votre plateforme Elium à ChatGPT, Claude, Microsoft Copilot Studio ou votre propre système.
Mis à jour le 14 octobre 2026
À propos
Le Model Context Protocol (MCP) est une norme ouverte qui permet aux modèles d’IA et aux applications externes d’accéder en toute sécurité à des données contextuelles et en temps réel provenant de systèmes connectés. Dans le cadre d’Elium, MCP établit un pont fluide entre votre base de connaissances et des outils d’IA tels que ChatGPT ou d’autres assistants compatibles.
Grâce à MCP, un assistant d’IA peut interroger le contenu de votre instance Elium afin, par exemple, de répondre à des questions d’utilisateurs, de résumer des documents ou de fournir une assistance contextuelle sans avoir à copier ou exporter manuellement les données. L’accès est géré via une authentification OAuth, garantissant que seules les personnes et applications autorisées peuvent récupérer les informations, conformément à leurs droits Elium.
Chaque instance Elium expose son point d’accès MCP à l’adresse suivante : https://nom-de-votre-plateforme.elium.com/services/mcp
Outils disponibles
Une fois la connexion établie, le serveur MCP d’Elium propose des outils pour rechercher, lire, créer et modifier des articles.
Chaque outil s’exécute avec les droits de l’utilisateur authentifié : un assistant ne peut donc accéder qu’au contenu que cet utilisateur est déjà autorisé à voir dans Elium.
| Outil | Rôle |
|---|---|
findRelevantArticles | Cherche dans toute la base de connaissances par le sens. La méthode par défaut pour répondre à une question. |
findSpecificArticles | Cherche avec des filtres : mots-clés, modèle, espaces, plage de dates. |
readArticle | Renvoie le contenu et les métadonnées d’un article, dont sa langue et sa version. |
readAsset | Renvoie le texte brut d’un document joint à un article. |
findSpaces | Liste les espaces auxquels l’utilisateur a accès. |
findSections | Liste les sections (dossiers) d’un espace. |
findTemplates | Liste les modèles d’article disponibles. |
getContentSyntax | Renvoie la spécification Markdown utilisée pour le corps des articles. |
checkArticleBody | Valide un contenu Markdown avant de créer un article. |
createArticle | Crée un article à partir de Markdown si l’écriture est activée. |
updateArticle | Applique des modifications ciblées en Markdown et enregistre un brouillon si l’écriture est activée. |
findRelevantArticles
Effectue une recherche sémantique (basée sur le sens) dans toute la base de connaissances à partir d’une question en langage naturel et renvoie les articles les plus pertinents, classés par pertinence. Cet outil n’accepte ni filtre ni restriction de périmètre. C’est l’outil utilisé par défaut par un assistant pour répondre à une question.
Chaque résultat comprend le titre de l’article, un lien pour l’ouvrir et un extrait du contenu correspondant. Les extraits peuvent aussi provenir de documents joints, lorsque ceux-ci sont les plus pertinents.
findSpecificArticles
Exécute une recherche plus ciblée, lorsqu’un assistant a besoin de filtrer plutôt que de classer par sens. Elle prend en charge :
-
la recherche par mots-clés (un résultat doit contenir tous les termes fournis)
-
le filtrage par modèle, par espaces précis et par plage de dates
-
le choix de l’ordre de tri
-
la limitation du nombre de résultats (10 par défaut, 50 au maximum)
Utile pour des demandes telles que "les cinq articles les plus récents créés à partir du modèle Politique dans l’espace RH".
readArticle
Récupère le contenu d’un article à partir de son identifiant, au format Markdown, ainsi que ses principales métadonnées : propriétaire, espace, modèle, tags, attributs personnalisés éventuels (libellé et valeur), date de revue ou d’expiration, statut d’approbation, date de dernière version et indication si l’article est archivé.
Un assistant appelle généralement cet outil après une recherche, lorsqu’il a besoin de plus de contexte que ce que fournit un extrait. Il utilise les métadonnées pour évaluer l’actualité et la fiabilité du contenu.
Lorsqu’ils sont renseignés, le propriétaire, l’espace et le modèle sont chacun désignés par un identifiant et un nom. Les informations de vérification aident l’assistant à préciser le statut de ses sources :
| Information | Comment l’interpréter |
|---|---|
| Date de revue ou d’expiration | Une date passée indique que la revue est en retard. Une date future indique que l’échéance n’est pas encore atteinte. Sans date, aucune expiration n’est définie. |
| Statut d’approbation | Indique si la dernière procédure d’approbation visible pour vous a abouti à une publication, attend une approbation, nécessite une correction ou a été annulée. |
| Date de dernière version | Date de publication de la version active, ou de sa création si elle n’est pas publiée. Elle ne correspond pas à chaque modification. |
| Archivage | Indique si l’article est archivé. |
Le résultat précise aussi la langue, les traductions disponibles et la version lue. L’assistant peut demander le dernier brouillon avec draft: true, si vous avez le droit d’y accéder.
readAsset
Récupère le texte brut d’un document (fichier) joint à un article. Utilisez cet outil lorsqu’il faut plus de détails qu’un extrait de findRelevantArticles, ou lorsque le corps de readArticle fait référence à un document à lire en entier.
L’outil demande deux identifiants : l’ID de l’article et l’UUID du document. L’UUID provient d’un résultat de findRelevantArticles (le champ doc_uuid) ou d’un élément <el-asset>, <el-asset-inline> ou <el-asset-link> dans le corps renvoyé par readArticle (l’attribut data-asset).
Renvoie null si l’article ou le document est introuvable. Si aucun texte n’a pu être extrait (par exemple, le fichier est une image ou son texte n’est pas encore disponible), l’outil refuse en indiquant le lien vers l’article.
createArticle
Demandez à votre assistant connecté d’enregistrer du contenu dans Elium, par exemple : "Créez un brouillon intitulé Compte rendu de réunion dans l’espace Opérations à partir de ce Markdown."
- Demandez à l’assistant de trouver l’espace avec
findSpaceset de vérifier que vous pouvez y créer du contenu. - Fournissez le titre de l’article et son contenu en Markdown. L’assistant les transmet à
createArticleavec l’identifiant de l’espace. Par défaut, l’article est enregistré en brouillon (publish: false). - Ouvrez le lien de l’article renvoyé par l’assistant. Relisez le brouillon dans Elium, puis suivez votre procédure habituelle de publication ou d’approbation.
Vous pouvez demander explicitement à l’assistant de publier le nouvel article (publish: true). Vos droits dans l’espace s’appliquent : une approbation peut être nécessaire avant la publication. Le résultat contient l’identifiant de l’article, son lien et une indication de publication. Un article non publié peut être un brouillon ou un article en attente d’approbation.
L’outil accepte le Markdown standard, notamment les tableaux, listes de tâches, textes barrés, notes de bas de page, formules mathématiques, indices et exposants. Pour des exemples de syntaxe, consultez Format d’entrée Markdown. Utilisez les formes Markdown standard avec cet outil ; il ne propose pas le mode d’import Elium Markdown.
Si l’import ne peut pas conserver une mise en forme ou un contenu, la demande est refusée avant la création de l’article. Demandez à l’assistant de corriger les problèmes signalés, puis de réessayer.
updateArticle
Demandez à votre assistant connecté de modifier un passage précis, par exemple : "Dans la politique de déplacement, remplace l’indemnité de repas de 25 € par 30 € et enregistre un brouillon."
- Demandez à l’assistant de lire d’abord l’article, y compris son dernier brouillon s’il contient des modifications non publiées.
- Indiquez les passages à modifier. L’assistant transmet le texte Markdown exact et son remplacement. Il doit aussi transmettre la version lue pour qu’Elium refuse la modification si une version plus récente existe. Pour un article traduit, la langue lue est obligatoire ; seule cette traduction est modifiée.
- Ouvrez le lien de l’article dans Elium. Relisez le brouillon, puis suivez votre procédure habituelle de publication ou d’approbation. L’outil ne publie jamais les modifications.
Chaque passage doit correspondre à un seul emplacement, sauf si l’assistant demande explicitement de remplacer toutes les occurrences. Un remplacement vide supprime le texte. Si un passage est introuvable, ambigu ou chevauche une autre modification, toute la demande est refusée et l’article reste inchangé. La modification est aussi refusée si quelqu’un édite déjà l’article. En cas de conflit de version, demandez à l’assistant de relire le dernier brouillon avant de réessayer.
L’outil modifie uniquement le corps de l’article. Il peut ajouter un court commentaire à l’historique des versions et signale les ajustements de mise en forme. Consultez le format Markdown en entrée pour connaître les formats acceptés.
findSpaces
Liste les espaces auxquels vous avez accès. L’assistant peut ainsi comprendre l’organisation de votre plateforme et utiliser les identifiants d’espace pour restreindre une recherche avec findSpecificArticles.
Un filtre facultatif recherche dans le nom des espaces, sans tenir compte des majuscules ni des accents. Les résultats sont classés par nom et limités à 50 espaces par requête, même sans filtre. Si l’espace recherché n’apparaît pas, précisez son nom. Les espaces archivés sont exclus.
Chaque résultat comprend l’identifiant, le nom, le lien et le type de visibilité de l’espace, ainsi que sa description et son groupe d’espaces s’ils sont renseignés. Il précise aussi votre rôle, le nombre de membres et vos droits de création et de publication. Si vous pouvez créer du contenu sans pouvoir le publier directement, une approbation est nécessaire avant publication.
Utile comme première étape avant une recherche ciblée, ou pour des demandes telles que "dans quels espaces puis-je publier ?".
findSections
Liste les sections (dossiers) qu’un espace utilise pour organiser ses articles. Seuls les espaces configurés pour cela ont des sections ; pour les autres, le résultat est vide et les articles créés restent non classés.
Chaque résultat comprend l’identifiant de la section, son chemin complet (noms des parents séparés par " / ") et sa description si elle est renseignée. La description explique généralement ce qui doit y être classé.
Transmettez l'id de la section comme paramètre section_id de createArticle pour classer un nouvel article dans cette section.
findTemplates
Liste les modèles d’article (types d’article) activés pour toute la plateforme ou installés dans des espaces que vous pouvez voir. Chaque résultat comprend l’identifiant du modèle, son nom, son icône si elle est définie et une indication de sa disponibilité dans tous les espaces. Pour un modèle installé dans des espaces précis, seuls les identifiants des espaces visibles pour vous sont renvoyés.
Le filtre facultatif sur le nom fonctionne comme celui de findSpaces. Les résultats sont classés par nom et limités à 50 modèles par requête. Si le modèle recherché n’apparaît pas, précisez son nom.
Cela permet à un assistant de trouver le bon modèle avant de filtrer une recherche, pour des demandes telles que "trouve tous les articles qui utilisent le modèle FAQ".
getContentSyntax
Renvoie la spécification Markdown utilisée pour le corps des articles. Elle documente chaque bloc et élément en ligne avec ses attributs, les formes Markdown et HTML acceptées, et les éléments que chaque type de document accepte.
Consultez-la avant d’écrire ou de modifier un corps qui nécessite plus que des paragraphes, des listes et des liens. C’est le dialecte que readArticle renvoie et que createArticle et updateArticle attendent.
L’outil ne prend aucun argument et renvoie la spécification en Markdown. Le même document est aussi disponible comme ressource à l’adresse elium://content/syntax.
checkArticleBody
Simule l’import d’un corps d’article et indique ce qu’il deviendrait une fois enregistré. Rien n’est écrit.
C’est la vérification que createArticle exécute avant d’écrire quoi que ce soit : un corps qui revient comme importable est un corps que l’outil acceptera. Comparez le canonical_markdown renvoyé avec ce que vous avez envoyé : le balisage qu’Elium ne reconnaît pas est supprimé ou conservé comme texte brut, ce qui apparaît là plutôt que comme un problème.
Le résultat comprend :
-
importable: indique sicreateArticleaccepterait ce corps -
canonical_markdown: le corps tel qu’il serait enregistré, reconverti en Markdown -
problems: ce que l’import perdrait ou réécrirait, une ligne par élément
Utilisez cet outil avant createArticle lorsque le corps contient une mise en forme complexe. Si des problèmes sont signalés, consultez getContentSyntax pour connaître le balisage accepté, corrigez le corps et vérifiez à nouveau.
Exemples concrets
Voici quelques actions qu’un assistant connecté peut réaliser, et les outils qu’il utilise en arrière-plan.
-
"Comment demander un congé parental ?" Une recherche par le sens (
findRelevantArticles) répond à partir des articles RH les plus pertinents, avec les liens. -
"Résume les politiques que nous avons mises à jour ce trimestre." Un filtrage par modèle et par plage de dates (
findSpecificArticles), puis la lecture de chaque résultat (readArticle) pour le résumer. -
"Notre politique de conservation des données est-elle toujours à jour ?" La lecture de l’article (
readArticle), puis la vérification de sa date de revue et de son statut d’approbation avant de répondre. -
"Dans quels espaces puis-je publier ?" La liste des espaces de l’utilisateur et de ses droits (
findSpaces). -
"Trouve tous les articles FAQ dans l’espace Support." La recherche du modèle (
findTemplates), celle de l’espace (findSpaces), puis une recherche filtrée (findSpecificArticles).
Chaque exemple s’exécute avec les droits propres de l’utilisateur. L’assistant ne voit jamais de contenu que l’utilisateur ne pourrait pas déjà ouvrir dans Elium.
Concernant l’authentification
Elium utilise le protocole OAuth 2.0 pour authentifier et autoriser l’accès au point de terminaison MCP.
OAuth garantit que les applications externes ne peuvent accéder aux données Elium qu’au nom d’utilisateurs ayant explicitement donné leur accord.
Il existe deux façons de configurer l’authentification pour les intégrations MCP :
1. Enregistrement dynamique de client (recommandé)
Elium prend en charge l’enregistrement dynamique de client (Dynamic Client Registration, DCR), activé sur toutes les plateformes. Avec le DCR, un assistant s’enregistre lui-même comme client OAuth sur votre plateforme. Personne n’a besoin de créer manuellement un identifiant et un secret client.
Elium n’accepte que les enregistrements d’applications connues, comme ChatGPT et Microsoft Copilot Studio. Chacune doit utiliser une URL de redirection autorisée par Elium : les jetons d’accès ne sont donc délivrés qu’à ces applications. Les applications enregistrées apparaissent dans "Applications connectées" avec un badge "DCR" : consultez Enregistrement dynamique des clients.
Par défaut, Claude utilise une variante proche du DCR. Il ne s’enregistre pas : il indique à Elium l’adresse d’un document publié par Anthropic (Client ID Metadata Document, CIMD) qui décrit Claude comme client OAuth. Pour vous, le résultat est le même : rien à créer dans Elium.
Pour connecter une autre application par DCR, contactez support@elium.com en indiquant son nom (client_name) et les URL de redirection qu’elle utilise (redirect_uris). Ne demandez l’ajout que d’applications de confiance.
2. Création manuelle d’un client OAuth
Les administrateurs de plateforme peuvent créer manuellement un client OAuth dans "Paramètres" > "Applications connectées".
Une fois le client créé, les identifiants (client ID et client secret) peuvent être utilisés pour s’authentifier auprès du point de terminaison MCP selon le flux standard OAuth 2.0.
Cette approche offre aux administrateurs un contrôle total sur la configuration du client et les URL de redirection autorisées.
Recommandation
Utilisez le DCR dès que votre assistant le permet, comme ChatGPT et Copilot Studio, et pour Claude, l’identité publiée par Anthropic : dans les deux cas, vous n’avez rien à créer dans Elium. Choisissez la création manuelle d’un client OAuth pour une application qui ne prend en charge aucune des deux méthodes, ou si vous devez gérer vous-même les identifiants et les URL de redirection.
Instructions de configuration
Reportez-vous à la section de votre assistant.
Configuration de Copilot Studio
Elium prend en charge l’enregistrement dynamique de client (DCR) pour Copilot Studio : inutile de créer une application connectée dans Elium.
- Dans Copilot Studio, ajoutez un serveur MCP à votre agent. Dans le champ "URL du serveur", saisissez
https://nom-de-votre-plateforme.elium.com/services/mcpen remplaçantnom-de-votre-plateformepar le nom de votre plateforme Elium. - Sélectionnez "OAuth 2.0", puis "Découverte dynamique". La connexion s’enregistre sans que vous ayez à créer manuellement d’identifiant ni de secret client.
- Créez la connexion, connectez-vous à Elium et autorisez les accès demandés. Ajoutez les outils MCP à votre agent, puis posez-lui une question sur un article que vous pouvez lire dans Elium.
Consultez les instructions de configuration de Microsoft Copilot Studio pour retrouver les écrans et les étapes de connexion à jour.
Configuration de ChatGPT
ChatGPT s’enregistre lui-même auprès d’Elium par enregistrement dynamique de client (DCR) : inutile de créer une application connectée dans Elium.
Les étapes ci-dessous se font dans l’application de bureau ChatGPT. Les libellés cités sont ceux de l’interface en anglais, visible sur les captures.
-
Ouvrez "Customize", puis "Plugins".
-
Cliquez sur "Add" en haut à droite, puis sur "Add custom MCP server".
-
Remplissez le formulaire :
-
"Name" : Elium
-
"Description (optional)" : une courte description, par exemple Trusted Knowledge Base
-
"Connection" : laissez "Server URL" sélectionné et saisissez
https://nom-de-votre-plateforme.elium.com/services/mcp, en remplaçantnom-de-votre-plateformepar le nom de votre plateforme Elium -
"Authentication" : OAuth
Inutile d’ouvrir "Advanced OAuth settings" : ChatGPT récupère la configuration OAuth d’Elium et choisit de lui-même l’enregistrement dynamique de client (DCR).
-
-
Lisez l’avertissement sur les serveurs MCP personnalisés. Cochez "I understand and want to continue", puis cliquez sur "Create as a plugin".
-
Dans la fenêtre "Connect Elium", cliquez sur "Continue to Elium".
-
Elium s’ouvre dans votre navigateur. Connectez-vous si Elium vous le demande, puis autorisez les accès demandés par ChatGPT.
Vous pouvez maintenant faire des recherches dans votre plateforme Elium depuis une conversation ChatGPT.
Elium apparaît aussi dans l’onglet "Personal" de la page Plugins, sous "Created by you". Si vous avez fermé la fenêtre "Connect Elium" avant l’étape 6, cliquez sur + à côté d’Elium pour la rouvrir.
Configuration de Claude
Claude s’identifie lui-même auprès d’Elium : inutile de créer une application connectée dans Elium.
Les étapes ci-dessous se font dans Claude, depuis un navigateur web, avec un abonnement Pro ou Max. Avec un abonnement Team ou Enterprise, un propriétaire de l’organisation ajoute d’abord le connecteur : consultez la fin de cette section. Les libellés cités sont ceux de l’interface en anglais, visible sur les captures.
-
Ouvrez "Customize", puis "Connectors".
-
Cliquez sur "Add" en haut à droite, puis sur "Add custom connector".
-
Remplissez le formulaire :
-
"Name" : Elium
-
"MCP server URL" :
https://nom-de-votre-plateforme.elium.com/services/mcp, en remplaçantnom-de-votre-plateformepar le nom de votre plateforme Elium
Cliquez ensuite sur "Continue".
-
-
Claude récupère la configuration OAuth d’Elium et choisit de lui-même les bons réglages : "Sign in now" sous "Authentication" et "Use Claude’s published identity" sous "OAuth client". Laissez-les tels quels et cliquez sur "Add". Vous n’avez besoin ni d’identifiant ni de secret client.
-
Claude ouvre la page du nouveau connecteur. Cliquez sur "Connect".
-
Elium s’ouvre. Connectez-vous si Elium vous le demande. Claude demande deux autorisations : chercher et lire vos contenus, et créer des articles. Décochez la seconde si Claude doit seulement lire, puis acceptez la demande.
-
Dans une conversation, cliquez sur + en bas à gauche de la zone de saisie, ouvrez "Connectors" et vérifiez qu’Elium est activé.
Vous pouvez maintenant faire des recherches dans votre plateforme Elium depuis une conversation Claude.
Avec un abonnement Team ou Enterprise, un propriétaire ajoute Elium une seule fois pour toute l’organisation. Dans "Organization settings" > "Connectors", il clique sur "Add", choisit "Custom" > "Web", puis suit les étapes 3 et 4. Chaque membre ouvre ensuite "Customize" > "Connectors", clique sur "Connect" à côté d’Elium, puis accepte la demande dans Elium. Consultez les instructions d’Anthropic sur les connecteurs personnalisés pour retrouver les écrans à jour.