MCP Overview
If you’re building applications, UseBrowser becomes the missing piece in your development workflow. Claude Code already writes your code — now it can also test it in a real browser, fill forms, verify UI, scrape test data, and interact with web APIs.
How it works
Section titled “How it works”UseBrowser runs an MCP server (Model Context Protocol) that exposes your browser as tools to any AI agent.
AI Agent ──SSE──→ localhost:9225 ──CDP──→ UseBrowserStarts automatically. Claude Code in the built-in terminal already has access.
Developer use cases
Section titled “Developer use cases”- E2E testing — Claude navigates your app, fills forms, verifies outputs — in your real browser with real extensions and state
- API debugging —
browser_capture_har()captures all network traffic. Inspect request/response pairs, headers, cookies - Scrape test fixtures — Pull real data from production sites for test cases
- Visual verification —
browser_screenshot()before and after changes - Cookie/storage inspection — Debug auth flows with
browser_get_cookies()andbrowser_get_storage()
Artifacts
Section titled “Artifacts”Every tool call saves output to a timestamped directory:
~/.usebrowser/data/artifacts/{tool}_{YYYYMMDD_HHMMSS}_{ms}/├── manifest.json # What was captured├── screenshot.jpg # Compressed screenshot├── result.json # Tool return data└── error.txt # If something went wrongUseful for debugging, auditing, or chaining tools.
Connect from another machine
Section titled “Connect from another machine”Any MCP-compatible agent on your network can control the browser. On the remote machine, create or edit .mcp.json:
{ "mcpServers": { "usebrowser": { "type": "sse", "url": "http://<usebrowser-ip>:9225/sse" } }}Developer workflow — write, test, fix, re-test
Developer is writing a React login form in the terminal. Says "test the login form in the browser." Claude navigates to localhost:3000, fills in the email and password fields, clicks Submit. A screenshot shows a validation error — "email format invalid." Claude reports the bug. Developer fixes the validation regex in the terminal. Says "test again." Claude re-navigates, fills the form, submits — success screen appears. Claude takes a screenshot confirming the fix. Tight write-test-fix loop, all in one browser. ~45 seconds.