For agents
Connect Imitor to Claude Code, Cursor, Codex or any MCP client: the command, the eight tools, and the same operations as JSON commands for CI.
Generated from the README at every deploy, so this page and the repository say the same thing.
Connect your agent
claude mcp add imitor -- npx imitor mcpRun in the app’s folder.
npx imitor mcpPaste as the server command in Cursor’s MCP settings, with the app’s folder as the working directory.
codex mcp add imitor -- npx imitor mcpRun in the app’s folder.
npx imitor mcpAny MCP client: the command, over stdio, from the app’s folder.
npx imitorIn CI, run the whole set of flows and publish the result.
The tools
Imitor is built to be driven by coding agents. Connect it as an MCP server from the app's folder:
claude mcp add imitor -- npx imitor mcpAny MCP client works the same way: the command is npx imitor mcp, over stdio.
| Tool | What it does |
|---|---|
imitor_init | Sets Imitor up in the app (Metro wrap, imitor.config.json, ignores). Only shows the changes unless dryRun is false |
imitor_describe | Lists the flows, devices and stand-ins configured, and whether a build exists |
imitor_build | Builds the web preview of the app as it is on disk |
imitor_screenshot | Takes one screenshot and returns the image. Reach the screen by route, by flow, or with inline steps; state overrides the state label for that call |
imitor_run_flow | Runs one flow and reports every step, its shots, and where it failed |
imitor_record_video | Records a .webm video of a flow with animations on |
imitor_read_problems | Failed steps, page errors, stand-ins seen and coverage limits from the last full run |
imitor_open_preview | Serves the build locally and returns a URL a person can open |
Every result names the stand-ins visible in the shot, so an agent knows which parts are not drawn like the real app.
The same operations exist as commands that print JSON, for scripts and CI:
npx imitor describe
npx imitor screenshot --flow first-run --device pixel-9 --scheme dark
npx imitor flow --flow first-run
npx imitor record --flow first-run
npx imitor problemsScreenshots and videos from these land in preview/captures/. Each call starts from a fresh app state: empty, or the state the flow (or the config) sets up (see Start a flow from a state). A screenshot without --flow takes the top-level settings, and --state <label> (or state in the MCP tool) overrides the state label for that one call. Results say which state and seeded data a capture started from, and list seedErrors.