June 15, 2026 · 9 min read · AI Agents · Cursor

Cursor Browser (2026): Built-in Web Tools vs MCP vs Remote-CDP

Three boxes side by side — a small built-in web tool box, a medium MCP browser box, and a large cloud browser box with a residential proxy label — Cursor browser options illustration

If you searched cursor browser, you're probably one of three users. Either you're wondering whether Cursor has a browser feature at all (it has limited built-in web tools, covered below); you want the agent to drive a real browser for some non-trivial task and are picking between options; or you've set one up and it's being blocked by Cloudflare on the first protected site you point it at. This post covers all three.

Disclosure: we make Human Browser, one of the stealth-backend MCP options. We'll be specific about when you actually need it and when the cheaper options work fine.

Contents

  1. Cursor's built-in web tools
  2. The MCP browser path
  3. Remote-CDP for protected sites
  4. Picking the right option
  5. Wiring Human Browser MCP
  6. FAQ

Cursor's built-in web tools

Out of the box, Cursor's chat and Composer agents can do two web things:

That's the built-in browser. It's a fine layer for read-only public-web reasoning — "summarise this RFC," "compare these three blog posts" — and it doesn't need any setup. It's explicitly not a real browser. It can't:

The built-in tools are the read layer. The real browser is the action layer. Cursor leaves the action layer to MCP — which is the right call.

The MCP browser path

For everything web_fetch can't do, you wire a browser MCP server. The reasonable options:

1. Chrome MCP (extension-based)

Attaches the Cursor agent to your real signed-in Chrome via the Chrome MCP browser extension. Lets the agent drive your daily-driver browser — Gmail, Calendar, your internal dashboards, anything you're logged in to. Trade-off: it shares your real session, so anything the agent does is happening as you, with your cookies. Use for personal-assistant tasks.

2. Puppeteer / Playwright MCP

@modelcontextprotocol/server-puppeteer launches a fresh Chromium each session — no cookies inherited, no real-session risk. Good for scraping public sites, testing your own apps, anything you don't want done as your real user. Same browser internals as your test suite uses.

3. browser-use MCP

The browser-use project ships an MCP server that wraps its own agent loop on top of Playwright. Useful when you want the browser-use agent loop (its DOM recovery, observation model) wrapped behind an MCP surface Cursor can call.

4. Stealth-backend MCP (Human Browser, etc.)

For protected sites — covered in the next section. The MCP server proxies CDP to a remote stealth-patched Chromium on a residential IP.

All four show up to Cursor the same way: an entry in ~/.cursor/mcp.json, restart, and the tools appear. We cover the config format end-to-end in our Cursor MCP setup guide.

Three boxes from small to large representing built-in web tools, MCP browser server, and cloud stealth browser with residential proxy, with a Cursor IDE on the side connecting to all three

Remote-CDP for protected sites

The first time you point a Chrome MCP or Puppeteer MCP at a Cloudflare-protected site, you'll hit a "Just a moment…" interstitial. The agent can't click through it; the agent isn't the problem; the browser layer is. Three things happen at the network layer that have nothing to do with Cursor or your agent code:

  1. The IP is a data-center IP (your VPS, your home network, whatever). Anti-bot databases flag it before page JS runs.
  2. The browser leaks automation at the CDP layer. Stock Chromium emits signals (Runtime.enable side-effects, JA4 mismatch) that stealth plugins can't reach.
  3. The agent moves inhumanly. LLM clicks instantly, types at infinite speed — behavioral models flag.

The fix is not a different MCP server with different bindings — it's a different browser at the other end of the MCP call. A stealth-patched Chromium running on a residential IP, with CAPTCHA solving and human-paced input. The MCP server still looks the same to Cursor; the network reality is different.

Picking the right option

Honest decision matrix:

You can install several. The agent picks by tool name (chrome.* vs puppeteer.* vs human-browser.*) based on the prompt's context. The cost is a few seconds of startup at each MCP server's first call; the value is "the right browser for every job."

Wiring Human Browser MCP

The protected-site case is the one we make a product for, so let's be specific about how it slots in. Human Browser exposes an MCP server at @virixlabs/humanbrowser-mcp that proxies CDP to a remote stealth-patched Chromium on residential IPs across 75 countries, with a 12-category CAPTCHA solver and human-paced input.

Config — drop into ~/.cursor/mcp.json:

{
  "mcpServers": {
    "human-browser": {
      "command": "npx",
      "args": ["-y", "@virixlabs/humanbrowser-mcp"],
      "env": {
        "HB_TOKEN": "hb_live_...",         // from /install on humanbrowser.cloud
        "HB_DEFAULT_COUNTRY": "us"          // optional: residential-IP country
      }
    }
  }
}

Reload Cursor (or hit Settings → MCP → Reload on the human-browser entry). The agent now has human-browser.navigate, .click, .type, .screenshot, .evaluate available. From your prompt's perspective the only difference is which browser-shaped tool the agent picks; the network reality is residential-IP + stealth Chromium + CAPTCHA solver.

Try the Human Browser MCP — $1 for about 4 typical tasks

Drop the MCP server into Cursor and protected-site tasks pass without changing prompts. Pay-as-you-go: $0.10/hr browser time, $4/GB residential proxy, $0.005/captcha, $0.02 per agent step with the AI included. No subscription. humanbrowser.cloud.

FAQ

Does Cursor have a built-in browser?

Built-in web_search + web_fetch for public-web read-only access. No clicks, no JS, no sessions. Anything more requires a browser MCP server.

How do I make Cursor drive a real browser?

Wire a browser MCP server: Chrome MCP, Puppeteer MCP, browser-use MCP, or a stealth-backend MCP like Human Browser. Config in ~/.cursor/mcp.json.

Chrome MCP vs Human Browser MCP?

Chrome MCP attaches to your real signed-in Chrome (your daily-driver session). Human Browser MCP launches a stealth Chromium on a residential IP. Pick by target type: logged-in personal sites = Chrome MCP; protected anti-bot sites = Human Browser MCP.

Why does my agent get blocked?

IP + CDP fingerprint + input cadence. Fixing all three is what stealth-browser products do under the hood.

Can Cursor connect to a remote browser via CDP?

Not directly — Cursor's browser path is MCP-mediated. The MCP server can proxy CDP to a remote endpoint, which is how Human Browser MCP works.

Related Articles

Top up — $20

Loading secure checkout…

More coins →