There is no single best browser MCP. There is a best one for each job. A server built to run tests headless in CI is a poor fit for reading a dashboard you are signed into, and the reverse is just as true. This post sorts ten browser MCP servers by job: testing your own app, debugging and performance, pages behind your login, cloud scale, and fully autonomous agents.
There is no ranking and no score. For each entry you get three facts: whose browser it drives, how it installs, and its licence. Every fact about another project comes from its own README, docs or GitHub repository data, checked on 9 October 2026, and the source is linked. This site documents one of the entries, MCP Browser Extension, and it says plainly where that tool is the wrong pick.
The question that sorts them
Every browser MCP server answers one question first: whose browser does the agent drive?
- A browser the server launches. It uses its own profile, it can often run headless, and it is signed out until you sign in to it. Playwright MCP and Chrome DevTools MCP work this way by default.
- The browser you already use. An extension inside your Chrome gives the agent your sessions and cookies. Browser MCP, hangwin/mcp-chrome, Kapture and MCP Browser Extension work this way.
- A browser in someone else's cloud. Browserbase and Browser Use Cloud host it for you.
The lines are blurring. Playwright MCP has an --extension mode, and Chrome DevTools MCP has --autoConnect, so both can reach a browser you run. The defaults still show what each was designed for. For the background, see what an MCP browser extension is.
Quick answer by job
| Job | Look at first | Also consider |
|---|---|---|
| CI and testing your own app | Playwright MCP | agent-browser |
| Debugging and performance | Chrome DevTools MCP | BrowserTools MCP |
| Pages behind your login | An extension-based server | Playwright --extension, DevTools --autoConnect |
| Cloud scale | Browserbase | Browser Use Cloud |
| Fully autonomous agent | Browser Use | Browserbase |
CI and testing your own app
Playwright MCP
- Whose browser: one it launches, with a persistent profile by default.
--isolatedkeeps the profile in memory.--browseraccepts chrome, firefox, webkit and msedge, and--headlessruns without a window. - Install:
npx @playwright/mcp@latest, with ready configs for Claude Code, Codex, Cursor, VS Code and many other hosts. - Licence: Apache-2.0.
It hands the model accessibility snapshots, so no vision model is needed. The README is direct about two things. Its --allowed-origins flag is not a security boundary, and for coding agents it suggests the separate Playwright CLI with skills may be more token-efficient than MCP. Source: microsoft/playwright-mcp README.
claude mcp add playwright npx @playwright/mcp@latestThis is the default answer to "best MCP for browser testing": it launches its own browser, runs headless on request with --headless, and supports Chrome, Edge, Firefox and WebKit.
agent-browser
- Whose browser: Chrome for Testing, downloaded by
agent-browser install. It runs headless unless you pass--headed, and--profileor--auto-connectcan reuse a Chrome login. - Install:
npm install -g agent-browserorbrew install agent-browser. - Licence: Apache-2.0.
agent-browser is a native Rust CLI first. It also runs as an MCP server over stdio with agent-browser mcp, with a small core tool profile by default and --tools all for the full set. Source: vercel-labs/agent-browser README.
Debugging and performance
Chrome DevTools MCP
- Whose browser: by default a new Chrome with its own profile under
~/.cache/chrome-devtools-mcp/.--autoConnectattaches to your running Chrome 144 or later once you enable remote debugging atchrome://inspect/#remote-debugging. - Install:
npx -y chrome-devtools-mcp@latest. - Licence: Apache-2.0.
Its README lists performance traces, network and console debugging with source-mapped stack traces, and Puppeteer automation. It officially supports Chrome and Chrome for Testing only. Usage statistics go to Google by default; --no-usage-statistics turns them off. Sources: README, advanced usage, configuration.
BrowserTools MCP
- Whose browser: your real Chrome session, through a DevTools extension. Capture starts when you open DevTools on the page.
- Install:
npx -y @agentdeskai/browser-tools-mcp@latest, plus the unpacked extension from the repo. Needs Node 22.19 or newer. - Licence: MIT.
It streams console output, network activity, screenshots and Lighthouse audits to the agent. The README says version 2.0 is a rewrite and that 1.2.x has a critical vulnerability, so upgrade if you used it before. Source: AgentDeskAI/browser-tools-mcp README.
The full head-to-head for this category is in Chrome DevTools MCP vs Playwright MCP.
Pages behind your login
Dashboards, admin panels, CRMs and anything behind SSO or 2FA are easier in a browser that is already signed in. Several servers do this. They differ in defaults and maintenance.
MCP Browser Extension
- Whose browser: your running Chrome, through an MV3 extension that connects to the server over a localhost WebSocket.
- Install: the npm package
@mehmoodqureshi/chrome-mcpplus the extension from the Chrome Web Store or the folder bundled in the package. - Licence: MIT.
claude mcp add chrome-mcp -s user -- \
npx -y @mehmoodqureshi/chrome-mcp \
--allow-domain example.com --enable-mutations --persist-tokenIt starts deny-all: no domains, no mutations, no eval. Reads are gated by the allowlist as well as clicks. Opening tabs and navigating need --enable-mutations; leave it out and the agent can only read pages already open on allowed domains. It adds auth_check to tell when a tab has landed on a sign-in wall, a batch tool for many tabs, opt-in --redact, and a per-call audit log. It needs Node 18 or newer and Chrome 116 or newer. See the quickstart, the tools reference, the security model and the logged-in Chrome page.
hangwin/mcp-chrome
- Whose browser: your everyday Chrome or Chromium.
- Install: download the extension from GitHub releases, then
npm install -g mcp-chrome-bridge. Streamable HTTP is the recommended connection, stdio the alternative. Needs Node 20 or newer. - Licence: MIT.
It adds semantic search across tabs with a built-in vector database, plus history and bookmark tools. The README says the project is still early and under intensive development. Source: hangwin/mcp-chrome README.
Browser MCP
- Whose browser: your existing browser profile, through a Chrome extension.
- Install:
npx @browsermcp/mcp@latestplus the extension, per its setup docs. - Licence: Apache-2.0.
It was adapted from Playwright MCP to drive your own browser instead of a new one. The README says the repo cannot yet be built on its own, and the GitHub API shows its last push was in April 2025. Source: BrowserMCP/mcp README.
Kapture
- Whose browser: your Chrome, through a Chrome extension. You connect each tab with a toolbar toggle.
- Install: the extension from the Chrome Web Store, then
npx -y kapture-mcp@latest bridgeas the MCP command. - Licence: MIT, per the README.
Its headline feature is that several MCP clients can share one server and drive tabs at once. Source: williamkapke/kapture README.
The compare page and can AI agents log in to websites go deeper on this category.
Cloud scale
Browserbase MCP
- Whose browser: a cloud browser on Browserbase, driven through Stagehand with natural-language actions such as
act,observeandextract. - Install: the hosted endpoint
https://mcp.browserbase.com/mcpwith an API key, ornpx @browserbasehq/mcplocally. - Licence: Apache-2.0 for the open-source server.
Note the status. The browserbase/mcp-server-browserbase repo is archived and no longer maintained. Its README says it was published as a reference implementation and is kept for historical purposes. Browserbase's docs recommend the hosted endpoint. Sources: repo README, Browserbase MCP docs, setup guide.
Fully autonomous agents
Browser Use
- Whose browser: a local or cloud browser it controls.
Browser.from_system_chrome()reuses a Chrome profile. - Install:
uvx --from 'browser-use[cli]' browser-use --mcpfor the local MCP server, or the hosted MCP endpoint with an API key. - Licence: MIT for the library.
Browser Use is an agent, not just a toolset. You hand it a task and it runs its own loop with a model you choose. Its docs say the local MCP server needs your own LLM API keys. Sources: browser-use README, local MCP docs, cloud MCP docs.
Retired: Puppeteer MCP
The Puppeteer reference server is no longer in modelcontextprotocol/servers. It now sits in modelcontextprotocol/servers-archived, whose README says it is no longer maintained and provides no security guarantees. Pick Chrome DevTools MCP or Playwright MCP instead. Source: servers-archived README.
Best browser MCP per host
All of these servers speak standard MCP, so host choice matters less than job choice. The table pairs the usual pick for each job with the setup guide for that host.
| Host | Testing and CI | Debugging | Logged-in pages | Setup guide |
|---|---|---|---|---|
| Claude Code | Playwright MCP | Chrome DevTools MCP | MCP Browser Extension or another extension server | Claude Code browser access |
| Cursor | Playwright MCP, or Cursor's built-in agent browser | Chrome DevTools MCP | MCP Browser Extension or another extension server | Cursor browser MCP |
| Codex | Playwright MCP | Chrome DevTools MCP | MCP Browser Extension or another extension server | Chrome MCP for Codex |
| VS Code | Playwright MCP | Chrome DevTools MCP | MCP Browser Extension or another extension server | Agent setup |
Playwright MCP's README has install sections for Claude Code, Codex, Cursor and VS Code. Chrome DevTools MCP's client configuration guide covers all four among many others. Cursor's own agent browser opens in a separate window or an inline pane, and keeps cookies and storage separate per workspace.
For Codex, MCP Browser Extension installs with one command:
codex mcp add chrome-mcp -- \
npx -y @mehmoodqureshi/chrome-mcp \
--allow-domain example.com --enable-mutations --persist-tokenCursor and most JSON hosts take this block. VS Code uses a top-level servers key instead of mcpServers, as the agent setup page notes.
{
"mcpServers": {
"chrome-mcp": {
"command": "npx",
"args": [
"-y",
"@mehmoodqureshi/chrome-mcp",
"--allow-domain",
"example.com",
"--enable-mutations",
"--persist-token"
]
}
}
}When MCP Browser Extension is the wrong pick
Be honest about the fit. Skip it when:
- You need headless. It drives a real, visible Chrome window. Use Playwright MCP, Chrome DevTools MCP or agent-browser.
- You run in CI. It needs a real Chrome with the extension installed and paired, which a CI runner does not have. Use Playwright MCP.
- You need Firefox, Safari or WebKit. It drives Chrome and does not support Firefox, Safari or WebKit. Playwright MCP covers Firefox and WebKit.
- You need performance traces or Lighthouse. Chrome DevTools MCP or BrowserTools MCP do that.
- You want a hosted agent to finish a task alone. Browser Use or Browserbase fit better.
It fits when the page is behind a login you already did in Chrome and you want a deny-all allowlist, gated reads and an audit trail around it.
FAQ
What is the best browser MCP server?
It depends on the job. Playwright MCP for testing, Chrome DevTools MCP for debugging and performance, an extension-based server for pages behind your login, and Browserbase or Browser Use for cloud and autonomous work.
What are the best Playwright MCP alternatives?
Chrome DevTools MCP for Chrome debugging, agent-browser for a CLI-first tool with an MCP mode, and an extension-based server such as MCP Browser Extension, hangwin/mcp-chrome or Kapture when you need your real signed-in Chrome.
Is the Puppeteer MCP server still maintained?
No. It moved to the modelcontextprotocol/servers-archived repository, which says it is no longer maintained and offers no security guarantees.
Which browser MCP can use my logged-in Chrome?
Extension-based servers do this by default: MCP Browser Extension, hangwin/mcp-chrome, Browser MCP, Kapture and BrowserTools MCP. Playwright MCP can with --extension, and Chrome DevTools MCP can with --autoConnect on Chrome 144 or later.
Which browser MCP should I use in CI?
Playwright MCP, which runs headless with --headless and supports several browsers. MCP Browser Extension does not run headless, so it does not belong in CI.
Set it up in a few minutes