Build with your AI agent, end to end.

Connect Claude Code, Cursor, Codex or any MCP client. Your agent builds, tests as every user, deploys and rolls back.

Add a waitlist page with a sign-up form. Only staff may read the list.

appbricx.code route /waitlist, table, access policy

check passed, applied to dev

appbricx.call_app joinWaitlist as a visitor

appbricx.screenshot /waitlist

appbricx.verify

every role against every table, page and action

appbricx.deploy

snapshot taken, live on your domain

Connect in a minute

Every client uses the same address and opens your browser to sign in. You pick the workspace and what the agent may do: read, apply or deploy.

  • Claude Code

    One command in your terminal, then authorize in the browser window it opens.

    claude mcp add --transport http appbricx https://appbricx.com/api/mcp
  • Claude (claude.ai and Desktop)

    Open Settings, Connectors, Add custom connector, paste https://appbricx.com/api/mcp as the server URL and save. Then choose Connect.

  • Cursor

    Add to Cursor in one click, or put the server URL in .cursor/mcp.json under mcpServers.appbricx.url.

  • Codex

    Add [mcp_servers.appbricx] with url = "https://appbricx.com/api/mcp" to ~/.codex/config.toml, then run codex mcp login appbricx.

  • Any MCP client

    VS Code, Windsurf, Gemini CLI and others take the same URL. Where a client can't open a browser, send a personal access token as a bearer token.

What your agent can do, end to end

53 MCP tools cover the whole life of an app, from the first file to a rollback in production. Your agent does not need a shell: Claude in the browser can build and ship too.

StageWhat the agent doesTools
ProjectsCreate, rename, archive, duplicate and delete projects, and add collaborators.create_projectupdate_projectduplicate_projectdelete_projectcollaborators
Code, by partRead and write routes, components, server actions, workflows, tables, access policies, queries, seeds, messages and config. Each write can check or apply in the same call.code
Packages and assetsAdd or remove npm packages (the lockfile is resolved on the server, with versions at least 7 days old) and upload images and files.packagesassets
Apply and call the appApply to dev: migrations, seeds, build and serve. Then call the running app as a visitor, any role or the server, and read pages as text.codecall_app
WorkflowsDry-run a workflow with a row or an event. It lists every write, email, message and HTTP call it would make, and sends nothing.workflowsrun
Look and checkTake screenshots with clicks and typing, ask why a request was refused, and run verify: every role against every table, page and action.screenshotexplainverify
Ship and undoRead the deploy plan, deploy after verify passes on a copy of production, and roll back in one call, with the data if you want.deploydeployssnapshots
OperateRead logs, tail requests and errors, query with SQL, and manage secrets, domains and app users.logstailsqlsecretsdomainsapp_users

Fewer rounds per change

The slow part of building with an agent is the loop: deploy, click around, paste the error back. Here the agent sees what you would see, without you in the middle.

  1. Checks name the file and line

    A type error, a policy that doesn't parse or a template with a missing variable comes back as a file and line, before anything runs.

    code

  2. Call the app as any user

    The agent sends real requests to the dev app as a visitor, a role or the server, and gets the answer that user would get.

    call_app

  3. Dry-run workflows

    Every effect a workflow would have is listed: writes, emails, messages, HTTP calls. Nothing is sent.

    workflows

  4. See the screen

    Screenshots with clicks and typing show the page in each role, so layout problems surface without you.

    screenshot

  5. Know why it was refused

    When a request is refused, the agent asks which policy or rule refused it, and fixes that one place.

    explain

  6. Verify before release

    Every role against every table, page and action in a real browser. Failures come back with evidence and the fix.

    verify

Many steps in one call

run_script runs a short TypeScript script that calls the other tools as functions, several at a time. Reads run freely. A write such as deploy or sql runs only when the script lists it in allow, and dry_run refuses every write.

One call instead of a dozen round trips: the agent writes a page, opens it as two roles and compares the answers before it reports back. Each call inside the script goes through the same scopes and checks as a direct one, and the audit log records the script with every write.

// run_script: one call, many tools
await tools.code({ action: "create", kind: "route", name: "/waitlist", then: "apply" });

const [visitor, staff] = await Promise.all([
  tools.call_app({ kind: "page", path: "/waitlist", as: { kind: "visitor" } }),
  tools.call_app({ kind: "page", path: "/admin/waitlist", as: { kind: "user", role: "staff" } }),
]);

return { visitor: visitor.page.title, staff: staff.page.title };

What stays yours

  • Your model

    There is no built-in AI writing your app. Your agent runs on your own model subscription, with no credits and no markup.

  • Your code

    What the agent writes is plain TypeScript, React and SQL that you can pull, edit and push. Build in code.

  • A record of every write

    Versions with labels and diffs, and an audit log of every agent write, so you can see what changed and restore it.

  • Limits you set

    When you authorize a connection you choose its workspace and what it may do: read, apply or deploy.

Where to go next

Connect your agent

Start free, connect Claude Code, Cursor, Codex or Claude, and ask for your first app. Your agent's model stays on your own subscription.