MapleStatsMCP

Installation

Connecter MapleStats à votre agent

Le plus simple est le serveur hébergé : pointez votre client vers une seule adresse, ou collez une requête et laissez votre agent s'en charger. Rien à installer, ni compte ni clé d'API. Si vous préférez tout garder sur votre machine, ou si vous avez besoin de l'outil de totalisation des microdonnées, exécutez-le en local.

Le plus simple : demandez à votre agent L'agent lit les étapes dans le dépôt, ajoute le serveur hébergé à ses propres réglages et vous dit quand redémarrer.

Connectez le serveur MCP MapleStats à cet agent. Suivez les étapes de https://github.com/dsanchezp18/maplestats-mcp
  1. Copiez la requête.
  2. Collez-la dans Claude Code, Codex, Cursor ou tout agent qui peut exécuter des commandes sur votre ordinateur.
  3. Redémarrez l'agent quand il vous le dit, puis demandez des données.

Recommandé : sans installation

Utiliser le serveur hébergé

Une copie publique fonctionne à https://maplestats-mcp.onrender.com/mcp. Elle ne demande ni compte, ni jeton, ni installation : indiquez cette adresse à tout client qui prend en charge les serveurs MCP distants (HTTP).

Elle fonctionne sur un hébergeur gratuit, avec des limites : une requête toutes les 10 minutes la garde éveillée, donc les démarrages à froid sont rares, mais la première requête après une période d'inactivité peut prendre jusqu'à une minute ; chaque client est limité à 60 requêtes par minute ; et l'outil de totalisation des microdonnées (statcan_pumf_tabulate) est désactivé, alors que la recherche, la liste des fichiers et les dictionnaires de données des FMGD fonctionnent. Pour un usage plus intensif ou pour les tableaux de microdonnées, installez-le localement, plus bas. Les appels d'outils de votre agent, comme une expression de recherche ou un numéro de tableau, arrivent au serveur et à son hébergeur ; le code n'en conserve aucun (voir la FAQ), et l'hébergeur, Render, tient ses propres journaux : consultez les conditions et la politique de confidentialité de Render. Pour une confidentialité totale, installez-le localement, plus bas.

Claude Code
claude mcp add --transport http --scope user maplestats https://maplestats-mcp.onrender.com/mcp
Codex CLI
codex mcp add maplestats --url https://maplestats-mcp.onrender.com/mcp
Cursor, VS Code et autres clients JSON
{
  "mcpServers": {
    "maplestats": {
      "url": "https://maplestats-mcp.onrender.com/mcp"
    }
  }
}

VS Code utilise "servers" au lieu de "mcpServers" et exige "type": "http". Vérifiez qu'il répond avec curl https://maplestats-mcp.onrender.com/health.

claude.ai et l'application mobile Claude : sur le Web, ouvrez Paramètres, Connecteurs, Ajouter un connecteur personnalisé, et saisissez la même adresse, si votre forfait offre les connecteurs. Activez-le ensuite depuis le menu des outils d'une conversation, sur le Web ou dans l'application mobile. Claude demande une approbation avant chaque appel d'outil par défaut ; tous les outils de MapleStats sont en lecture seule, vous pouvez donc les régler sur « toujours autoriser » dans les permissions du connecteur. ChatGPT (Web) : activez le mode développeur sous Paramètres, Sécurité et connexion, puis créez une application en mode développeur pour un serveur MCP distant avec la même adresse et sans authentification. Ouvrir l'adresse dans un navigateur affiche l'erreur « Missing session ID » ; c'est normal, seuls les clients MCP peuvent l'utiliser.

Pour toute une organisation : avec Claude Team ou Enterprise, un propriétaire ouvre Paramètres de l'organisation, Connecteurs, Ajouter un connecteur personnalisé et saisit la même adresse une seule fois ; chaque membre le connecte ensuite depuis ses propres paramètres de connecteurs. Avec ChatGPT Business, Enterprise ou Edu (Web), un administrateur de l'espace de travail active d'abord le mode développeur sous Paramètres de l'espace de travail, Autorisations et rôles, Données connectées, puis crée l'application sans authentification et la publie sous Paramètres de l'espace de travail, Applications, Brouillons, Publier. Le serveur hébergé est une instance gratuite partagée, limitée à 60 requêtes par minute par adresse client ; une grande organisation devrait donc exécuter sa propre copie.

Ou exécutez-le sur votre machine

01

Installer uv

uv exécute des outils Python sans étape d'installation distincte. Passez cette étape si uv --version fonctionne déjà.

macOS, Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

02

Ajouter le serveur à votre client

Choisissez votre client. Chaque entrée exécute uvx maplestats-mcp, qui télécharge le serveur la première fois, puis le réutilise.

Claude Code

