Browser MCP
Browser MCP lets AI agents control your real Chrome browser (with your cookies, sessions, and logins intact) through a rich set of tools, enabling automation on sites that block headless tools.
Navigation & Page Content
Navigate to any URL, get page content as plain text or HTML, take screenshots, and execute JavaScript in the page context.
Interaction & Form Filling
Click elements (CSS or text selectors), fill form inputs, press keyboard keys (with modifier support), scroll, hover, select from native or custom dropdowns (Angular Material, React Select), set date/combobox inputs, dismiss overlays (cookie banners, modals), and handle JavaScript dialogs (alert, confirm, prompt).
Tab & Frame Management
List, switch, and close tabs; get the most recently opened tab (useful for OAuth popups); list iframes and execute JavaScript within specific iframes.
Data & Storage
Get/set cookies, read/write localStorage, capture console logs, and upload files via file input elements or drag-and-drop zones.
Network & API
Make HTTP requests from the extension background (bypasses CORS/CSP), wait for specific network requests to complete, and extract API tokens from provider dashboards (Stripe, HubSpot, Slack, Shopify, Google, LinkedIn, and more).
CAPTCHA Solving
Auto-detect and solve reCAPTCHA v2/v3, hCaptcha, Cloudflare Turnstile, and FunCaptcha — via checkbox click, image grid selection, or human fallback.
Human-in-the-Loop
Show overlay dialogs to request user input for 2FA codes, credentials, confirmations, or CAPTCHA solving.
Multi-Session Support
Run up to 10 concurrent AI sessions, each with its own color-coded Chrome Tab Group and isolated tab ownership.
Community & Meta
Get server info and generate pre-filled links to submit feature requests, use cases, or bug reports.
Provides automated token extraction from Calendly dashboard and browser automation for Calendly.
Enables reading verification codes from Gmail and general Gmail automation.
Provides automated token extraction from Google Cloud Console (OAuth Client) and browser automation for Google services.
Provides automated token extraction from HubSpot dashboard and browser automation for HubSpot.
Provides automated token extraction from Mailchimp dashboard and browser automation for Mailchimp.
Enables browser automation for Reddit, such as posting and interacting with content.
Provides automated token extraction from Shopify admin and browser automation for Shopify.
Provides automated token extraction from Slack API dashboard and browser automation for Slack.
Provides automated token extraction from Stripe dashboard and general browser automation for Stripe.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Browser MCPGo to my Gmail and check for recent emails from support"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Browser MCP by Agent360
Your AI agent drives your real, logged-in Chrome — and works where headless tools die.

