← Blog

Connecter Odoo à Claude ou ChatGPT : quatre voies MCP et l'ENS espagnol

MCP gratuit sur GitHub, module de l'Apps Store, MCP natif d'Odoo 19 ou connecteur hébergé : comparatif honnête pour les PME fournisseurs du secteur public.

Si vous utilisez Odoo et que vous voulez que Claude ou ChatGPT répondent à des questions sur vos ventes, vos factures ou vos effectifs, vous avez aujourd’hui quatre chemins : un serveur MCP gratuit téléchargé depuis GitHub, un module de l’Odoo Apps Store, le MCP intégré à Odoo depuis la version 19.4, ou un connecteur hébergé par un tiers. Les quatre fonctionnent. La différence tient à qui installe quoi, où finissent vos identifiants, ce que voit l’IA et ce que vous pouvez prouver ensuite.

Cette dernière question pèse plus qu’il n’y paraît si votre entreprise facture une mairie, une collectivité ou un ministère espagnol. Le schéma national de sécurité espagnol (ENS, décret royal 311/2022) s’applique à l’administration et, par contrat, aux entreprises qui lui fournissent des services. Un outil d’IA qui lit l’ERP où vivent ces contrats entre dans le périmètre. En France, l’équivalent pour les fournisseurs du secteur public passe par le RGS de l’ANSSI, où le recours à un service qualifié vaut présomption de conformité, et par SecNumCloud pour l’hébergement cloud des données sensibles, qui exige un stockage et un traitement dans l’Union européenne. Voici les quatre voies, sources à l’appui, et les cas où l’option gratuite est la meilleure.

Option 1 : un serveur MCP gratuit sur GitHub

Il existe des dizaines de projets. Deux des plus utilisés, avec environ 400 étoiles chacun à ce jour, sont mcp-server-odoo d’ivnvxd (licence MPL-2.0) et mcp-odoo d’erpipe-org (MIT). Un troisième, odoo-mcp d’altinkaya-opensource, est plus petit mais illustre bien le schéma.

Le schéma est le même : un processus Python qui tourne sur l’ordinateur de chaque utilisateur, se lance avec uvx ou pip et se connecte à Odoo en XML-RPC avec l’URL, la base de données et un identifiant et mot de passe ou une clé API. Ces identifiants sont écrits en clair dans un .env, dans odoo_config.json ou dans le claude_desktop_config.json de chaque machine.

Le bon côté : c’est gratuit, open source, et les meilleurs ont ajouté des contrôles. mcp-odoo accepte un fichier de politique par champ et un journal JSONL des écritures si vous définissez ODOO_MCP_AUDIT_LOG ; mcp-server-odoo propose un mode lecture seule et respecte les droits de l’utilisateur Odoo. Le mauvais côté : le README d’ivnvxd prévient que le mode sans module (« YOLO ») ne doit jamais servir en production et que son transport HTTP « n’a pas d’authentification client », donc quiconque atteint le port utilise tous les outils. Chaque salarié refait l’installation, garde la clé sur son portable et personne n’a de vue centrale sur qui a consulté quoi.

Option 2 : un module de l’Odoo Apps Store

Deux familles cohabitent sur l’Apps Store. La première, la plus ancienne, regroupe les modules « ChatGPT » qui mettent un chat dans Odoo (Discuss, live chat, modèles d’e-mail) et envoient du texte à l’API d’OpenAI avec une clé stockée dans la configuration d’Odoo. Exemple : AI ChatGPT Connector de GT Apps, qui exige d’installer la bibliothèque Python d’OpenAI sur le serveur et plusieurs modules de base, et dont la fiche ne mentionne ni contrôle d’accès par utilisateur ni journal d’activité. Ces modules ne font pas l’objet de cet article : ils ne connectent pas votre Claude ou votre ChatGPT à Odoo, ils amènent un modèle d’OpenAI dans Odoo.

La seconde famille est récente : des modules qui transforment Odoo en serveur MCP avec un endpoint /mcp. Le plus abouti que nous ayons examiné est mcp_server (much. Consulting, licence OPL-1, Odoo 16 à 19). D’après sa fiche à ce jour : groupe de sécurité « MCP User », liste blanche de modèles avec refus par défaut, droits par opération, OAuth 2.1 avec PKCE et journal d’audit de chaque appel, refus et tentative de connexion. C’est une option sérieuse. Le coût est ailleurs : quelqu’un doit l’installer, le mettre à jour à chaque migration et le maintenir, et sur Odoo Online vous ne pouvez pas installer de modules tiers. Si vous avez un partenaire ou une équipe technique et votre propre serveur, c’est une bonne voie.

