đ Utiliser le bloc MCP dans Celestory
đ Utiliser le bloc MCP dans Celestory
Le bloc MCP de Celestory permet à vos histoires d'appeler les outils de n'importe quel serveur MCP (Model Context Protocol) : lire et écrire des données, interroger un service externe, déclencher des actions⊠Une seule configuration (une URL) suffit pour découvrir automatiquement tous les outils disponibles d'un serveur, avec leurs arguments typés.
â ïž Baserow, Airtable, Zapier et Make (Integromat) ont dĂ©jĂ leur propre bloc dĂ©diĂ© dans Celestory, plus simple Ă configurer. N'utilisez le bloc MCP gĂ©nĂ©rique que pour un service qui n'a pas de bloc natif.
1. đ€ C'est quoi MCP ?
MCP (Model Context Protocol) est un standard ouvert qui permet à une application de découvrir et d'appeler les « outils » d'un service externe, de façon uniforme.
- Un serveur MCP expose des outils : par exemple
list_rows(lister des lignes),send_message(envoyer un message)⊠- Un client MCP appelle ces outils : c'est le rÎle du bloc MCP de Celestory.
2. â ïž Les deux conditions pour qu'un service fonctionne
Votre histoire s'exĂ©cute dans le navigateur (Ă©diteur ou histoire publiĂ©e). Deux conditions doivent ĂȘtre remplies pour qu'un serveur MCP soit joignable depuis le bloc â si l'une des deux manque, ça ne marchera pas, quoi que vous fassiez cĂŽtĂ© Celestory :
Condition 1 : le serveur autorise votre domaine (CORS)
Le navigateur bloque par dĂ©faut tout appel vers un autre domaine. Le serveur MCP doit explicitement l'autoriser via des en-tĂȘtes CORS (Access-Control-Allow-Origin). C'est une dĂ©cision qui appartient Ă l'Ă©diteur du service, pas Ă Celestory. Si vous hĂ©berge vous-mĂȘme le serveur (auto-hĂ©bergĂ©), c'est vous qui contrĂŽlez cette configuration.
Condition 2 : une authentification par jeton statique (pas d'OAuth)
Le bloc MCP de Celestory sait faire deux choses : coller une URL, coller des headers statiques (un objet JSON, ex. {"Authorization": "Bearer âŠ"}). Il ne sait pas dĂ©rouler un flow OAuth (popup de connexion, consentement, Ă©change et rafraĂźchissement de token). Beaucoup de grands Ă©diteurs poussent aujourd'hui leur MCP vers l'OAuth exclusivement â mĂȘme quand leur CORS est ouvert, la connexion depuis Celestory reste bloquĂ©e si l'authentification exige OAuth.
Retenez ceci : CORS ouvert ne veut pas dire que ça marchera. Il faut les deux conditions à la fois.
3. â Services compatibles avec le bloc MCP
Focus gestion de projet : au-delà de la démo, voici comment chaque service s'intÚgre concrÚtement dans le pilotage d'un projet.
Service | Authentification | Outils (exemples) | Cas d'usage en gestion de projet |
|---|---|---|---|
Jira |
|
| Faire remonter dans l'histoire l'avancement réel d'un sprint (issues ouvertes/fermées par JQL), ou transformer un retour utilisateur en ticket Jira assigné à la bonne équipe, sans quitter Celestory |
Linear |
|
| MĂȘme logique que Jira cĂŽtĂ© Linear : convertir un feedback recueilli en cours de projet en ticket priorisĂ©, ou afficher l'Ă©tat d'avancement d'une Ă©quipe |
GitHub |
|
| Suivre l'avancement technique d'un projet (issues, PRs en attente de revue) directement dans un tableau de bord narratif, ou déclencher une issue de bug depuis un formulaire de test |
Cloudflare |
|
| Automatiser une étape de clÎture de jalon (purge de cache, vérification d'un déploiement) à la fin d'une phase de mise en production |
Intercom |
|
| Faire remonter dans le suivi de projet les retours clients liés à une fonctionnalité en cours de développement, pour prioriser le backlog |
Klaviyo |
|
| Suivre l'avancement et la performance d'une campagne dans le cadre d'un projet marketing, directement depuis le pilotage du projet |
Chargebee |
|
| Conditionner le déblocage d'un jalon de projet client au statut de facturation |
Auto-hĂ©bergĂ© : votre propre serveur MCP fonctionne aussi â vous contrĂŽlez le reverse proxy, donc vous pouvez toujours activer CORS et choisir une authentification par jeton (voir section 6).
La plupart des autres services connus nécessitent un serveur
Figma, Notion, Slack, Stripe, PayPal, Salesforce, HubSpot, Webflow, ClickUp, Jotform, Attio, Netlify⊠n'acceptent qu'une connexion OAuth (popup de connexion, consentement, refresh de token) que le bloc MCP ne sait pas dérouler dans le navigateur.
Pour ces services, utilisez plutĂŽt le bloc Voltask Webhook. Voltask exĂ©cute l'intĂ©gration cĂŽtĂ© serveur : il n'est pas soumis aux contraintes du navigateur (CORS, OAuth). Configurez la connexion au service tiers directement dans Voltask, puis dĂ©clenchez-la depuis Celestory via un simple webhook â voir le tutoriel Voltask Webhook.
4. âïž Configurer le bloc MCP dans Celestory
- Dans le graphe, ajoutez le bloc MCP (catégorie Chatbot).
- Cliquez sur le point config du bloc et créez une ressource McpConfig.
- Dans le champ URL, collez l'URL du serveur MCP. Le champ s'agrandit automatiquement pour afficher les URLs longues en entier.
- Dans le champ Headers (JSON), ajoutez l'authentification requise, par exemple
{"Authorization": "Bearer VOTRE_JETON"}. - La liste des outils se charge automatiquement si la configuration est correcte. Celestory détecte tout seul le type de transport du serveur (Streamable HTTP moderne ou SSE legacy) : aucun réglage à faire de ce cÎté.
- Choisissez un outil : le bloc crée alors une entrée typée par argument de l'outil (survolez le sélecteur pour lire un nom d'outil long en entier).
Le bloc possĂšde aussi ces sorties :
- out (Flux) : la suite de l'histoire si l'appel réussit.
- catch (Flux) : la suite si l'appel échoue.
- result (Objet) : la réponse de l'outil. Si le serveur déclare un schéma de sortie, une sortie typée apparaßt en plus pour chaque champ du résultat.
- error (Texte) : le message d'erreur en cas d'échec (pratique pour l'afficher ou le journaliser).
5. đĄ Exemple : lister ses issues GitHub
Scénario : afficher dans l'histoire le nombre d'issues ouvertes d'un dépÎt.
- CrĂ©ez un jeton d'accĂšs personnel (PAT) sur GitHub (Settings â Developer settings â Personal access tokens), avec le scope
repoen lecture. - Configurez le bloc MCP : URL
https://api.githubcopilot.com/mcp/, headers{"Authorization": "Bearer VOTRE_PAT"}. - Choisissez l'outil
list_issues(ou équivalent selon la version exposée), renseignezowneretreposur les entrées générées. - Reliez out vers un écran qui affiche le contenu de result, et catch vers un écran qui affiche error.
- Testez : la liste des issues s'affiche. đ
Le principe est identique pour n'importe quel autre serveur MCP qui accepte un jeton statique (Chargebee, votre propre serveur MCP, etc.) : seuls l'URL et le nom des outils changent.
6. đĄïž CORS sur votre propre serveur MCP (auto-hĂ©bergĂ©)
Si vous dĂ©veloppez ou hĂ©bergez vous-mĂȘme un serveur MCP (n8n, NocoDB, ou un serveur maison), ajoutez ces en-tĂȘtes sur votre reverse proxy (nginx, openrestyâŠ) pour la route de votre serveur MCP :
location /votre-route-mcp/ {
if ($request_method = OPTIONS) {
add_header Access-Control-Allow-Origin "https://creator.celestory.io" always;
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS" always;
add_header Access-Control-Allow-Headers "content-type, accept, authorization" always;
add_header Access-Control-Max-Age 86400 always;
return 204;
}
add_header Access-Control-Allow-Origin "https://creator.celestory.io" always;
proxy_pass http://votre-backend-mcp;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_buffering off; # indispensable si votre serveur MCP utilise un flux SSE
proxy_cache off;
proxy_read_timeout 24h;
}
Remplacez l'origine par le(s) domaine(s) oĂč votre histoire s'exĂ©cute (Ă©diteur et domaine de publication). Access-Control-Allow-Origin n'accepte qu'une seule valeur : pour autoriser plusieurs domaines, faites reflĂ©ter dynamiquement l'origine par votre proxy (map nginx sur $http_origin).
7. đ DĂ©pannage
- « MCP server unreachable (network error, or the MCP server does not allow this origin via CORS) » â CORS fermĂ© (condition 1) ou rĂ©seau : relisez la section 2.
- « MCP legacy SSE: opening the stream failed (HTTP 401/403) » ou une erreur d'appel d'outil qui parle d'authentification â jeton invalide, expirĂ©, ou le serveur exige OAuth (condition 2) : relisez la section 2 et le tableau de la section 3.
- « MCP legacy SSE: opening the stream failed (HTTP 404) » â l'URL est fausse.
- « MCP legacy SSE: no endpoint event received from the server » â l'URL ne pointe pas vers un flux SSE MCP, ou un proxy intermĂ©diaire met le flux en cache (dĂ©sactivez le buffering).
- « MCP initialize failed » â le serveur a rĂ©pondu, mais ce n'est pas un serveur MCP valide.
- Un outil renvoie une erreur (sortie error du bloc) â le message vient du serveur MCP lui-mĂȘme : vĂ©rifiez les arguments fournis.
8. đ Bonnes pratiques
- Un jeton d'API n'est jamais qu'un mot de passe : ne le partagez jamais (documentation, captures d'Ă©cran, e-mailsâŠ).
- Comme votre histoire s'exécute dans le navigateur des joueurs, préférez des jetons à portée limitée (lecture seule, scope restreint à ce dont l'histoire a besoin) plutÎt qu'un jeton root/admin.
- Faites tourner vos jetons réguliÚrement, et immédiatement en cas de doute.
Mis Ă jour le : 20/07/2026
Merci !