Exécutez cette commande une fois dans un terminal. --scope user rend le serveur accessible dans tous les projets ; sans cette option, il n'est ajouté qu'au projet courant.

Terminal
claude mcp add --scope user maplestats -- uvx maplestats-mcp

Claude Desktop

Dans Claude Desktop, ouvrez Réglages, puis Développeur, puis Modifier la configuration. Ajoutez le serveur au fichier qui s'ouvre, enregistrez et redémarrez Claude.

claude_desktop_config.json
{
  "mcpServers": {
    "maplestats": {
      "command": "uvx",
      "args": ["maplestats-mcp"]
    }
  }
}

Le fichier se trouve dans ~/Library/Application Support/Claude/claude_desktop_config.json sous macOS et dans %APPDATA%\Claude\claude_desktop_config.json sous Windows.

Cursor

Le lien ouvre Cursor avec l'entrée déjà remplie. Pour l'ajouter à la main, placez-la dans ~/.cursor/mcp.json pour tous les projets, ou dans .cursor/mcp.json pour un seul projet.

~/.cursor/mcp.json
{
  "mcpServers": {
    "maplestats": {
      "command": "uvx",
      "args": ["maplestats-mcp"]
    }
  }
}

VS Code

Pour l'ajouter à la main, notez que VS Code utilise la clé servers, et non mcpServers. Placez ceci dans .vscode/mcp.json d'un espace de travail, ou lancez la commande MCP: Open User Configuration dans la palette de commandes pour l'ajouter à tous vos espaces de travail.

.vscode/mcp.json
{
  "servers": {
    "maplestats": {
      "type": "stdio",
      "command": "uvx",
      "args": ["maplestats-mcp"]
    }
  }
}

Codex CLI

Ajoutez-le depuis le terminal, ou écrivez vous-même la même entrée dans ~/.codex/config.toml.

Terminal
codex mcp add maplestats -- uvx maplestats-mcp
~/.codex/config.toml
[mcp_servers.maplestats]
command = "uvx"
args = ["maplestats-mcp"]

Gemini CLI

Ajoutez-le depuis le terminal (-s user pour tous les projets), ou écrivez l'entrée dans ~/.gemini/settings.json, à côté des réglages qui s'y trouvent déjà.

Terminal
gemini mcp add -s user maplestats uvx maplestats-mcp
~/.gemini/settings.json
{
  "mcpServers": {
    "maplestats": {
      "command": "uvx",
      "args": ["maplestats-mcp"]
    }
  }
}

Autres clients

La plupart des clients MCP acceptent cette entrée mcpServers. Si vous avez installé la commande avec uv tool install ou pip, utilisez "command": "maplestats-mcp" et retirez args.

JSON
{
  "mcpServers": {
    "maplestats": {
      "command": "uvx",
      "args": ["maplestats-mcp"]
    }
  }
}

03

Poser une question

Redémarrez le client s'il était ouvert, puis demandez des données. Nommer la source est facultatif ; demander des citations amène l'agent à citer chaque bloc de provenance. Pour neuf exemples complets, des microdonnées du recensement au prix des cartes de crédit, consultez les démos.

  • Quelle a été la variation sur 12 mois de l'indice des prix à la consommation le mois dernier ? Citez le tableau.
  • Comparez le loyer moyen d'un appartement de deux chambres à Calgary et à Edmonton depuis 2020, avec les données de la SCHL.
  • Avec les microdonnées à grande diffusion de l'Enquête sur la population active, estimez le taux d'emploi par province, avec les poids d'enquête.
  • What is the Bank of Canada's policy rate, and how long has it been at that level?

Autres façons d'installer

Installer la commande une fois

Si vous préférez une installation fixe à uvx, installez la commande et indiquez directement maplestats-mcp à votre client.

Terminal
# avec uv (mise à jour : uv tool upgrade maplestats-mcp)
uv tool install maplestats-mcp

# ou avec pip
pip install maplestats-mcp

# ou la version de développement, depuis GitHub
uv tool install git+https://github.com/dsanchezp18/maplestats-mcp.git

Hébergement

L'exécuter comme serveur HTTP

Pour un déploiement partagé, passez le transport en HTTP. Si le serveur est accessible au-delà de votre machine, définissez un jeton porteur et exigez-le. GET /health indique la durée de fonctionnement et la version, sans authentification.

