← Tous les articlesDéveloppeurs

Canner a maintenant une API REST, une spécification OpenAPI et un serveur MCP pour agents IA

Canner a commencé par la chose la plus simple possible : déposez un projet, obtenez une URL en direct. C'est toujours la porte d'entrée. Mais une fois un projet en ligne, on veut souvent en faire plus sans ouvrir un navigateur — redéployer depuis un script, lire un journal de compilation en échec depuis son éditeur, ou laisser un agent IA livrer un correctif pendant qu'on regarde. Depuis cette semaine, tout cela a une surface propre et documentée.

Nous avons livré trois choses : une API REST avec une spécification OpenAPI, un outil en ligne de commande nettement amélioré, et un serveur Model Context Protocolpour que les agents IA pilotent Canner comme un outil natif. Le tout s'exécute sur la même infrastructure québécoise que le reste de la plateforme.

Une API REST documentée

Tout ce que fait le tableau de bord, votre propre code peut maintenant le faire aussi : créer et configurer des projets, lancer des déploiements, lire les métriques et les journaux de compilation, gérer les variables d'environnement, relier des domaines personnalisés, provisionner une base de données et consulter la facturation. La surface stable et documentée vit sous /v1, et il y a une référence interactive que vous pouvez parcourir — propulsée par une spécification OpenAPI 3.1 que vous pouvez fournir directement à un générateur de code ou à des définitions d'outils d'agent.

Elle se comporte comme on attend d'une API moderne. L'authentification est un jeton bearer (cnr_…) que vous créez dans le tableau de bord. Les erreurs reviennent dans une forme cohérente — un code stable, un message humain et un request_id à citer au soutien. Chaque réponse porte des en-têtes de limite de débit, et les points de terminaison de liste sont paginés par curseur. Le guide complet, avec des exemples curl à copier-coller, est sur la page développeurs.

curl https://api.canner.ca/v1/projects \
  -H "Authorization: Bearer cnr_votre_jeton_ici"

Une CLI qui parle JSON

La @canner-ca/clipermettait déjà de déployer le répertoire courant depuis n'importe quel terminal. Elle en fait maintenant plus et — détail important pour les scripts et les agents — elle parle --json. Ajoutez l'option à n'importe quelle commande et vous obtenez un seul objet lisible par machine au lieu d'un tableau formaté, prêt à passer dans jq ou à remettre à un programme.

canner projects --json | jq -r '.[].slug'
canner token create ci
canner env set API_KEY=secret --sensitive
canner domains add www.exemple.com

De nouvelles commandes token, env et domainscomplètent le tout, de sorte que les choses courantes pour lesquelles vous ouvriez le tableau de bord ont maintenant un équivalent d'une ligne. La liste complète est sur la page CLI.

Un serveur MCP pour les agents IA

C'est la partie qui nous enthousiasme le plus. Le Model Context Protocol est la norme ouverte qui permet aux agents IA d'appeler des outils, et Canner livre maintenant un serveur MCP : @canner-ca/mcp. Branchez-y Claude Desktop, Cursor ou tout client MCP et votre agent obtient onze outils natifs — lister les projets, lire le journal de compilation d'un déploiement, lancer un déploiement, définir une variable d'environnement, relier et vérifier un domaine.

Concrètement : vous pouvez dire à votre agent « la compilation de mon-site a échoué, trouve pourquoi et redéploie », et il lit le journal de compilation, raisonne sur l'erreur et lance un nouveau déploiement — sans que vous copiez une seule commande. La configuration tient en un bloc et un jeton; la page MCP contient les extraits exacts pour Claude Desktop et Cursor.

Deux choix délibérés. D'abord, le serveur a zéro dépendance— il met en œuvre le protocole lui-même et n'intègre 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. Ensuite, il est sécuritaire par défaut: seules les lectures et les écritures sûres sont exposées, de sorte qu'un agent peut déployer et configurer mais ne peut pas supprimer un projet ni révoquer un jeton par erreur.

Toujours canadien, de bout en bout

Rien de tout cela ne change l'endroit où les choses s'exécutent. L'API répond depuis la même infrastructure à Montréal qui sert vos projets; vos variables d'environnement et vos bases de données ne quittent jamais le Québec parce que vous y avez accédé depuis un script ou un agent plutôt qu'un navigateur. Automatiser Canner ne fait pas passer discrètement vos données par l'infonuage de quelqu'un d'autre — tout le but, comme sur la page souveraineté, est que non.

Si vous bâtissez avec des agents, le fichier llms.txtdécrit Canner pour les modèles de langage, et la spécification OpenAPI est prête pour les définitions d'outils. Commencez sur la page développeurs, prenez un jeton dans votre tableau de bord, et déployez votre prochain projet d'où vous travaillez déjà — le terminal, votre code, ou une conversation avec un agent.

À propos de l’auteur

Colin Shand est le fondateur de Canner, une plateforme de déploiement canadienne exploitée depuis le Québec. Il écrit sur l’infrastructure souveraine, l’écosystème des startups canadiennes et la création en toute indépendance.

Essayez Canner.

Déposez un projet, obtenez une URL en direct sur une infrastructure canadienne en environ 30 secondes. Forfait gratuit disponible.