Anticode Open builder

Claude Code website builder workflows: the MCP server, or a pulled project

Claude Code can work with Anticode two ways. Add the remote MCP server and it gets the same tools a chat assistant has: projects, quoted builds, changes, previews and publishing. Or pull a project into a folder with the Anticode CLI and let Claude Code edit the spec file like any other code, then push. Pick by whether you want builds or file edits.

Updated · By the Anticode team

Route one: the MCP server

One command registers the server. Claude Code's MCP documentation describes --transport http for remote servers:

  • claude mcp add --transport http anticode https://anticode.dev/mcp
  • Then run /mcp inside Claude Code, pick anticode and finish the sign-in in your browser. Anticode's consent page lets you approve read and write, or read-only.

Claude Code stores the OAuth tokens and refreshes them itself; Clear authentication in the /mcp menu revokes them. For headless use, such as a script or CI job, make a personal token on anticode.dev/mcp instead (read-only or read-and-write, shown once) and pass it as a header:

The command becomes claude mcp add --transport http anticode https://anticode.dev/mcp --header "Authorization: Bearer <your token>", with your token in place of the angle brackets.

Mind the scope. By default the server is saved for the current project only, in your own ~/.claude.json. With --scope project it goes into .mcp.json at the repository root, which is meant to be committed. Never put a raw token there: Claude Code expands ${VAR} in headers, so write Bearer ${ANTICODE_TOKEN} and keep the value in your environment. Tokens start with ac_mcp_, which makes them easy to find with a secret scanner if one slips into a commit.

What the tools are good for in a terminal

The MCP tools suit work that needs Anticode's servers: running a model build after get_build_quote shows the cost, requesting a change in words, checking analytics, listing form submissions (labelled as untrusted content), and publishing behind the security gate. They can't upload or delete files, delete projects or touch billing. A terminal can't draw the in-chat page preview, so there preview_project comes back as a text summary; open index.html from a pulled folder, or the builder, to look at the page.

Route two: a pulled project and AGENTS.md

If you'd rather Claude Code edit files it can see, use the Anticode CLI, a single Node script with no dependencies:

  1. anticode login signs in with a device code you approve in the browser; the CLI never sees your password and stores a token with owner-only permissions.
  2. anticode pull "Harbour Bakery" writes a folder with spec.json (the build spec), index.html (the page as it ships, rendered locally with Anticode's own design engine) and anticode.json (which project and version the folder holds).
  3. Ask Claude Code to change spec.json: reorder sections, rewrite the FAQ, switch the theme. Open index.html to check.
  4. anticode push uploads the spec and re-renders the page. If the project changed in Anticode since you pulled, the push is refused rather than overwriting it.
  5. anticode publish pushes and publishes; the server's security gate still decides.

For agents that call the API directly, Anticode publishes /AGENTS.md. It explains the open project format, anticode.json, described by a JSON Schema at /schema/project.v1.json: read with GET /api/projects/{id}/format, edit only what you need, write the whole file back with the version you read, and on 409 version_conflict re-apply the edit to the fresh copy instead of overwriting. Its rules are worth putting in front of Claude Code as they are: keep edits small, never put HTML, scripts or secrets in text fields, and don't publish unless asked.

Which route when

MCP server or CLI from Claude Code
You want to…Use
Run a model build or a change described in wordsMCP server
Edit copy, order or theme and review the diffCLI and spec.json
Read submissions or analyticsMCP server
Keep project changes in your own Git historyCLI folder
PublishEither; both go through the server's gate

Whichever you use, an open builder redraws when the project changes and offers an undo, and version history keeps your most recent saves (up to a number set by your plan) to restore.

Limits

  • The CLI doesn't build. It edits and publishes; model builds go through the builder or the MCP server.
  • spec.json is capped at 32 KB, and text in it is always escaped, so markup typed into a field shows literally.
  • Markup changes don't stick. Neither route lets an agent add raw HTML or scripts to a published page.
  • Your email must be confirmed before anything publishes.

Troubleshooting

/mcp shows the server as needing authentication
Select it and complete the browser sign-in, or check the header token hasn't been revoked.
A header token is rejected
Claude Code doesn't fall back to OAuth when you set Authorization yourself. Remove the header to use OAuth, or make a new token.
anticode push reports a version conflict
Save your spec.json, pull again and re-apply the edit.

More detail: the CLI, the anticode.json format, and editing a website locally with the CLI. For a balanced view of when Claude Code alone is the better tool, read Anticode vs Claude Code.

Questions people ask

Can I use both routes on the same project?

Yes. Versions keep them honest: a stale write is refused rather than overwriting the other route's change.

Does the MCP token work with the REST API?

No. MCP tokens only work at /mcp. The CLI's own token, from anticode login, works on the API and also at /mcp.

Will Claude Code spend my build allowance?

Only through a quoted build. A build needs a fresh quote id, and the tool tells the agent to show you the cost first.

Sources

  1. Claude Code Docs: Connect Claude Code to tools via MCP, checked