▶ Watch the 37-second demo with sound →
Browser MCP gives Claude Code (and any MCP client — Cursor, VS Code agent mode) control of your actual Chrome: your cookies, your sessions, your 2FA. So it works on CAPTCHA, 2FA and anti-bot sites where Playwright and Puppeteer get blocked — because it's you browsing.
The killer move: it hits a login wall, reads the verification code from your own Gmail tab, and continues the sign-in. No API can do that. Operate platforms with no API, QA your own web app end-to-end, or work dashboards, LinkedIn and Reddit at human pace — with you approving the sensitive steps.
42 tools. Auto-clicks the reCAPTCHA v2 checkbox, with a human fallback for the rest. Multi-session color-coded tab groups. MIT, free, and 100% local — nothing leaves your machine.
The whole thing, in four steps
1 — Install the Chrome extension. One click from the Chrome Web Store; Chrome keeps it updated. No store? See the unpacked install below.
2 — Add the MCP server. Paste this in a terminal. Required — the extension does nothing on its own:
claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest3 — Restart Claude Code. That is what starts the server. The extension icon turns green.
4 — Say this, to check it worked. Paste it to Claude Code:
Take a screenshot of my current Chrome tab.
You get an image back instead of "I don't have browser access". That's it — you're running. → What else to say
Using Cursor, VS Code, Codex or Windsurf? Same server, that client's own config — see browsermcp.dev/docs. Everything below is the long version.
Related MCP server: browser-auth-mcp
The long version — install, step by step
Browser MCP is two halves and you need both: a Chrome extension (drives the browser) and a local MCP server (what your agent actually talks to). Installing only the extension — e.g. straight from the Chrome Web Store — leaves it stuck on "Not connected", because there is no server for it to reach. Chrome cannot install the server, and npm cannot install the extension. Hence two steps.
Step 1: Register the MCP server with Claude Code
claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latestThat is Claude Code's own MCP command, so the entry lands in the config Claude Code actually reads. --scope user makes it available in every project.
Want the extension files on disk for the unpacked install in Step 2? Also run:
npx @agent360/browser-mcp installIt copies the extension to ~/.browser-mcp/extension/ and prints that path in the terminal — copy it. (Use it for the extension files only; register the server with claude mcp add above.)
Step 2: Load the extension in Chrome
Chrome won't let extensions install themselves from npm — you load it manually one time. To update later, re-run the install command and reload it (see Keeping it updated). Prefer the Chrome Web Store install if you'd rather have the extension auto-update.
Open Chrome and type
chrome://extensionsin the address barToggle "Developer mode" ON (top right corner)
Click "Load unpacked" (top left, next to "Pack extension")
Navigate to
~/.browser-mcp/extension/and click "Select"On Mac: Press
Cmd+Shift+Gin the file picker, paste~/.browser-mcp/extension/, press EnterOn Windows: Paste
%USERPROFILE%\.browser-mcp\extension\in the address barOn Linux: Type
~/.browser-mcp/extension/in the path field
Restart Claude Code so it picks up the new MCP server
That's it. The Browser MCP icon will appear in your toolbar, and 42 browser tools are now available in Claude Code.
Alternative: Manual zip download (no npm)
If you don't want to use npm, download the extension directly:
Download the extension zip (
agent360-browser-mcp-<version>.zip) from the latest GitHub releaseUnzip the file (anywhere — e.g.
~/Downloads/browser-mcp-extension/)Follow Step 2 above, but select the unzipped folder instead of
~/.browser-mcp/extension/Register the server — run
claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest, or add this to~/.claude.jsonby hand:{ "mcpServers": { "browser-mcp": { "command": "npx", "args": ["@agent360/browser-mcp@latest"] } } }
Chrome Web Store (no Developer mode, auto-updating extension)
This replaces Step 2 only — you still need Step 1.
Install the extension from the Chrome Web Store → — no Developer mode toggle, and Chrome keeps it updated for you.
Register the MCP server:
claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest(For Cursor / VS Code / Codex, use that client's own MCP config instead — see browsermcp.dev/docs.)
Restart Claude Code.
Skip step 2 and the extension icon will sit on "Not connected" forever — that is the symptom of a missing MCP server, not a broken extension.
You're in. Now what?
Nothing happens until you ask, and the hardest part of a new tool is knowing what to ask for. Paste one of these to your agent:
Say this | What it shows |
"Take a screenshot of my current Chrome tab." | Start here. An image back instead of "I don't have browser access" means both halves are talking. That is the whole install test. |
"Open my Gmail tab and tell me who sent my last 3 emails." | The one that shows the difference — it works because it is your browser, already signed in. A headless tool hits a login wall here. |
"Go to my analytics dashboard, pull this month's numbers, and put them in a table." | Any dashboard you are already logged into. No API key, no export, no integration to build first. |
"Fill in this signup form with my details. Stop and ask me before anything sensitive." | You stay in the loop — it hands control back for passwords, payment details, or anything it should not decide alone. |
"Log me in here. If it emails a code, read it from my Gmail tab and continue." | The move no API can make: it reads the one-time code out of your own inbox and finishes the sign-in. |
"Walk through my app's signup flow as a real user and tell me where it breaks." | End-to-end QA of your own product, in the same browser your users have. |
The pattern: anything you would do yourself in a browser, on a site you are already signed into. It is strongest where there is no API — internal dashboards, admin panels, portals, LinkedIn. Built something good? Add it to the gallery.
Why This Over Playwright MCP / BrowserMCP?
Browser MCP | Playwright MCP | BrowserMCP.io | |
Browser | Your real Chrome | Headless (new session) | Your real Chrome |
Maintained | Actively — latest release v1.25.0 (2026-07-24) | Actively (Microsoft) | Last commit Apr 2025 |
Logins/cookies | Already authenticated | Must log in every time | Already authenticated |
Multi-session | 10 concurrent sessions with color-coded tab groups | Single session | Single session |
Human-in-the-loop |
| None | None |
Provider integrations | 9 built-in (Stripe, HubSpot, Slack...) | None | None |
CORS bypass |
| N/A | Limited |
Network monitoring |
| Built-in | None |
CSP-strict sites | Chrome Debugger API throughout | Works (headless) | Limited |
Custom dropdowns | Angular Material, React Select support | Works (headless) | Limited |
Install |
|
| Manual clone |
On the name: the similarly-named
browsermcp.io(@browsermcp/mcp) is a different, unaffiliated project with no commits since April 2025. This is Browser MCP by Agent360 (@agent360/browser-mcp) — actively maintained. Full side-by-side →
42 Tools
Navigation & Content
Tool | Description |
| Navigate to URL (reuses tab, or |
| Get page text or HTML |
| Screenshot via Chrome Debugger (works even when tab isn't focused) |
| Run JavaScript in page context |
| Read every row of a long/virtualised list by scrolling its container until no new rows appear |
Interaction
Tool | Description |
| Click via CSS or text selector ( |
| Fill input fields (works on CSP-strict sites) |
| Keyboard events (Enter, Tab, Escape, modifiers) |
| Scroll to element or by pixels |
| Wait for element to appear |
| Hover for tooltips/dropdowns |
| Native |
| Autocomplete/combobox: type query → wait for filtered listbox → click option (multi-value chip support). Use when |
| Robust date inputs: tries native value-set → masked typing → calendar-picker navigation (MUI/AntD/react-datepicker/Lexical). Use when |
| Bulk-dismiss popups/modals/tooltips/banners via aria-label/text/×-char heuristics. |
| Accept/dismiss native alert/confirm/prompt dialogs |
| True double-click (two trusted press/release pairs) |
| Right-click to open page-level context menus |
| Escape hatch: click at raw viewport coordinates (CSS pixels) with trusted mouse events |
| Recovery: force-detach and re-attach the Chrome debugger on the current tab |
Tabs & Frames
Tool | Description |
| List session's tabs only |
| Switch to tab by ID |
| Close tab (session-owned only) |
| Get most recently opened tab (OAuth popups) |
| List iframes on page |
| Execute JS in specific iframe |
Data & Network
Tool | Description |
| Get cookies for domain |
| Read localStorage |
| HTTP request from extension (bypasses CORS) |
| Wait for specific API call to complete |
| Navigate to provider dashboard + extract API token |
CAPTCHA Solving
Tool | Description |
| Detect and solve CAPTCHAs. Auto-detects reCAPTCHA v2/v3, hCaptcha, Turnstile, FunCaptcha. Actions: |
Human-in-the-Loop
Tool | Description |
| Show overlay dialog for 2FA, CAPTCHA, credentials, or any user input |
Data
Tool | Description |
| Get cookies for a domain |
| Set cookies for a domain |
| Read localStorage from page |
| Write localStorage values |
| Capture console.log/warn/error messages from page |
| Upload files to |
| Upload via drop-zones: finds hidden |
Clipboard (secret-safe)
Tool | Description |
| Copy an element's value/text to the clipboard without returning the content |
| Paste the system clipboard into a form field without exposing the content |
| Inspect the clipboard's shape (length, trimmed length) without exposing content |
Multi-Session Support
Each Claude Code conversation gets its own MCP server on a unique port (9876-9885). The Chrome extension connects to all active servers simultaneously.
Claude Session 1 ←(stdio)→ MCP :9876 ←(WS)→
Claude Session 2 ←(stdio)→ MCP :9877 ←(WS)→ Chrome Extension → Browser
Claude Session 3 ←(stdio)→ MCP :9878 ←(WS)→Session isolation — each session gets a color-coded Chrome Tab Group
Tab ownership — sessions can only see and control their own tabs
Auto-cleanup — processes exit when Claude Code closes the conversation
Built-in Provider Integrations
browser_extract_token navigates to the provider's API settings page and guides token extraction:
Provider | Token Format | Dashboard |
Stripe |
| stripe.com/apikeys |
HubSpot |
| app.hubspot.com |
Slack |
| api.slack.com/apps |
Shopify | Admin API token | admin.shopify.com |
Pipedrive | UUID | app.pipedrive.com |
Calendly | JWT | calendly.com |
Mailchimp |
| admin.mailchimp.com |
OAuth Client | console.cloud.google.com | |
Client ID/Secret | linkedin.com/developers |
Architecture
extension/
manifest.json # Manifest V3
background.js # Service worker — Chrome API dispatcher, session tab groups
offscreen.js # Persistent WebSocket bridge (multi-port scanning)
popup.html/js # Status UI — sessions, tabs, action log
mcp-server/
index.js # MCP server (stdio) + WebSocket client
tools.js # 42 tool definitions
bin/cli.js # Install CLIHow It Works
Claude Code starts → spawns MCP server via stdio
MCP server binds to first available port (9876-9885)
Extension's offscreen document scans ports every 2s
WebSocket connection established
Commands flow: Claude Code → MCP → Extension → Chrome APIs
Process auto-exits when Claude Code closes (stdin detection)
Keeping it updated
Browser MCP has two parts, and they update independently — how the extension updates depends on how you installed it:
Part | Install method | How it updates |
MCP server | any | Automatic. Runs via |
Extension | Chrome Web Store | Automatic. Chrome updates it in the background (usually within a few hours). Nothing to do. |
Extension | Unpacked ( | Manual. Chrome never auto-updates a load-unpacked extension. Re-run |
Not sure which you have? Open chrome://extensions and find Browser MCP. If it shows a "Loaded from /path/…" line, it's unpacked (manual updates). If there's no such line, it came from the Chrome Web Store (auto-updates).
Want zero-maintenance updates? Install the extension from the Chrome Web Store, then run claude mcp add --scope user browser-mcp -- npx @agent360/browser-mcp@latest to register the server. After that, both parts stay current on their own — as long as your config uses @agent360/browser-mcp@latest.
Troubleshooting
"Chrome extension not connected"
Check extension is loaded in
chrome://extensionsClick the extension popup → "Reconnect"
Wait 2-3 seconds for port scan
Screenshot fails
Uses Chrome Debugger API (works even when tab isn't focused)
Falls back to
captureVisibleTabif debugger unavailable
Click doesn't work on SPA
Try text selector:
browser_click("text=Submit")Uses real mouse events via Chrome Debugger API automatically
Stale processes
Processes auto-exit when Claude Code closes (stdin detection)
Idle timeout: 4 hours without commands → auto-exit
Manual cleanup:
lsof -i :9876-9885 | grep LISTEN
💡 Help Shape Browser MCP
Browser MCP is built in the open and shaped by the people using it.
Browse what others want / built
💡 Wishlist → — features people are asking for
🎯 Use-cases → — what others have built (LinkedIn ICP scraping, vendor research, daily ops, …)
Contribute in 30 seconds
Or just ask Claude — it knows about the browser_about tool and will draft + submit on your behalf when you say things like "I wish browser-mcp could …" or "share my browser-mcp use-case".
License
MIT — Agent360
Maintenance
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI applications to automate your existing browser using your logged-in profile. Provides fast, private browser automation that avoids bot detection by working with your real browser fingerprint.10,748Apache 2.0
- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI agents to authenticate with websites using a real Chromium browser with anti-detection measures and human-in-the-loop support for captchas and 2FA. Features stealth browsing, human-like interactions, and persistent session storage to automate and resume login workflows.
- AlicenseBqualityFmaintenanceEnables AI agents to directly control your real Chrome browser with full context including login sessions, cookies, and open tabs. It provides tools for page scanning, JavaScript execution, CDP control, screenshots, and physical mouse/keyboard input for authentic browser automation.20239MIT
- AlicenseNot gradedqualityCmaintenanceLets AI assistants control your real Chrome browser to perform web tasks like reading pages, taking screenshots, clicking, and typing, using your existing logged-in sessions.131MIT
Related MCP Connectors
AI-powered browser automation — navigate, click, fill forms, and extract data from any website.
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Stealth scraping & search. Bypasses Cloudflare, DataDome & LinkedIn via Cyborg HITL approach.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Agent360dk/browser-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server