Confiez les clés à votre agent IA.
Le serveur MCP de Canner transforme l'API Canner en outils natifs pour les agents IA. Branchez-y Claude Desktop, Cursor ou tout client Model Context Protocol et votre agent peut déployer un projet, lire un journal de compilation en échec, définir une variable d'environnement, relier un domaine ou consulter les bases Postgres d’un projet, leurs sauvegardes et l’instance dédiée — sur une infrastructure canadienne, en votre nom.
Outils dans le navigateur (Lovable, Bolt, v0)
Les outils d’IA qui s’exécutent dans le navigateur se connectent à un serveur MCP distant par son URL. Pointez le vôtre vers le point de terminaison Canner ci-dessous et authentifiez-vous avec un jeton API Canner, puis demandez à votre agent de « sauvegarder mon app sur Canner » — il peut créer un projet et déployer votre code directement depuis la conversation, sur une infrastructure canadienne. Dans Lovable : Connecteurs → Connecteurs de conversation → Nouveau serveur MCP. Dans Bolt et v0 : ajoutez un serveur MCP personnalisé dans les réglages.
Dans les jetons API de votre tableau de bord, choisissez le type « Connecteur MCP (déploiement seulement) » — limité à l’accès projet + déploiement, sans facturation ni gestion de jetons, pour qu’un identifiant collé dans un outil tiers ne puisse rien faire de plus que déployer.
Clients locaux (Claude Desktop, Cursor, Claude Code)
Les agents de bureau exécutent le serveur via npx — rien à installer globalement. Ajoutez-le à la configuration de votre client MCP avec un jeton API Canner. Dans Claude Desktop, modifiez claude_desktop_config.json; dans Cursor, modifiez .cursor/mcp.json. Redémarrez ensuite le client et les outils Canner apparaissent.
{
"mcpServers": {
"canner": {
"command": "npx",
"args": ["-y", "@canner-ca/mcp"],
"env": { "CANNER_TOKEN": "cnr_your_token_here" }
}
}
}Déjà utilisé canner login avec la CLI ? Vous pouvez retirer la ligne CANNER_TOKEN — le serveur lit le jeton enregistré par la CLI.
Outils
Plus de trente outils, chacun enrobant un point de terminaison REST documenté — dont canner_create_project et canner_save_app, qui déploient votre code depuis l’agent :
canner_whoamiConfirme le compte sous lequel l'agent est connecté et l'organisation pour laquelle il agit.canner_list_projectsListe les projets de cette organisation.canner_get_projectDonne l'état, l'URL et la source d'un projet.canner_list_deploymentsListe les déploiements d'un projet, du plus récent au plus ancien.canner_get_deploymentLit un déploiement au complet — journal de compilation inclus.canner_deployRecompile un projet relié à GitHub depuis HEAD.canner_list_env_varsListe les variables d'environnement d'un projet.canner_set_env_varAjoute une variable d'environnement.canner_list_domainsListe les domaines personnalisés d'un projet.canner_add_domainRelie un domaine personnalisé.canner_verify_domainRevérifie le DNS et provisionne le TLS d'un domaine.canner_create_projectCrée un nouveau projet vide où déployer.canner_save_appDéploie une app directement depuis votre agent en envoyant ses fichiers source.canner_list_databasesListe les bases de données d'un projet, avec taille et version de Postgres.canner_get_databaseDétails de connexion d'une base. Les identifiants sont masqués sauf demande explicite.canner_create_databaseAjoute une autre base de données à un projet (Démarrage : une par projet; les forfaits payants peuvent en ajouter).canner_export_databaseDémarre l'exportation d'une base; interrogez canner_get_database_operation pour le résultat.canner_copy_databaseCopie une base dans une autre base VIDE qui vous appartient.canner_list_database_operations / canner_get_database_operationListe les opérations récentes sur les bases, ou vérifie le statut de l'une d'elles.canner_list_backupsListe les sauvegardes d'une base et sa politique de sauvegarde (lecture seule — créer, restaurer et supprimer des sauvegardes se fait dans le tableau de bord ou la CLI).canner_get_instanceL'instance Postgres dédiée d'un projet et sa fenêtre de récupération à un instant précis (lecture seule — la création, la restauration et le déplacement se font dans le tableau de bord ou la CLI).canner_database_security_checkUne vérification en lecture seule de la sécurité et de la performance d'une base (politiques, fonctions, vues, index, clés primaires). Lit le catalogue, jamais vos données.canner_audit_database_rolesCe que peut faire chaque rôle d'une base d'instance dédiée, avec des constats pour une configuration à moindre privilège (lecture seule).canner_get_instance_upgradeIndique si l'instance dédiée peut passer à une version de Postgres plus récente et ce qui l'en empêcherait (lecture seule — la mise à niveau se fait dans le tableau de bord ou la CLI).canner_get_instance_configRéglages de l'instance dédiée : préréglage, délais d'expiration, fenêtre de maintenance et redémarrage en attente (lecture seule).canner_set_instance_configModifie le préréglage, les délais d'expiration et la fenêtre de maintenance. Effet immédiat, sans redémarrage.canner_restart_instanceRedémarre l'instance dédiée maintenant (connexions coupées quelques secondes). Exige confirm: true, seulement avec l'accord du propriétaire.canner_list_extensionsExtensions offertes pour une base de l'instance dédiée et celles installées (lecture seule).canner_install_extensionInstalle une extension (pgvector, PostGIS, pg_trgm, pg_cron…). pg_cron redémarre l'instance et exige confirm: true.canner_remove_extensionRetire une extension; refusé tant que des objets l'utilisent.canner_get_replicationRéplication logique d'une base : activée ou non, limite de WAL, publications, slots et leur santé (lecture seule).canner_set_replicationActive ou désactive la réplication logique (redémarre l'instance, confirm: true) ou change la limite de WAL par slot.canner_get_instance_memoryLa répartition du budget de mémoire entre l'application et son Postgres dédié, et si un changement attend (lecture seule).canner_apply_instance_memoryApplique la répartition de la mémoire (redémarre l'instance, confirm: true).canner_set_instance_monitoringActive ou désactive les requêtes lentes et le journal (redémarre l'instance, confirm: true).Zéro dépendance
Le serveur parle directement le transport stdio de MCP — aucun paquet tiers. C'est la même discipline de chaîne d'approvisionnement que le reste de Canner : le code que vous exécutez dans votre agent n'embarque rien de plus à auditer, et ne sort jamais du Canada en fonctionnement normal.
Sécuritaire par défaut
Les opérations destructrices — supprimer un projet, révoquer un jeton, supprimer une base ou un domaine — ne sont volontairement pas exposées, afin qu'un agent ne les déclenche pas par erreur. Faites-les depuis le tableau de bord ou la CLI.
Ce qu'il enregistre et transmet
Le serveur n'écrit rien sur votre machine. Il lit un jeton depuis la variable d'environnement CANNER_TOKEN ou — si vous avez déjà lancé canner login — depuis le fichier écrit par la CLI dans ~/.canner/credentials. Les requêtes vont uniquement vers api.canner.ca. Il n'y a aucune télémétrie, aucune analytique et aucun rapport d'erreur. Exécuté via npx, rien n'est installé globalement; pour le retirer, supprimez l'entrée du fichier de configuration de votre client MCP.
L'utilisation du serveur MCP et du service Canner est régie par nos conditions d'utilisation et notre politique de confidentialité.
En coulisse, il appelle la même API REST; pour les flux en terminal, voir la CLI. Vous bâtissez pour des agents ? Le fichier llms.txt décrit Canner pour les modèles de langage.