Skip to Content
ReferenceIntégration MCP

Intégration MCP

OpenFactory supporte le Model Context Protocol  pour que les assistants IA vous aident à créer des builds, inspecter des recettes, gérer des VM et relire les résultats de test.

Utilisez MCP lorsque vous voulez travailler avec OpenFactory depuis Claude, Cursor, Claude Code, OpenAI Codex ou un autre client compatible MCP sans alterner entre outils.

Exigences

  • Un client MCP qui supporte les serveurs MCP distants
  • Pour un accès lié au compte, connectez-vous à OpenFactory dans ce navigateur
  • Pour l’accès invité, utilisez le jeton invité généré affiché ci-dessous

Les clés API compte sont affichées une fois à la création et peuvent être révoquées depuis la console. Les jetons invité sont des identifiants navigateur pour un accès compté ; ce ne sont pas des secrets de compte.

Points de terminaison

TransportURLUsage
Streamable HTTPhttps://console.openfactory.tech/mcp-stream/mcpLe point de terminaison MCP OpenFactory

Streamable HTTP est le seul transport supporté. Les anciens points HTTP+SSE (/mcp/sse, /mcp/messages) sont retirés et renvoient maintenant 410 Gone ; orientez tout client qui les utilise encore vers l’URL Streamable HTTP ci-dessus, avec le même en-tête Authorization. Claude Code, Claude Desktop, Cursor, Codex et OpenCode supportent tous Streamable HTTP.

Configuration copier-coller

Preparing your MCP config...

Redémarrez Claude Desktop, Cursor, OpenAI Codex ou tout autre client MCP longue durée après modification de ses paramètres MCP. OpenAI Codex lit les serveurs MCP depuis ~/.codex/config.toml et se connecte à Streamable HTTP directement : pas de pont mcp-remote nécessaire. Les connecteurs personnalisés Claude.ai peuvent demander l’URL serveur et l’en-tête comme champs séparés.

Capacités disponibles

OpenFactory expose des outils orientés client pour :

