Cloner le serveur agridata MCP open source, l'installer en local, et connecter Claude Desktop ou un autre client LLM pour exécuter une première vraie requête sur les données agricoles ouvertes tunisiennes.
Résultat attendu
À la fin de ce guide, agridata MCP tourne sur votre machine, votre
client LLM habituel sait l'appeler, et vous avez exécuté une
première requête qui combine données structurées et références
documentaires. Temps total estimé :
si Python et uv sont déjà
installés ; comptez dix minutes supplémentaires sinon.
Prérequis
Un client LLM compatible MCP : Claude Desktop, Claude Code, VS Code, Cursor, Windsurf, Gemini CLI, ou similaire.
Le gestionnaire de paquets uv. Installation avec
curl -LsSf https://astral.sh/uv/install.sh | sh sur
macOS / Linux, ou
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
sur Windows.
Documentation complète d'uv.
Une connexion Internet pour cloner le dépôt et atteindre catalog.agridata.tn au moment des requêtes.
Étape 1 — Cloner et installer
Choisir un répertoire qui hébergera le serveur, puis :
bash
git clone https://github.com/tanitdata/agridata-mcp.git
cd agridata-mcp
uv sync
uv sync résout et installe toutes les dépendances
déclarées dans pyproject.toml. Sur un clone tout
neuf, l'opération prend généralement dix à vingt secondes.
Étape 2 — Noter le chemin absolu
Le client MCP a besoin du chemin absolu vers le répertoire du
clone. Exécutez pwd à l'intérieur de
agridata-mcp (ou cd + echo %CD%
sous Windows) et copiez le chemin complet. Vous le collerez dans
les snippets de configuration ci-dessous, à la place de
/chemin/absolu/vers/agridata-mcp.
Étape 3 — Configurer le client LLM
Choisissez le snippet correspondant à votre client. La commande
de lancement est la même partout ; seul le format du fichier
change.
Claude Desktop
Fichier de configuration :
Windows : %APPDATA%\Claude\claude_desktop_config.json
Sauvegardez le fichier, puis redémarrez Claude Desktop.
Cursor, Windsurf, autres clients MCP stdio
La plupart des clients acceptent la même structure que Claude
Desktop. Ajoutez le snippet au fichier de configuration MCP du
client (consultez sa documentation pour le chemin exact) :
Une seule commande, sans fichier de configuration :
bash
claude mcp add tanitdata uv run --directory /chemin/absolu/vers/agridata-mcp tanitdata
Étape 4 — Premier appel de test
Dans le client, ouvrez une nouvelle conversation et demandez :
« Quels outils sont exposés par le serveur tanitdata ? »
Le client doit afficher la liste des outils fournis par le
serveur. Si cette liste apparaît, la connexion fonctionne.
Étape 5 — Première vraie requête
Essayez une question qui combine chiffres et contexte documentaire :
« Quelle est la production de blé dur par gouvernorat sur les cinq
dernières années, et comment se compare-t-elle aux objectifs du
plan national ? »
Le serveur répond avec les données correspondantes et, pour
chaque résultat, pointe vers la ressource source sur
agridata.tn.
Vous pouvez suivre le lien pour vérifier la source directement
sur le portail.
Dépannage
Le client signale qu'il ne trouve pas le serveur.
Vérifiez que le chemin dans la configuration est absolu (pas
relatif) et qu'il pointe vers le répertoire qui contient
pyproject.toml. Erreur fréquente sous Windows :
n'utiliser que des slashes — barres obliques et antislashes
fonctionnent en JSON à condition d'être correctement échappés.
uv : command not found dans les logs du client.
Le client lance uv en sous-processus et hérite
d'un environnement limité qui n'inclut pas toujours le PATH
d'uv. Utilisez le chemin absolu vers le binaire uv
dans la configuration (le trouver avec which uv sur
macOS / Linux ou where uv sur Windows).
Vous voulez vérifier que le serveur démarre, avant
même de le brancher à un client. Depuis le répertoire
du clone, exécuter :
bash
uv run mcp dev src/tanitdata/server.py
MCP Inspector s'ouvre dans le navigateur et permet d'appeler
les outils sans client LLM.
La suite
Une fois le serveur opérationnel côté client, parcourez l'index Recherche
pour des cas d'usage avancés. Pour transmettre un retour, signaler
un bug ou proposer une collaboration, le
dépôt GitHub
et la page Contribuer sont les
points d'entrée.
Questions fréquentes
Pourquoi le serveur tourne-t-il en local plutôt que sur un endpoint hébergé ?
agridata MCP suit l'architecture standard du protocole MCP : le serveur tourne en processus local appelé par le client LLM via stdio. C'est ainsi que fonctionne la majorité des serveurs MCP de l'écosystème. Cela supprime les dépendances opérationnelles, simplifie l'authentification (aucune n'est nécessaire — la donnée est ouverte), et donne aux utilisateurs un contrôle complet sur leur environnement. La contrepartie est une installation locale ponctuelle.
Quels clients MCP sont supportés ?
Tous les clients qui implémentent le protocole MCP standard : Claude Desktop, Claude Code, VS Code avec extension MCP, Cursor, Windsurf, Gemini CLI, et d'autres. Le format du fichier de configuration varie légèrement selon le client ; la commande de lancement est la même.
Qu'est-ce que uv et pourquoi l'utiliser ?
uv est un gestionnaire de paquets Python rapide développé par Astral. Il résout et installe les dépendances en quelques secondes et gère les environnements virtuels de façon transparente. Le serveur agridata déclare uv comme runtime ; pip reste possible mais n'est plus le chemin recommandé.
Les données sont-elles librement réutilisables ?
Oui. Les données proviennent du portail public agridata.tn et sont publiées sous la Licence Nationale de Données Publiques Ouvertes (LNDPO). Toute réutilisation conforme à la LNDPO est permise ; l'attribution au portail est requise.
Où signaler un bug ou demander un jeu de données ?
Ouvrir une issue sur https://github.com/tanitdata/agridata-mcp ou écrire à contact@tanitdata.org.