Brod

Deploy from Cursor

Deploy an app built with Cursor

Cursor's agent can write the app. With Brod added as an MCP server, it can also put the app online at a private address, with sign-in for your team, a database and encrypted secrets, without leaving the editor.

Build the app and deploy dist to Brod as inventory. Make it open to everyone in the workspace.

deploy_app · set_access

inventory is live at https://inventory.acme.brod.sh. Opening it to the whole workspace needs a person to confirm: here is the link.

1. Add Brod to Cursor

Make a token on your workspace's connections page. It starts with brod_ and is shown once.

Then add Brod to ~/.cursor/mcp.json, or to .cursor/mcp.json in the project to keep it per project.

Check Cursor's MCP settings: brod should show as connected, with its tools listed.

{
  "mcpServers": {
    "brod": {
      "url": "https://brod.sh/mcp",
      "headers": { "Authorization": "Bearer brod_..." }
    }
  }
}
Keep the token out of git. If you use a project-level .cursor/mcp.json, add it to .gitignore, or use the user-level file. Give the token an expiry, and revoke it from the connections page if it leaks.

2. Deploy from the agent

In agent mode, ask for it in plain words, as in the example above.

  • Send the files

    Cursor sends the files with deploy_app.

  • Bigger builds

    Brod returns a one-time upload address and the agent uploads the build as a tar.gz (up to 25 MB).

  • A backend if needed

    The agent writes a _worker.js in JavaScript. It can use the app's database, key-value store, files and secrets.

3. Move keys out of the code

Cursor projects often start with an API key in a .env file or straight in the source. Before sharing the app, ask the agent to store each key with set_secret and read it on the server as env.NAME.

  • Encrypted. Secrets are stored encrypted.
  • Server only. They are never sent to the browser.
  • Write-only. They cannot be read back, even by the agent.

4. Change it safely

  1. Staging first

    When the agent updates a live app, the new version goes to its staging address first.

  2. Publish when ready

    Your team keeps using the live version until you tell the agent to publish.

  3. Fix or roll back

    When something goes wrong, the agent reads the app's logs and errors with get_logs, or rolls back to any earlier version.

Questions

Can I deploy a Next.js app from Cursor?

Only as a static export. Brod serves static files and runs server code in JavaScript or WebAssembly through a single _worker.js; it does not run a Node.js server, so server-side rendering and Next.js API routes are not supported.

Do my teammates need Cursor or a Brod account?

No. They open the address and sign in with an emailed link or Google. Only people who deploy need to connect an agent.

Can I use Brod from Cursor and Claude Code on the same app?

Yes. Agents in the same workspace see the same apps. Brod tells each agent when someone else is working on the app, and a deploy built on an out-of-date version is refused rather than silently overwriting the other person's work.

Your AI already built the app. Put it in your team's hands.