CatégorieExemples
BuildsLister builds, créer builds depuis recettes, vérifier statut build, relancer builds en échec
RecettesParcourir modèles, valider recettes, personnaliser modèles
ImagesObtenir liens de téléchargement pour artefacts terminés
VMLister VM, créer VM de test, démarrer ou arrêter VM, ouvrir liens console
TestsExécuter vérification, lister exécutions de test, inspecter résultats, gérer suites de test réutilisables
Tests UI appPiloter une VM testeur pour tester n’importe quelle URL app : scénarios GUI réutilisables auto-renforçants. Aucun déploiement requis
Déploiement appDéployer un dépôt Git vers une app web live avec URL de preview publique (https://<slug>.apps.openfactory.tech)

La disponibilité des outils peut varier selon plan et permissions organisation.

Suites de test réutilisables

Les suites de test peuvent être créées avant qu’un variant ou une ISO ait été construit. Définissez un ou plusieurs cas de test, assertions personnalisées, tests prédéfinis et emplacements cibles ISO nommés comme primary, client ou server. Lorsque les builds sont prêts, liez chaque emplacement à un build terminé et exécutez la suite.

OutilUsage
create_test_suiteCréer une suite réutilisable sans exiger un variant construit
list_test_suitesLister les suites disponibles pour l’utilisateur MCP courant
get_test_suiteVoir définition de suite et historique d’exécutions récentes
update_test_suite_targetsLier emplacements cibles ISO nommés à des builds terminés
run_test_suiteExécuter une suite contre emplacements cibles ISO liés
list_test_suite_runsLister exécutions créées depuis une suite
get_test_suite_statusVoir préparation rédaction et statut d’exécution le plus récent

Tests UI app : toute URL, sans déploiement

Testez l’interface utilisateur de toute app web en pointant une VM testeur gérée vers une URL. Vous n’avez pas besoin de déployer votre app avec OpenFactory pour la tester. La VM testeur ouvre un serveur de dev local, un déploiement preview/production sur Vercel, AWS, Netlify ou tout hôte, ou toute URL publique joignable depuis la VM. Votre app reste là où elle tourne déjà.

Les scénarios sont rédigés en langage courant et sont auto-renforçants : la première exécution apprend où se trouve chaque élément UI, et les exécutions suivantes rejouent depuis cette mémoire (en sautant la passe visuelle lente). Cela rend les replays rapides et résilients aux petits changements UI. Les scénarios supportent variables d’environnement (${VAR}) et 2FA (${totp:VAR}, RFC 6238) pour les connexions ; les secrets sont passés à l’exécution et jamais stockés.

OutilUsage
ensure_tester_vmObtenir ou créer votre VM testeur bureau persistante
create_app_scenarioEnregistrer un scénario GUI réutilisable pour une URL app
run_app_scenarioL’exécuter (passer secrets à l’exécution ici) et enregistrer captures + verdict
list_app_scenarios / get_app_scenarioParcourir scénarios et leur cache renforcé
start_app_test / record_app_test_step / finish_app_testPiloter et enregistrer vous-même une exécution ad hoc
annotate_screenshotDessiner des boîtes de surbrillance étiquetées sur une capture

Voir Tests UI app pour le workflow complet, le schéma d’étapes et exemples 2FA.

Déploiement app : dépôt Git vers URL publique

Déployez une app web directement depuis un dépôt Git et obtenez une URL de preview publique (https://<slug>.apps.openfactory.tech) que vous pouvez ouvrir, partager ou cibler avec un scénario de test. OpenFactory clone le dépôt, installe dépendances, démarre l’app et fait un health-check pour vous. Rien à câbler : pas de port forwarding, tunnels ou DNS.

Cela s’associe aux tests UI app : déployez votre app, puis exécutez un scénario contre son URL preview, ou sautez le déploiement et testez une app que vous hébergez déjà (Vercel, AWS, …).

OutilUsage
create_appEnregistrer un dépôt Git comme app (nom, source, slug)
deploy_appDéployer l’app et renvoyer son URL preview publique
list_apps / get_appParcourir vos apps, leurs URL et historique de déploiement
iterate_appDispatcher un changement en langage naturel vers une app ; un agent l’applique et redéploie
get_app_build_statusInterroger statut de déploiement d’une app et tickets de changement en cours

Voir Déploiement app pour le workflow complet. Pour laisser vos utilisateurs formuler des changements à votre app depuis un bouton micro, voir le Voice Iterate Widget.

Exemples d’invites

Show my most recent OpenFactory builds and summarize any failures.
Create a Debian server image with SSH, Docker, a deploy user, and default verification tests.
Validate this recipe before I start a build.
Start a VM from my latest completed build and give me the console link.
Create a reusable smoke test suite for example-project with primary and client ISO slots. I will bind the builds later.
Create a smoke-login scenario for my app at https://my-app.vercel.app, run it in a tester VM, and verify the dashboard loads. I'll give you the password and 2FA seed at run time.

Notes de sécurité

  • Utilisez les clés API seulement avec des clients de confiance.
  • Révoquez les anciennes clés depuis la console lorsque vous changez de machine ou quittez un projet.
  • Préférez des permissions outil exigeant approbation pour les actions qui créent builds, démarrent VM ou modifient l’infrastructure.
  • Ne collez pas de clés API OpenFactory dans invites, tickets, dépôts publics ou documents partagés.

Dépannage

Les outils n’apparaissent pas

Redémarrez votre client MCP et confirmez que l’URL serveur est exactement :

https://console.openfactory.tech/mcp-stream/mcp

Si votre client est configuré avec l’URL retirée /mcp/sse, il obtiendra 410 Gone : changez l’URL pour celle ci-dessus ; rien d’autre ne doit changer.

Échec d’authentification

Rafraîchissez cette page et copiez à nouveau la configuration générée. Les utilisateurs connectés doivent utiliser l’en-tête Authorization généré. Les invités doivent utiliser l’en-tête X-Guest-Id généré depuis la config copier-coller ci-dessus.

Échec actions build ou VM

Vérifiez votre plan OpenFactory, permissions organisation et statut de build. Certaines actions exigent un build terminé, un droit VM persistant ou des permissions Enterprise.

Erreurs de transport

Mettez à jour votre client MCP s’il ne supporte pas Streamable HTTP. Si vous ne pouvez pas le mettre à jour, basculez vers le point de compatibilité HTTP+SSE.