For AI agents and MCP

Cloud Chromium for browser MCP

Real Chrome, accessible over a standard CDP URL. Plug it into Playwright MCP, Stagehand, or any agent that needs a browser.

Most agent frameworks already speak CDP. Bug0 hands you a CDP URL from one API call. No new SDK to learn. No vendor wrapper to replace later.

Get API key

Free tier · $0.15/hour after · No credit card

Use with Playwright MCP

Microsoft's Playwright MCP server takes a CDP endpoint. Point it at a Bug0 session and your agent drives a real cloud Chromium instead of a local one.

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest",
        "--cdp-endpoint",
        "wss://browsers.bug0.com/cdp/<session-id>"
      ]
    }
  }
}
  1. bug0.createBrowser() returns a cdpUrl.
  2. Drop that URL into your playwright-mcp config.
  3. Run your agent. Watch it browse from the dashboard.

Watch the agent browse

Every Bug0 session ships with a noVNC live preview. Open the dashboard, click the session, see what your agent is doing in real time. Useful for debugging a stuck task at 2am, or for showing a teammate why your prompt fails.

The live preview is at session.livePreviewUrl. Open it in any browser. No download, no extension.

Drop-in for Stagehand and other CDP wrappers

Stagehand connects over CDP. So does Browser Use, Skyvern, and most agent browsers built on Playwright. They work with Bug0's URL the same way they work with anything else. If you ever want to swap providers, you change the URL. That is the point.

import { Stagehand } from "@browserbasehq/stagehand";
import { Bug0 } from "@bug0/sdk";

const bug0 = new Bug0({ apiKey: process.env.BUG0_API_KEY! });
const { cdpUrl } = await bug0.createBrowser();

const stagehand = new Stagehand({
  env: "LOCAL",
  localBrowserLaunchOptions: { cdpUrl },
});
await stagehand.init();
const page = stagehand.page;

Per-agent isolation

Each session is a fresh Chrome process. No shared cookies between runs. No cross-contamination between users. When the session ends, the browser dies. Default lifetime is 15 minutes, configurable up to 45.

Fast cold start

Sessions are usable within seconds. The createBrowser response includes a startupMs field so you can measure it yourself.

Session length

15 minutes by default. Up to 45 minutes via timeoutMs. Stop it earlier and the meter stops with it.

Quickstart code

One npm install, one createBrowser call, one connectOverCDP. Same shape from a script, a server, or an MCP host.

import { Bug0 } from "@bug0/sdk";
import { chromium } from "playwright";

const bug0 = new Bug0({ apiKey: process.env.BUG0_API_KEY });
const session = await bug0.createBrowser();

const browser = await chromium.connectOverCDP(session.cdpUrl);
// ...drive with Playwright...
await bug0.stopBrowser(session.sessionId);

What Bug0 doesn't do

Honest gap. Bug0 doesn't ship built-in stealth, captcha solvers, or residential proxies. If your agent's job is to evade bot detection at scale, Browserbase or Hyperbrowser are better fits. If it's to drive a logged-in tenant of an internal app, or a partner site that lets you in, Bug0 is the simpler bill.

Pricing

$0.15 per hour, billed per minute. Free tier is 10 browser-minutes. No subscription. No credit card to start.

Compare to alternatives →

Frequently asked questions

What is browser MCP?

Browser MCP is a Model Context Protocol server that gives an AI agent the ability to control a browser. Playwright MCP is the most common implementation. The MCP server takes a Chrome DevTools Protocol endpoint. Bug0 gives you that endpoint.

Does Bug0 work with Playwright MCP?

Yes. Pass the Bug0 session's cdpUrl to playwright-mcp via the --cdp-endpoint flag. The agent drives a cloud Chrome instead of a local one.

Can I use Stagehand with Bug0?

Yes. Stagehand connects over CDP. Point its localBrowserLaunchOptions at a Bug0 cdpUrl and the rest works the same.

How is this different from Browserbase for agents?

Bug0 hands you a standard CDP URL. No Stagehand SDK to adopt, no Director runtime to learn. If you ever change providers, the diff is one URL.

Can I watch the agent browse?

Yes. Every session has a noVNC preview at livePreviewUrl. Open it from the dashboard or embed it in your own UI.

Does it block bot detection?

No. Bug0 ships unmodified Chromium. If your target site blocks data-center IPs or runs aggressive bot checks, you'll need a stealth or proxy layer on top.