Storybook MCP¶
Deux serveurs dans .cursor/mcp.json — rôles différents, pas interchangeables.
storybook-dev (local) |
storybook (Chromatic develop) |
|
|---|---|---|
| URL MCP | http://localhost:6007/mcp |
URL Chromatic publiée |
| Reflète | Branche + changements non commités | Dernier develop déployé uniquement |
get-documentation / get-documentation-for-story |
Oui | Oui (ID composant connu) |
list-all-documentation |
Oui — uniquement ici | Non |
get-storybook-story-instructions |
Oui — uniquement ici | Non |
run-story-tests |
Oui — uniquement ici | Non |
preview-stories |
Oui — uniquement ici | Non |
Réf upstream : Storybook MCP overview.
Storybook local requis (storybook-dev)¶
Tout sauf get-documentation / get-documentation-for-story nécessite storybook-dev avec le dev server actif — inventaire (list-all-documentation), instructions stories, tests, previews.
Pre-flight (avant tout tool storybook-dev)¶
- Vérifier les terminaux — un process
storybook/pnpm … storybookdoit tourner et écouter sur 6007 (pas seulement le MCP configuré dansmcp.json). - Si absent → demander au dev de lancer Storybook avant d'appeler un tool
storybook-dev(ne pas lancer soi-même sans accord explicite) :
- Si présent mais MCP échoue quand même (story introuvable, import error) → signaler l'erreur au dev ; un restart du dev server peut être nécessaire après ajout de glob / nouveau fichier stories.
Si l'appel MCP échoue¶
Tool … list-all-documentation was not found→ appel sur le mauvais serveur (storybookChromatic au lieu destorybook-dev) ou dev server arrêté. Toujours cibler le serveurstorybook-devpour cet outil.- Ne pas simuler le résultat ni basculer sur
storybook(Chromatic) pour les tools exclusifsstorybook-dev— Chromatic n'expose paslist-all-documentation,get-storybook-story-instructions,run-story-tests,preview-stories. - Demander au dev de lancer Storybook en local (commande ci-dessus), puis réessayer.
- En attendant :
get-documentation/get-documentation-for-storyviastorybookChromatic si l'ID composant est déjà connu — jamais pour valider des changements locaux.
Réflexe UI¶
Avant d'utiliser, créer ou modifier un composant storybook-isé → appeler le MCP Storybook d'abord. Ne jamais inventer une prop uimmo sans preuve dans la doc MCP.
Docs (avant d'écrire du JSX)¶
Préférer storybook-dev si le server tourne (doc alignée sur le code actuel). Chromatic = fallback lecture seule quand l'ID est déjà connu.
list-all-documentation—storybook-devonly — inventaire + story IDs (withStoryIds: true)get-documentation— props, exemples (les deux serveurs)get-documentation-for-story— détail d'une story (les deux serveurs)
Ne pas déduire une prop depuis le nom ou d'autres libs — uniquement doc ou story exemple. Sinon → demander au dev.
Stories (avant d'écrire / modifier un .stories.tsx)¶
→ get-storybook-story-instructions sur storybook-dev si disponible.
Conventions monorepo : front-conventions.mdc section Storybook.
Tests — boucle TDD (storybook-dev only)¶
Pre-flight terminaux OK → run-story-tests après chaque changement composant ou story.
- Itération :
storiesavec une story (ou le petit lot touché) { storyId: "uimmo-forms-formshowcase--flow-success" }(préféré)- ou
{ absoluteStoryPath, exportName } - Handoff : omettre
storiespour passe complète - Échec → corriger → re-run la même story jusqu'au vert
a11y: falseOK en itération rapide
Ne pas lancer vitest run sur tout le projet en boucle si le MCP ciblé suffit.
Previews (storybook-dev only)¶
Pre-flight terminaux OK → preview-stories après changement UI/story + URLs localhost:6007 dans la réponse.
Ordre de priorité contexte UI¶
- Cursor rules front (
front-conventions,front-domain-map) - Storybook MCP (props réelles, stories, tests)
- Bricks Intel MCP (
get-component-usage— deprecated / maturité uimmo) - Grep — dernier recours