Quand on gère un flux constant de documents (rapports, tableaux, notes internes…), le vrai problème, ce n’est pas la lecture. C’est le temps perdu à classer, retrouver, réutiliser. Chez Strategivo Digital, nous avons été confrontés à ce défi de manière très concrète. L’un de nos co-fondateurs, analyste dans un fonds d’investissement, devait traiter quotidiennement une avalanche de données sensibles : rapports opérationnels, analyses financières, notes internes confidentielles. Le besoin était clair : exploiter efficacement cette masse d’informations sans y consacrer des heures de travail manuel, et surtout, sans sacrifier la sécurité et la confidentialité des données.
Nous avons alors décidé de construire une solution maison, sobre, robuste et totalement maîtrisée.
Avec n8n comme chef d’orchestre, nous avons assemblé un système d’automatisation complet du traitement documentaire, propulsé par LangChain, Supabase et une utilisation rigoureuse de l’API OpenAI pour la vectorisation des textes. Ce n’est pas une simple automatisation : c’est un premier pas vers l’application concrète du concept de Model Context Protocol (MCP). Le MCP repose sur une idée simple : permettre aux systèmes IA d’opérer dans un contexte contrôlé, avec des données et des instructions précises, sans jamais dépasser les limites fixées par leurs utilisateurs. Ici, notre assistant ne « réinvente » rien : il puise uniquement dans un contexte documentaire précis et vérifié.
En clair : nous avons conçu un moteur de recherche intelligent, sécurisé, 100% dédié aux documents critiques internes, capable d’accélérer les analyses sans jamais mettre en danger les données sensibles. Voici comment nous avons procédé.
Objectif : rendre les documents interrogeables, sans les relire.
L’idée était simple : chaque fois qu’un nouveau document arrive dans un dossier (Google Drive ou directement uploadé sur un serveur VPS), il doit automatiquement :
- Être détecté ;
- Être nettoyé (extraction du texte utile) ;
- Être vectorisé (transformé en « empreinte sémantique ») ;
- Être stocké intelligemment (dans une base interrogeable par similarité) ;
- Être exploitable via un chatbot (façon RAG).
Sans lever le petit doigt.
Et surtout, sans jamais compromettre la confidentialité des données, qui sont traitées localement ou sur des serveurs maîtrisés, jamais exposées aux grands clouds publics sans précaution.
Le workflow n8n : du Drive au cerveau IA.