Option 3 : le MCP natif d’Odoo 19

Odoo a intégré son propre serveur MCP dans la version 19.4, publiée en juillet 2026. La documentation officielle décrit le fonctionnement : chaque utilisateur génère dans ses préférences une clé API avec le scope « MCP », la colle dans son client (le guide couvre Claude Desktop, Claude Code, Antigravity et Codex) et le client appelle https://votre-entreprise.odoo.com/mcp. Cinq outils de lecture sont exposés par défaut (modèles, champs, recherche, regroupement et contexte initial) ; les actions d’écriture s’activent en cochant « Available in MCP » sur les actions serveur.

C’est l’option la plus propre si vous êtes déjà sur Odoo 19 : rien à installer, identifiants liés à l’utilisateur, droits Odoo respectés. Elle a des limites à connaître. Elle n’existe qu’en 19.4 ou plus ; en 16, 17 ou 18, elle ne vous sert à rien avant migration. La documentation ne précise pas si elle est disponible en édition Community ; nous n’avons pas pu le confirmer à ce jour, vérifiez avec votre partenaire. La clé est statique et n’est affichée qu’une fois ; si un salarié la colle dans le mauvais client, la révocation est manuelle, utilisateur par utilisateur. Et la documentation ne décrit aucun journal d’activité propre au MCP à présenter à un auditeur.

Option 4 : un connecteur hébergé avec contrôles

La quatrième voie est un service placé entre votre IA et votre Odoo. C’est ce que propose Odoo MCP by bancada : un connecteur hébergé dans l’UE (AWS, Francfort) qui n’installe rien dans votre Odoo et n’ouvre aucun port. Il utilise l’API XML-RPC standard avec les identifiants de l’utilisateur lui-même, donc Claude ne voit que ce que cet utilisateur Odoo peut voir. La clé API est stockée chiffrée (AES-128, Fernet) et n’atteint jamais le client d’IA ; Claude, ChatGPT, Copilot ou Cursor ne reçoivent qu’un jeton de session opaque via OAuth 2.0 avec PKCE.

Chaque personne a son propre accès. L’administrateur de l’entreprise peut le limiter à la lecture seule ou à certains domaines (ventes, facturation, RH) depuis un tableau de bord, et révoquer des sessions depuis le portail. Un journal d’audit par utilisateur enregistre date, outil, modèle et enregistrements concernés, sans conserver le contenu des requêtes ni les données de l’ERP. La connexion est vérifiée toutes les six heures avec alerte en cas d’échec. Un DPA est disponible. Compatible Odoo 16 à 19, Online, Odoo.sh et serveur propre. Les formules sont Solo (9 € par mois), Equipo (29 €) et Business (79 €), utilisateurs illimités et 400 requêtes gratuites sans carte bancaire.

Le prix du confort, c’est un fournisseur de plus dans votre chaîne d’approvisionnement, et l’ENS vous demande de le gérer. Voyons cela.

Comparatif

Critère MCP gratuit (GitHub) Module Apps Store MCP natif Odoo 19 Connecteur hébergé (bancada)
Installation Python sur chaque portable Module sur le serveur Odoo, par un technicien Aucune (19.4 ou plus) Aucune : inscription web et clé API de l’utilisateur
Où ça tourne Ordinateur de l’utilisateur Dans votre Odoo Dans votre Odoo Service dans l’UE (AWS Francfort)
Où sont les clés En clair dans .env ou la config du client Dans Odoo ; le client porte une clé ou un jeton OAuth Clé API statique dans le client Chiffrée dans le connecteur ; le client ne voit qu’un jeton de session
Accès par utilisateur Selon la configuration de chacun Oui, groupe MCP et droits par modèle Oui, clé par utilisateur Oui, plus lecture seule ou par domaine depuis un tableau de bord
Journal d’activité Fichier local optionnel (mcp-odoo) Oui, dans Odoo (mcp_server) Non documenté Oui, centralisé par utilisateur, sans contenu
Chiffrement et localisation TLS vers Odoo ; clés non chiffrées TLS ; données là où est votre Odoo TLS ; données là où est votre Odoo TLS ; clé chiffrée au repos ; UE
Maintenance Chaque utilisateur, chaque machine Partenaire : migrations et mises à jour Odoo Le fournisseur, avec alerte automatique en cas de panne
Coût Gratuit Prix du module plus intégration Inclus dans Odoo 19.4 (édition à confirmer) À partir de 9 € par mois ; 400 requêtes gratuites

