Synaltic a toujours à cœur de tester les nouvelles technologies sans céder à la hype. Aujourd’hui, nous allons suivre le tutoriel de notre partenaire Dremio pour découvrir le monde des MCP.
Model Concept Protocol (MCP) c’est quoi ?
Le MCP (Model Context Protocol) est un protocole serveur qui joue le rôle d’intermédiaire entre un outil de données (ici Dremio) et un LLM (ici Claude et GPT-5). Il fournit aux LLM, dans un format standardisé (basé sur JSON-RPC), toutes les informations nécessaires pour exploiter Dremio : métadonnées, schémas, tables, types ou encore résultats de requêtes. Le serveur MCP met également à disposition un ensemble d’outils et de services accessibles par le client, permettant ainsi aux modèles de dialoguer avec Dremio de manière cohérente, sans dépendre directement de son API propriétaire.
Nous allons nous appuyer sur ce tutoriel proposé par Dremio :
https://www.dremio.com/blog/using-the-dremio-mcp-server-with-any-llm-model/
En théorie, le MCP de Dremio permet d’accéder, via un LLM, à toutes les fonctionnalités de la plateforme. Le tutoriel utilise la stack Dremio + LangChain + Dremio MCP.
L’interface de base proposée par le client LangChain étant un peu austère, nous avons utilisé Gradio pour créer une interface minimaliste.
Pour réaliser nos tests, nous avons scrupuleusement suivi la documentation fournie dans le blog de Dremio. Le seul point que nous avons modifié concerne le fichier mcp_servers.json, que nous avons adapté à notre environnement.
Nous avons utilisé un jeu de données réaliste issu de Kaggle pour alimenter nos tests : https://www.kaggle.com/datasets/pavansubhasht/ibm-hr-analytics-attrition-dataset
Ce jeu de données simule une table typique d’un système de gestion de Ressources Humaines (RH). Nous avons déposé les données au sein d’un bucket S3, puis créé un espace dédié dans Dremio ainsi qu’une vue reposant sur ces données, avec une modélisation de données appropriée.
Dans nos tests, nous allons utiliser deux modèles LLM et comparer leurs résultats :
- claude-3-7-sonnet-20250219
- gpt-5
Nous poserons successivement 4 questions à chacun des deux modèles et observerons comment ils s’en sortent :
- Dans Dremio trouve la vue dans l’espace Test_MCP_Dremio
- Observe et analyse les données, puis donne-moi, selon toi, des axes d’analyse intéressants.
- Pourrais-tu me faire une requête qui calcule l’âge moyen par genre ?
- Donne-moi, selon toi, les deux indicateurs les plus importants à calculer pour créer un tableau de bord à partir de ce jeu de données, et fournit-moi les réponses.
gpt-5
Tout d’abord on testera les capacités de gpt-5
Ici, GPT-5 trouve la vue sans difficulté, mais il est à noter que ce résultat est dépendant du modèle. Par exemple, GPT-4.1 n’avait pas trouvé la vue sans un chemin direct vers celle-ci. Il convient donc de souligner que les résultats obtenus peuvent fortement varier d’un modèle à l’autre.
L’accès aux données est fluide et peut être suivi en temps réel dans Dremio. Le modèle construit correctement ses requêtes et interroge les tables pour produire ses réponses.
L’un des grands avantages de Dremio réside dans la possibilité de visualiser toutes les requêtes exécutées, de les récupérer pour les rejouer et de les analyser finement. Cela permet non seulement de vérifier la pertinence de ce qui est généré par le modèle, mais aussi d’en assurer la validité et la reproductibilité.
GPT réussit sans difficulté l’ensemble des tests que nous lui soumettons. Il génère à la volée les requêtes SQL nécessaires et les exécute directement dans Dremio afin de répondre à nos questions.
Toutefois, cet enchaînement successif de requêtes présente un inconvénient majeur : la lenteur. Chaque requête doit être exécutée avant que le modèle ne puisse fournir une réponse complète, ce qui allonge considérablement le temps d’analyse.
Les axes d’analyse proposés par GPT restent relativement simples, mais ils apparaissent pertinents et cohérents avec les données disponibles. Ils peuvent s’avérer utiles dans des situations où l’on ne connaît pas encore bien le jeu de données, ou lorsque les équipes métiers recherchent des pistes de réflexion initiales pour orienter leur exploration.
Claude
Passons maintenant à Claude :
Claude réussit sans aucune difficulté les mêmes épreuves que GPT, mais il se distingue par une analyse plus fine. Les propositions qu’il formule sont généralement mieux argumentées, plus structurées et plus élaborées, ce qui leur confère une valeur ajoutée indéniable. Là où GPT tend à fournir des réponses correctes mais parfois génériques, Claude enrichit ses analyses d’explications complémentaires et de mises en perspective.
Les résultats de Claude apparaissent plus pertinents que ceux de GPT : il propose des axes d’analyse mieux construits et plus riches. À première vue, les résultats sont assez spectaculaires et invitent naturellement à s’interroger sur l’avenir de l’analyse de données et sur la place que pourraient occuper ces modèles dans les outils de Business Intelligence de demain.
Mon analyse
Toutefois, même si les performances des deux modèles semblent impressionnantes, il ne faut pas sombrer dans l’éternel rêve d’une BI en libre-service totalement accessible à tous. Ces outils peuvent effectivement faciliter une exploration plus rapide de données inconnues (à condition que les couches sémantiques aient été correctement définies), mais leur utilisation nécessite toujours l’intervention de data ingénieurs, qui devront vérifier et valider les requêtes générées, tout du moins au début. Sans une solide connaissance métier, les résultats produits risquent souvent de manquer de pertinence et ne prennent de véritable valeur que lorsqu’ils sont exploités dans le cadre d’une collaboration entre data ingénieurs et experts métiers.
De plus, aussi puissants soient-ils, ces modèles manquent du contexte extérieur aux tables de données : ils ignorent les spécificités métier, les contraintes opérationnelles ou encore les subtilités de l’organisation. Cela conduit inévitablement à une perte d’informations et limite la portée de leurs analyses.
Enfin, il convient de rappeler que les expérimentations ont été menées sur un jeu de données populaire disponible sur Kaggle. Il est donc tout à fait possible qu’une partie de ces informations soit déjà connue des modèles, ce qui peut biaiser l’évaluation de leurs véritables capacités de généralisation.
Avec sa version 26.1 Dremio avance a grands pas afin de rendre la donnée toujours plus accessible à un nombre d’utilisateurs toujours plus large. La version 26.1 intègre directement cette capacité à dialoguer avec les données. Bien sûr il passera par le fournisseur LLM de votre entreprise. Synaltic vous accompagnera dans la contextualisation de Dremio MCP et vous aidera vous et vos utilisateurs à prendre en main ces fonctionnalités conversationnelles avec les données.