1. Etape 1 : détection automatique du fichier.
Deux « triggers » n8n surveillent en continu :
- Un dossier spécifique Google Drive,
- Un répertoire local du VPS où l’on peux uploader des fichiers directement.
À chaque nouveau fichier détecté (ou mise à jour), ses métadonnées (nom, type, lien, etc.) sont extraites et préparées pour la suite du traitement.
Cela garantit que peu importe d’où vient l’information, elle est captée immédiatement.
2. Etape 2 : nettoyage intelligent de la base Supabase.
Avant toute ingestion, les anciennes entrées liées au même fichier sont supprimées pour éviter les doublons et maintenir la cohérence de la base.
Cela se fait via Supabase, qui est une base de données PostgreSQL managée, mais avec la possibilité d’avoir une extension vectorielle (pgvector) pour les recherches par similarité.
En clair : chaque fragment de document est non seulement stocké, mais rendu intelligemment interrogeable.
3. Etape 3 : extraction du contenu des fichiers.
Le cœur du traitement : récupérer le texte utile des documents.
Selon leur format :
- PDF, Word, Google Docs : extraction textuelle classique.
- Excel, CSV, Google Sheets : extraction tabulaire et conversion en JSON propre.
Et surtout, nettoyage rigoureux :
- Suppression des artefacts de formatage (caractères spéciaux par exemple),
- Normalisation de l’encodage,
- Structuration du texte pour une lecture par section si possible.
Ainsi, à la fin de cette étape, un document de 30 pages devient un flux textuel limpide, prêt à être découpé.
4. Etape 4 : fragmentation du texte en unités exploitables.
Ici, on utilise LangChain pour découper les documents :
- 800 à 1000 caractères par bloc,
- Toujours en respectant la logique du texte pour ne pas casser les idées.
Pourquoi ?
- Des fragments trop gros perdraient en pertinence,
- Des fragments trop petits perdraient en contexte.
C’est une alchimie essentielle pour optimiser la recherche sémantique.
5. Etape 5 : Vectorisation avec OpenAI.
Chaque fragment est envoyé à OpenAI via le modèle text-embedding-3-small, pour être converti en embedding vectoriel. Mais d’abord c’est quoi un embedding ? C’est tout simplement une représentation mathématique du contenu sémantique du texte, dans un espace à 1536 dimensions.
Pour faire simple :
- Deux textes « proches » dans le sens (même s’ils n’utilisent pas les mêmes mots) seront proches dans cet espace,
- Et donc faciles à retrouver par similarité.
PS : C’est d’ailleurs grâce aux embeddings que les modèles de LLM arrivent à fonctionner. Mais pour ça, un autre article dédié sera rédigé !
6. Etape 6 : stockage et indexation intelligente dans Supabase.
Les embeddings sont stockés avec :
- Le contenu brut du segment ;
- Les métadonnées du document ;
- L’identifiant unique du fichier.
Avec l’extension pgvector activée, on peut effectuer des recherches ultra-rapides sur la base, en retrouvant les segments les plus proches d’une question posée.
Et pour les fichiers tabulaires, chaque ligne de données est aussi sauvegardée proprement pour permettre des requêtes SQL dynamiques.
L’interface utilisateur : un robot Télegram, simple et efficace.
L’utilisateur interagit directement via un bot Telegram créé à cet effet :
- Envoi d’une question en texte libre ;
- Retour instantané d’une réponse basée sur les documents disponibles ;
- Possibilité de recevoir aussi des extraits précis des documents sources.
Et surtout : zéro hallucination. Si l’information n’est pas trouvée, le bot le dit clairement. Pas d’inventions de la part du modèle.
Le moteur derrière ce bot ? Une approche RAG (Retrieval-Augmented Generation) :
- Recherche vectorielle dans Supabase ;
- Synthèse sémantique par l’IA ;
- Livraison au format court et compréhensible.
Une réflexion plus large : MCP et IA.
Au-delà de l’automatisation documentaire, ce projet illustre également l’application pratique d’un concept fondamental dans l’écosystème IA émergent : le Model Context Protocol (MCP).
Le Model Context Protocol désigne un ensemble de bonnes pratiques et de standards permettant d’encadrer l’interaction entre un modèle d’intelligence artificielle (comme un LLM) et son environnement de données, de manière sûre, contrôlée et reproductible.
Concrètement, dans notre cas :
- Le modèle ne reçoit jamais la totalité de la base documentaire brute.
- Il ne travaille que sur un contexte restreint et filtré, constitué des fragments les plus pertinents pour répondre à une question.
- Ce contexte est fourni à la volée, de manière transparente et vérifiable.
Pourquoi c’est important ? Parce que dans un monde où l’IA est de plus en plus puissante, le danger ne vient pas uniquement de ce que l’IA sait, mais de ce qu’on lui laisse traiter sans supervision.
Avec une approche MCP :
- L’utilisateur garde la main sur ce que l’IA voit.
- Chaque réponse est bornée par un corpus précis.
- La confidentialité est mieux respectée.
- La traçabilité des réponses est facilitée.
Dans notre solution, nous avons mis en œuvre un MCP artisanal mais rigoureux :
- Vectorisation des documents en fragments.
- Sélection des fragments les plus proches d’une question.
- Transmission contrôlée de ce contexte au modèle génératif.
Pas d’accès sauvage aux données sensibles. Pas d’invention libre. Pas de fuite d’information.
À l’ère des grands modèles génératifs, intégrer nativement un protocole comme MCP dans ses projets n’est pas une option, c’est une nécessité stratégique.
Combien tout cela a coûté ?
- Serveur VPS DigitalOcean : 6 USD/mois.
- Crédit OpenAI : 5 USD top-up initial.
- n8n auto-hébergé : coût intégré au VPS.
- Supabase (offre gratuite) : largement suffisant pour mon besoin actuel.
- Telegram Bot : gratuit.
Total de lancement : 11 USD.
Avec 11 dollars, nous avons mis en place un assistant documentaire intelligent, sécurisé, disponible 24h/24.
Et il tourne sans surcoût supplémentaire depuis.
Ce que ça change concrètement.
- Fini les fouilles dans 40 fichiers pour retrouver un contrat ou un rapport.
- Réduction massive du temps de recherche documentaire.
- Standardisation du traitement de l’information.
- Protection totale de la confidentialité : aucune donnée sensible exposée.
- Accès rapide, fluide et naturel à la connaissance interne.
En gros, c’est comme obtenir un cerveau numérique parallèle, qui travaille non stop, en silence !
Ce projet est une brique, pas une finalité.
Prochaines étapes :
- Déployer une interface web ultra-simple pour uploader des documents,
- Mettre en place un moteur de suggestion proactive (détecter des anomalies, signaler des opportunités),
- Ajouter un module d’alerte en cas de mise à jour critique dans les données,
- Interconnecter le tout avec d’autres flux (veille sectorielle, bases de données publiques).
Construire son propre écosystème MCP, c’est ça, l’avenir.