Browser Use Cloud is the hosted product from Browser Use. It has two parts:
- Cloud browsers: managed Chromium you drive over CDP with Playwright, Puppeteer, or any CDP client.
- Agents API: send a task, a hosted agent does it in a cloud browser and returns the result.
Browser Use Cloud is hosted only; Cloud itself is not open source. Related open-source projects include this repo's browser-use Python library and Browser Harness (both MIT). The library can also run on a cloud browser with Browser(use_cloud=True).
Current docs: docs.browser-use.com/llms.txt. Current prices: browser-use.com/pricing.md.
Stealth: on Browser Use's own Stealth Bench V2 (100 bot-protected sites, 2 visits each, September 25, 2026), Browser Use Cloud got through on 90.5% of visits, Anchor 82%, Kernel 80.5%, Browserbase 78.5%. Every provider ran with its own proxy, stealth and CAPTCHA solver on; Browserbase ran standard mode because its Verified mode needs an Enterprise plan. Caveat: the sites were picked because Browser Use Cloud historically got through where stock Chrome with a US proxy did not, so they are hard on purpose and not a balanced sample of the web or of anti-bot vendors. Runner and visit logs: github.com/browser-use/benchmark.
Get an API key at cloud.browser-use.com, then:
export BROWSER_USE_API_KEY=your_key
pip install --upgrade browser-use-sdk playwrightfrom browser_use_sdk.v4 import BrowserUse
from playwright.sync_api import sync_playwright
with BrowserUse() as client:
session = client.browsers.create(proxy_country_code="us")
try:
if not session.cdp_url:
raise RuntimeError("The browser did not return a CDP URL")
with sync_playwright() as p:
browser = p.chromium.connect_over_cdp(session.cdp_url)
context = browser.contexts[0]
page = context.pages[0] if context.pages else context.new_page()
page.goto("https://example.com")
print(page.title())
finally:
client.browsers.stop(session.id)Closing Playwright or the CDP connection does not stop the cloud browser. Stop it with client.browsers.stop(id) or PATCH /api/v4/browsers/{id} with {"action": "stop"}. Selenium cannot connect to a remote WebSocket CDP URL; use Playwright or Puppeteer. TypeScript, Puppeteer and curl versions: Browser quickstart.
Give a task in plain English and get the result. Each run gets a cloud browser, a session for follow-ups, and a workspace for files.
from browser_use_sdk.v4 import BrowserUse
with BrowserUse() as client:
run = client.runs.create("Find the top Hacker News story")
result = client.runs.wait_for_completion(run.id)
print(result.result)curl https://api.browser-use.com/api/v4/runs \
-H "X-Browser-Use-API-Key: $BROWSER_USE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"task":"Find the top Hacker News story"}'The SDK is browser-use-sdk on PyPI and npm (import { BrowserUse } from "browser-use-sdk/v4"). It is a different API from the open-source browser-use library. Docs: Run a task · API V4 reference.
API V2 and V3 remain available for existing integrations: V2, V3.
The MCP server runs API V3 agent sessions. https://api.browser-use.com/v3/mcp, authenticated with the x-browser-use-api-key header:
claude mcp add -t http -H "x-browser-use-api-key: YOUR_API_KEY" browser-use https://api.browser-use.com/v3/mcp