Terminal
MAPLE_TRANSPORT=http MAPLE_HOST=0.0.0.0 MAPLE_PORT=8000 \
MAPLE_AUTH_TOKEN="$(openssl rand -hex 32)" MAPLE_REQUIRE_AUTH=1 \
uvx maplestats-mcp
Variables d'environnement d'un serveur hébergé
VariableDéfautRôle
MAPLE_TRANSPORTstdiostdio pour les clients locaux, http pour l'hébergement
MAPLE_HOST, MAPLE_PORT127.0.0.1, 8000Adresse d'écoute HTTP
MAPLE_AUTH_TOKENnon définiJeton porteur exigé sur /mcp s'il est défini
MAPLE_REQUIRE_AUTH0Refuse de démarrer sans jeton si 1
MAPLE_RATE_LIMIT_REQUESTS, MAPLE_RATE_LIMIT_WINDOW_SECONDS120, 60Limite de débit par client, sur fenêtre glissante
MAPLE_MAX_CONCURRENT_REQUESTS8Requêtes MCP simultanées ; les suivantes attendent jusqu'à 5 s, puis reçoivent HTTP 503
MAPLE_TOOL_TIMEOUT_SECONDS120Durée maximale d'un appel d'outil avant une erreur nommée
MAPLE_ALLOWED_ORIGINSsite du projet, localhostOrigines de navigateur admises sur /mcp, séparées par des virgules (https://*.office.com pour un complément Office) ; les autres reçoivent HTTP 403, les clients sans origine sont admis
MAPLE_CACHE_MAX_ENTRIES2000Entrées par compartiment du cache en mémoire
MAPLE_CACHE_MAX_MB128Plafond estimé de la mémoire de tout le cache
MAPLE_PARSE_WORKERS, MAPLE_PARSE_TIMEOUT_SECONDS4, 60Fils qui lisent les fichiers Excel et CSV, et durée maximale pour un fichier
MAPLE_PUMF_CACHE_DIR, MAPLE_PUMF_CACHE_MAX_GBdossier temporaire, 5Emplacement des microdonnées téléchargées et taille maximale
MAPLE_PUMF_TABULATE10 désactive statcan_pumf_tabulate, qui télécharge des fichiers de microdonnées entiers ; la recherche, la liste des fichiers et les dictionnaires restent
MAPLE_LODE_CACHE_DIR, MAPLE_LODE_CACHE_MAX_GBdossier temporaire, 3Emplacement des fichiers décompressés des bases de données ouvertes (ECDO) de Statistique Canada et taille maximale
MAPLE_LODE_MAX_DOWNLOAD_MB300Taille maximale d'une archive de base de données ouverte téléchargée par un appel ; 0 désactive les téléchargements
MAPLE_IP_HORIZONS_CACHE_DIR, MAPLE_IP_HORIZONS_CACHE_MAX_GBdossier temporaire, 3Emplacement des tableaux de brevets de l'OPIC en Parquet et taille maximale
MAPLE_EXPORT_DIRdossier TéléchargementsEmplacement où reproduce_workbook enregistre les classeurs Excel sur un serveur local
MAPLE_USAGE_STATS1Compte les appels par nom d'outil à /stats, en mémoire ; 0 désactive ces comptes
MAPLE_SSL_CERTFILE, MAPLE_SSL_KEYFILEnon définiTerminaison TLS dans le processus du serveur
MAPLE_TRUST_PROXY_HEADERS0Limites de débit selon X-Forwarded-For ; à activer seulement derrière un mandataire qui le définit

Hébergement

L'exécuter avec Docker

Le dépôt fournit un Dockerfile et un docker-compose.yml qui servent HTTP sur le port 8000. Le fichier compose définit MAPLE_REQUIRE_AUTH=1, si bien que le conteneur refuse de démarrer tant que MAPLE_AUTH_TOKEN n'est pas défini. Conservez le jeton : les clients l'envoient dans l'en-tête Authorization: Bearer à http://localhost:8000/mcp.

Deux volumes nommés conservent les microdonnées et les tableaux de brevets téléchargés d'un redémarrage à l'autre. Les variables du tableau ci-dessus se définissent de la même façon que le jeton.

Terminal
git clone https://github.com/dsanchezp18/maplestats-mcp
cd maplestats-mcp
export MAPLE_AUTH_TOKEN="$(openssl rand -hex 32)"
echo "$MAPLE_AUTH_TOKEN"
docker compose up -d --build
curl http://localhost:8000/health

Dépannage

Quand la connexion échoue

Le client ne trouve pas uvx
Les applications de bureau ne lisent pas toujours le PATH de votre terminal. Utilisez le chemin complet donné par which uvx (macOS, Linux) ou where uvx (Windows) comme commande, puis redémarrez le client.
Un appel de microdonnées ou de brevets expire
Le premier appel de statcan_pumf_tabulate sur un fichier le télécharge, ce qui peut prendre une minute ou deux ; les appels suivants utilisent le cache. Augmentez MAPLE_TOOL_TIMEOUT_SECONDS si votre connexion est lente.
L'agent n'utilise pas les outils
Vérifiez que le client affiche trois outils MapleStats : plan_query, search_tools et call_tool. Les autres sont trouvés par la recherche ; ils n'apparaissent donc pas dans la liste d'outils du client.