Intégration MCP
MCP est le point d’entrée IA natif de Stellary et la meilleure façon de connecter Cursor, Claude Code, Claude Desktop, ou tout autre client Model Context Protocol à des données de delivery vivantes. Au lieu de reconstruire manuellement l’arbre REST, un client externe peut se brancher sur l’endpoint /mcp intégré et opérer à travers la même surface de tools que les agents et le runtime.
Cette page documente le comportement réel du serveur MCP actuellement implémenté dans le backend : transport, modèle d’identité, exposition du registre de tools, missions en file, gestion des propositions et extensions pilotées par plugins.
Dans Stellary, MCP n’est ni une surcouche tardive ni un simple habillage autour d’exemples de doc. C’est une surface runtime de premier plan, branchée directement au delivery projet, à la supervision cockpit, à l’exécution des agents et aux plugins installés dans le workspace.
Vue d’ensemble
Le serveur MCP est intégré directement dans le backend NestJS. Il n’y a pas de daemon séparé à lancer, pas de sidecar à déployer, et pas de bridge custom à maintenir.
Endpoint: https://app.stellary.co/mcpTransport: Streamable HTTPMéthodes: GET et POSTHeader auth: Authorization: Bearer <token>Session requise: non
GET est utile pour la découverte / négociation de protocole.POST transporte les vraies requêtes MCP.L’implémentation crée un transport stateless neuf à chaque requête, notamment pour rester compatible avec les clients MCP qui ne persistent pas d’identifiant de session.
Besoin d’abord du setup produit plus large ? Commencez par le Démarrage rapide pour le workspace, les tokens et les agents, ou utilisez la Référence API si vous devez provisionner des ressources avant qu’un client IA n’entre dans la boucle.
MCP vs REST
Utilisez MCP lorsque l’appelant est un client IA ou une boucle agent. Utilisez REST lorsque vous avez besoin d’un CRUD ressource déterministe, de contrats HTTP explicites, ou d’une intégration backend classique.
| Cas d’usage | Préférer MCP | Préférer REST |
|---|---|---|
| Assistant IA interactif dans Cursor ou Claude | Oui | Non |
| Boucle agent avec travail en file | Oui | Non |
| Provisioning explicite de projet depuis du code | Non | Oui |
| Tests d’intégration déterministes sur les routes | Non | Oui |
| Tools plugins installés dans un workflow IA | Oui | Généralement non |
Si vous devez créer workspaces, projets ou flux billing avant que la couche IA n’entre en jeu, partez de la Référence API puis ajoutez MCP par-dessus.
Transport
Client
mcpCursor, Claude Desktop, Claude Code, ou un autre client compatible MCP se connecte via Streamable HTTP.
Serveur intégré
/mcpStellary gère GET et POST directement dans le backend et recrée un transport à chaque requête.
Tools workspace
liveLe même endpoint peut exposer des tools board, cockpit, file agent et plugins.
Le transport est volontairement stateless. En pratique, cela signifie que vous pouvez connecter des clients comme Cursor sans dépendre d’un Mcp-Session-Id persistant.
Modèle d’identité
Stellary MCP a deux modes de fonctionnement principaux : un utilisateur humain qui connecte un client IA, ou un agent de workspace dédié qui se connecte avec son propre token.
Client utilisateur
JWT / PATLe meilleur choix pour Cursor, Claude Desktop, Claude Code, ou tout client MCP interactif utilisé comme un humain sur les boards et les données cockpit.
Agent de workspace
Agent tokenLe meilleur choix pour les agents dédiés, les missions en file, les tools avec contexte workspace, et les tools plugins installés comme GitHub ou Slack.
Barrière de transport
MCP_TOKENUtile comme barrière bearer au niveau transport, mais cela ne résout pas une identité utilisateur ou agent pour les tools Stellary actuels.
Cette distinction compte parce que certains tools ont besoin d’un contexte workspace. Les clients humains en JWT/PAT peuvent utiliser les flux board et cockpit, tandis que les agent tokens déverrouillent les tools avec contexte workspace comme les missions en file, les documents de mission et les intégrations plugins.
Authentification
Le contrôleur résout les bearer tokens par couches. D’abord un JWT utilisateur classique, ensuite un personal access token, puis en dernier recours le MCP_TOKEN statique optionnel.
| Type de bearer | Identité résolue | Meilleur usage | Nuance importante |
|---|---|---|---|
| JWT utilisateur | Utilisateur humain | Sessions navigateur et setup client court | Pratique pour explorer, mais moins confortable qu’un PAT dans un outil externe |
| Personal access token | Utilisateur humain | Cursor, Claude Code, scripts, clients stables hors navigateur | Le choix recommandé par défaut pour un usage MCP humain |
| Agent token | Agent de workspace | Missions en file, tools plugins, automatisation avec contexte workspace | Le meilleur fit pour les boucles agent externes et les agents MCP-only |
MCP_TOKEN | Contexte MCP anonyme | Barrière de transport et setups local/dev limités | Les tools Stellary actuels ont encore majoritairement besoin d’une identité utilisateur ou agent |
L’accès aux tools est ensuite gouverné par l’accès projet, les permissions workspace, les whitelists d’agent, le scope projet et la politique d’autonomie. Pour les agent tokens, le comportement en écriture dépend du mode d’autonomie configuré.
Configuration client
Tous les clients MCP ont besoin des mêmes fondamentaux : l’endpoint https://app.stellary.co/mcp, le transport Streamable HTTP, et un header Authorization: Bearer.
Cursor
{ "mcpServers": { "stellary": { "url": "https://app.stellary.co/mcp", "headers": { "Authorization": "Bearer YOUR_TOKEN_HERE" } } }}Claude Code
claude mcp add stellary \ --transport streamable-http \ https://app.stellary.co/mcp \ --header "Authorization: Bearer YOUR_TOKEN_HERE"Claude Desktop et clients similaires
{ "mcpServers": { "stellary": { "url": "https://app.stellary.co/mcp", "headers": { "Authorization": "Bearer YOUR_TOKEN_HERE" } } }}Après connexion, le premier mouvement utile consiste généralement à appeler list_projects, puis à passer sur des IDs exacts pour le reste de la session.
Si vous devez encore créer un personal access token ou un agent avant de connecter le client, suivez d’abord le Démarrage rapide et la section API tokens.
Workflows courants
En pratique, le serveur MCP de Stellary est surtout utilisé selon trois schémas : exploration interactive du workspace, exécution d’agent sur missions en file, et actions opérationnelles pilotées par plugins.
Assistant projet interactif
humainUtilisez Cursor, Claude Code ou Claude Desktop comme un utilisateur humain pour inspecter projets, cartes, documents et signaux cockpit dans un même workspace.
Exécution de missions en file
agentFaites tourner un agent dédié hors de l’app, récupérez les missions en file et renvoyez l’état des cartes vers le delivery.
Opérations pilotées par plugins
pluginsCombinez contexte board et tools GitHub, Slack, Email, Discord ou X depuis la même surface MCP pour des workflows réellement opérationnels.
Pour les surfaces produit derrière ces workflows, voyez Board & cartes, Documents & contexte et le guide des agents.
Surface des tools
Les tools MCP sont assemblés depuis trois endroits dans le backend : les anciens tools cockpit, le registre partagé de tools cœur, et les plugins workspace installés. Le résultat est un endpoint unique, mais pas un usage unique.
Lecture board
coreExplorez projets, membres, labels, cartes, sous-tâches et contexte delivery avant de décider d’une écriture.
list_projects | get_project_details | list_cards | get_card_details | get_card_commentsÉcriture board & collaboration
coreCréez ou mettez à jour des cartes, déplacez le travail entre colonnes, assignez, commentez et gardez les checklists ou sous-tâches alignées.
create_card | create_cards_bulk | move_card | update_card | assign_card | add_commentCockpit & supervision
coreLisez les signaux de pilotage du workspace, le contexte sprint, le monitoring et les propositions en attente depuis la couche cockpit.
get_pilotage_state | get_cockpit_dashboard | get_agent_status | list_pending_proposalsRuntime agent
agentExécutez des boucles agent externes, réclamez des missions en file, terminez ou faites échouer les runs, et gardez le cycle de vie des cartes synchronisé avec l’app.
stellary_init | get_next_mission | wait_for_mission | complete_mission | fail_missionPlusieurs tools board acceptent une commodité par nom avec résolution exacte ou fuzzy. Malgré cela, pour les runs sérieux et les boucles agent longues, mieux vaut découvrir les IDs d’abord puis les réutiliser explicitement.
Si vous voulez comprendre les surfaces humaines sur lesquelles ces tools opèrent, lisez aussi le guide board et le guide documents.
Tools plugins
Les définitions plugins sont enregistrées automatiquement dans la même surface MCP lorsque le plugin est installé et activé dans un workspace. Leurs IDs de tools sont préfixés par le slug du plugin.
Exemples:github_list_reposgithub_create_prslack_post_messageemail_send_emaildiscord_post_messagex_create_draftLe codebase embarque actuellement des définitions de plugins pour GitHub, Slack, Email, Discord et X. Ces tools demandent un contexte workspace plus une configuration plugin déchiffrée, donc ils sont typiquement consommés via des agent tokens.
Missions agent
MCP devient particulièrement puissant lorsqu’il est couplé à des agents de workspace dédiés. Dans ce modèle, l’app met les missions en file et le client MCP externe devient la boucle d’exécution.
- Assignez un agent actif à une carte dans Stellary.
- Lancez une mission depuis l’app.
- Si l’agent est
mcpOnly, la mission est mise en file au lieu d’être exécutée localement. - Le client MCP externe réclame le travail avec
get_next_missionou long-poll avecwait_for_mission. - La prise en charge passe la mission en cours et déplace la carte vers la colonne in-progress si possible.
- Le client termine avec
complete_missionoufail_mission, ce qui met à jour l’état de mission et poste un commentaire sur la carte.
Pour les agent tokens, stellary_init est l’appel de bootstrap recommandé. Il retourne le mode d’autonomie, les règles, les skills, et la liste filtrée des tools réellement disponibles pour cet agent.
Boucle agent recommandée:1. stellary_init2. get_next_mission ou wait_for_mission3. lire le contexte carte et les documents4. exécuter les tools avec des IDs exacts5. complete_mission ou fail_missionApprobations
Le comportement de proposition est piloté par la couche de policy des tools. Seuls les agent tokens participent aux contrôles de propositions liés à l’autonomie ; un humain utilisant MCP agit directement en son nom.
| Mode d’autonomie agent | Tools de lecture | Tools d’écriture et de collaboration |
|---|---|---|
autonomous | Exécution directe | Exécution directe |
supervised | Exécution directe | Les tools sûrs s’exécutent directement ; les tools marqués approval_required retournent une proposition persistée |
approval | Exécution directe | Tout tool non-read devient une proposition |
Les agents MCP-only gardent le mode d’autonomie configuré dans Stellary. En mode approval, les écritures non-read deviennent des propositions persistées, même si le client d’exécution est externe.
Développement local
En développement local, si NODE_ENV n’est pas `production` et que MCP_TOKEN n’est pas défini, le contrôleur laisse les requêtes non authentifiées atteindre le transport MCP. Cela simplifie le branchement local, mais ne donne pas magiquement accès aux données workspace.
Exemple backend/.env:# MCP_TOKEN=your-secret-token
Sans MCP_TOKEN en local :- /mcp reste joignable- les tools workspace actuels demandent encore majoritairement une identité utilisateur ou agentEn production, ou dès que MCP_TOKEN est configuré, un bearer token est requis avant même d’atteindre le transport.
Dépannage
401 token invalide ou expiré
Vérifiez d’abord le format du bearer. Ensuite, confirmez que vous utilisez un JWT utilisateur, un PAT, ou un agent token qui existe encore et n’a pas été révoqué.
Le tool indique qu’il faut un user token
Vous êtes probablement connecté avec MCP_TOKEN ou avec une requête locale anonyme. Passez sur un JWT utilisateur ou un personal access token.
Le tool indique qu’il faut un contexte workspace
Cela signifie généralement que vous essayez d’appeler un tool réservé aux agents ou adossé à un plugin depuis une session humaine JWT/PAT. Utilisez plutôt un agent token rattaché à un agent de workspace.
Le tool plugin est visible mais échoue
Le plugin du workspace n’est peut-être pas installé ou activé, ou sa configuration chiffrée peut être manquante. Les tools plugins demandent aussi un contexte agent/workspace dans le flow MCP actuel.
Le fuzzy matching choisit la mauvaise ressource
Commencez par list_projects, list_cards, ou un autre tool de découverte, puis réutilisez les IDs exacts. C’est le pattern le plus sûr pour des boucles agent longues.
Guides liés
Ces pages aident à relier MCP au reste du modèle opératoire Stellary, du provisioning des ressources jusqu’aux agents de workspace et à une stratégie MCP plus large.
Démarrage rapide
Créez un workspace, un projet, un token et un premier agent avant de brancher un client MCP.
Référence API
Utilisez REST lorsque vous avez besoin de provisioning déterministe, d’auth ou de CRUD explicite.
Guide des agents
Voyez comment les agents, propositions, modes d’autonomie et missions se comportent dans le produit.
Ce que MCP change pour les outils de code IA
Lisez le contexte plus large autour de MCP, de l’accès au contexte et du tooling IA en 2026.