Claude Code + Cuiar

Test the real flow before you push.

  • One command
  • OAuth, API key or stdio
  • The CLI works in its shell too

Claude Code changes the code. Cuiar shows it the result in a real browser. Claude Code opens staging in a clean workspace, signs up, clicks through and reads the console.

It signs in to partner docs and admin panels with the vault, so no password goes into the repo or the chat.

A terminal. The command claude mcp add types in and Claude Code confirms the server. Then Claude Code calls the Cuiar tools to open staging in a workspace, take screenshots and read the console, and reports one console error.

Setup

One command, then sign in.

Claude Code runs on the same computer as the Cuiar app, so every route works. Start with the remote server.

  1. 1

    Add the server

    Add --scope user to use it in every project, or --scope project to share it in .mcp.json.

    claude mcp add --transport http cuiar https://mcp.cuiar.com/mcp
  2. 2

    Sign in

    Start claude, run /mcp, pick cuiar and sign in on cuiar.com. From the shell, claude mcp login cuiar does the same.

  3. 3

    Check it

    claude mcp list
  4. 4

    Ask

    Open https://staging.example.com in Cuiar and tell me the page title.

Other ways to connect

  • An API key

    For scripts and shared machines. Make a key with the mcp scope, then add the header.

    cuiar keys create claude-code --scope mcp
    claude mcp add --transport http cuiar https://mcp.cuiar.com/mcp \
      --header "Authorization: Bearer cuiar_..."
  • Local stdio

    Needs the Cuiar CLI, signed in with cuiar login.

    claude mcp add --transport stdio cuiar -- cuiar mcp
  • A project file

    Put this in .mcp.json at the root of the repo, and each person on the team gets Cuiar with the repo.

    .mcp.json
    {
      "mcpServers": {
        "cuiar": { "type": "http", "url": "https://mcp.cuiar.com/mcp" }
      }
    }

Route

MCP for steps, the CLI for whole tasks.

The MCP tools give Claude Code each step: open, click, type, screenshot, run JavaScript. The CLI gives one result per command, which fits scripts and CI.

Remote MCPmcp.cuiar.com/mcp
Best fit
OAuth, or an API key header. Claude Code's own steps use no Cuiar credits.
Local MCPcuiar mcp
Works
cuiar mcp, signed in with cuiar login.
CLIcuiar exec
Works
Claude Code runs cuiar exec --json in Bash, after a permission prompt.
Routineson a schedule
Works
Desktop scheduled tasks run on your computer and can drive Cuiar. A Cuiar routine runs without Claude Code.

Example tasks

QA from the terminal

  • 01

    Sign up on staging

    “Create a Cuiar workspace signup-test. Open https://staging.example.com/signup, sign up with a new test email and take a screenshot of each step. Report any console error.”

    create_workspace, screenshot and evaluate.

  • 02

    Read docs behind a login

    “Sign in to the payment provider's partner portal. Read the webhook retry rules and update src/webhooks/retry.ts to match.”

    sign_in keeps the password out of the repo.

  • 03

    Check a deploy

    “Open https://app.example.com in my Admin workspace. Confirm that the footer shows version 2.8.1, open the billing page and tell me if anything fails to load.”

  • 04

    Reproduce a bug

    “Follow the steps in issue #412 in my QA workspace. Take a screenshot after each step, and add the screenshots and the exact error text to the issue.”

  • 05

    Smoke test in CI

    cuiar exec --permission read-only --json "Open https://staging.example.com, sign in as the test user and confirm that the dashboard shows the projects list"

    Fail the job on a non-zero exit code. The runner must be the computer with the Cuiar app.

Good to know

Large pages
A big snapshot can pass Claude Code's limit of 25,000 tokens for one tool result. Raise MAX_MCP_OUTPUT_TOKENS.
The claude.ai connector
A Cuiar connector on claude.ai shows in /mcp when you sign in with the same account. A server that you add in Claude Code wins over it.
Exit codes
cuiar exec exits with 0 when done, 3 when not signed in, 4 for the plan or credits, 5 when the app is not open, and 8 when the task failed.

Templates to run from Claude Code

All templates

Each template page shows the run_task or create_routine call to give Claude Code.

  • Engineering

    Compare page speed before and after a release

    Lab metrics for your key pages after each production deploy, with each page that got slower.

    On an event: When a new production deploy finishes
    • Netlify
    • PageSpeed Insights
    • Google Sheets
  • EngineeringAsks first

    Label and sort new GitHub issues

    Labels, a priority and a possible duplicate for each new issue, applied after you approve them.

    On an event: When a new issue is opened
    • GitHub
  • Engineering

    Audit your DNS records in Cloudflare

    Records that point to removed services, origins with no proxy and weak mail settings, with a fix for each.

    You start it: When you start it
    • Cloudflare
  • Engineering

    Compare open-source libraries before you pick one

    Downloads, releases, open issues, license and size of each library, with a recommendation.

    You start it: When you start it
    • GitHub
    • npm
    • PyPI
  • Data

    Export your order history

    For stores with no export: each order in a sheet, with totals for each year.

    You start it: When you start it
    • Any online store
    • Google Sheets
  • Data

    Build one table from several public statistics

    Numbers from official sources in one sheet, with the same units, years and country codes.

    You start it: When you start it
    • Our World in Data
    • Any government site
    • Google Sheets