Ce qu’exige l’ENS et comment répond chaque option

Le décret royal 311/2022 est clair dans son article 2.3 : il s’applique aussi aux systèmes d’information des entités du secteur privé lorsque, dans le cadre d’une relation contractuelle, elles fournissent des services ou des solutions aux entités du secteur public, et cette précaution s’étend à la chaîne d’approvisionnement selon l’analyse de risques. Si votre Odoo contient les commandes, factures ou rapports d’intervention de ces contrats, une IA qui l’interroge est dans le périmètre. Les mesures de l’annexe II concernées :

  • Identification et authentification (op.acc.1, op.acc.5 et 6) : chaque utilisateur avec son propre identifiant. Le MCP GitHub finit souvent avec une clé partagée par portable. Le module, le natif et le connecteur hébergé authentifient par utilisateur.
  • Contrôle d’accès et moindre privilège (op.acc.2 à 4) : les quatre héritent des droits Odoo. Seuls le module mcp_server et le connecteur hébergé ajoutent une couche lecture seule ou par domaine gérée par l’administrateur.
  • Journal de l’activité des utilisateurs (op.exp.8) : qui, quand, sur quelle information et avec quel résultat. Le MCP GitHub ne l’a que si vous activez un fichier local sur chaque machine ; le natif ne le documente pas ; le module et le connecteur le fournissent de façon centralisée.
  • Protection des clés et chiffrement (op.exp.10, mp.info.3, mp.com.2) : les clés en clair dans un .env sont le point faible de l’option 1. Les trois autres chiffrent en transit ; le connecteur chiffre en plus la clé API au repos et ne la remet pas à l’IA.
  • Gestion des incidents et des fournisseurs (op.exp.7, op.ext.1 à 3, op.nub.1) : avec le module ou le natif, le fournisseur est Odoo ou votre partenaire. Avec un connecteur hébergé, vous ajoutez un fournisseur et il vous faut contrat, accord de niveau de service et DPA. L’ENS n’impose pas par lui-même que les données restent dans l’UE, mais la loi 9/2017, art. 122.2 sur les marchés publics espagnols oblige à déclarer où sont les serveurs avant la signature du contrat, et le RGPD limite les transferts hors UE. Un fournisseur à Francfort simplifie cette déclaration.
  • Preuves pour l’audit (art. 31) : au moins tous les deux ans, quelqu’un vous demandera des preuves. Un journal exportable par utilisateur fait la différence entre une réponse et des excuses.

Notre connecteur est conçu pour répondre à ces contrôles et fournir des preuves. Il n’est pas certifié ENS, et méfiez-vous de quiconque affirme qu’un connecteur d’IA l’est sans vous montrer le certificat.

Lequel choisir

  • Développeur qui teste : le MCP gratuit de GitHub. Dix minutes, coût nul, et vous apprenez comment fonctionne MCP. Ne le passez pas en production avec la clé de l’administrateur.
  • PME sans équipe informatique : le connecteur hébergé. Rien à installer, chaque salarié entre avec son utilisateur, l’administrateur décide depuis un tableau de bord et vous avez un journal sans maintenir de serveur. Si vous êtes déjà sur Odoo 19.4 et que vous n’avez besoin que de lecture pour une ou deux personnes, le MCP natif est une alternative honorable, à condition que votre édition l’inclue.
  • Entreprise qui travaille avec l’administration : il vous faut une identification par utilisateur, un journal centralisé, des clés protégées et un fournisseur avec contrat et DPA. Restent deux voies : le module mcp_server avec un partenaire qui le maintient, ou un connecteur hébergé dans l’UE. Choisissez le module si vous avez un partenaire et votre propre serveur ; choisissez le connecteur si vous ne voulez rien maintenir.

Vous pouvez l’essayer avec 400 requêtes gratuites sur mcp-odoo.bancada.es.

Essayez le connecteur avec votre propre Odoo : 2 minutes, sans rien installer, 400 requêtes gratuites.

Essayer gratuitement →