# MCP server for browser automation

> An MCP server for browser automation turns page actions into tools an AI assistant can call. Playwright MCP, Chrome DevTools MCP and Mosaic compared.

Source: https://mosaicbrowser.com/guides/mcp-server-for-browser-automation

## MCP server for browser automation: what it is and which to use

An MCP server for browser automation is a program that offers an AI assistant tools such as navigate, snapshot, click and type, and drives a real browser when the assistant calls them. Playwright MCP and Chrome DevTools MCP drive one browser; Mosaic's MCP server drives many separate profiles.

![156: Tools in Mosaic's MCP server, as of 2 November 2026, beside a screenshot: the Mosaic MCP server: let an AI assistant manage profiles, proxies and launches](https://mosaicbrowser.com/covers/mcp-server-for-browser-automation.webp)

The Model Context Protocol is an open standard for connecting AI applications to tools and data ([modelcontextprotocol.io](https://modelcontextprotocol.io/docs/2026-07-28/getting-started/intro), read 2 November 2026). An MCP server for browser automation is one kind of MCP server. The assistant never touches the browser itself. It sees a list of tools, each with a name, a description and an input schema, and asks the server to run them: `navigate` to this URL, `snapshot` the page, `click` the element with this ref.

## How an MCP server for browser automation works

Three parts do the work, and the servers differ mostly in the third.

The transport is how the assistant reaches the server. The specification defines two: stdio, where the client launches the server as a subprocess and talks over standard input and output, and Streamable HTTP, where the server is already running at an address. It says clients "SHOULD support stdio whenever possible" ([MCP specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports), read 2 November 2026).

The page model is how the assistant reads what is in front of it. Raw HTML runs to tens of thousands of lines on an ordinary page, which wastes the model's context. So the common answer is an accessibility snapshot: the page as a tree of roles, names and states, with a short reference on everything that can be pressed or typed into. The assistant answers with "click e42" instead of a CSS selector it had to guess.

The browser is what the tools act on. A server can start a throwaway browser for each session, keep one persistent profile, attach to a Chrome that is already open, or manage many separate profiles. That choice decides what the assistant can reach, and it is the one people skip.

Mosaic is a desktop app

Email yourself the link and open it on your computer.

[How it works: MCP server](https://mosaicbrowser.com/features/mcp-server)

## The servers people use, side by side

| Server | Made by | What it drives | Notes from its own page |
| --- | --- | --- | --- |
| Playwright MCP | Microsoft | One browser through Playwright | Reads pages as "structured accessibility snapshots"; a persistent profile by default, `--user-data-dir` to move it, `--cdp-endpoint` to attach to a running browser |
| Chrome DevTools MCP | Chrome DevTools team | Chrome, through DevTools | Described as "Chrome DevTools for coding agents"; options include `--headless`, `--isolated` and `--slim` |
| Mosaic MCP server | Mosaic (us) | Many Mosaic profiles, each with its own fingerprint, proxy and cookies | 156 tools as of 2 November 2026, off by default, every call needs an API key |

Playwright MCP is from [its README](https://github.com/microsoft/playwright-mcp) and Chrome DevTools MCP from [its README](https://github.com/ChromeDevTools/chrome-devtools-mcp), both read 2 November 2026. Both are open source under the Apache-2.0 licence. For testing or debugging your own web app, either is a good fit.

## When one browser is not enough

The first two drive one browser at a time. For an assistant working across several accounts, that browser is where the accounts meet: one cookie jar, one exit address, one machine's fingerprint, shared by every account it signs in to.

Mosaic's [MCP server](https://mosaicbrowser.com/features/mcp-server) is built the other way round. The unit is a profile, and the tools manage profiles as well as pages: `create_profile`, `mint_proxy`, `start_profiles`, `stop_profile`, then `page_snapshot`, `page_click`, `page_type` and `page_fill` on whichever profile is running. A request like "start the three Berlin profiles and open the orders page in each" is a handful of tool calls. Profiles made from a proxy provider each mint their own session, so they come out on separate exits. The [guide to letting Claude control a browser](https://mosaicbrowser.com/guides/let-claude-control-a-browser) has the set-up for Claude Desktop and Claude Code.

![Mosaic Settings › MCP: the server switch, port 39218 and the config block for a stdio client](https://mosaicbrowser.com/shots/settings-mcp.png)
*Settings › MCP lists every tool the running server registers*

Two choices in it came from measurements, not taste. The page tools never enable the DevTools `Runtime` domain, because on our engine that one call flipped deviceandbrowserinfo's verdict to `isBot=true`; snapshots and queries run in an isolated world the page cannot see. And clicks and keystrokes go through human-timed input, with a cursor that travels to the element and a real wheel for scrolling.

## What to check before you give one your sessions

An assistant with a browser can do anything you can do in it. Before you connect a server to a logged-in browser, ask four things of it:

- Whether it is off until you turn it on, and whether it needs a key.
- Whether it listens only on your own machine. Mosaic's answers on `127.0.0.1` alone.
- Whether a destructive call with no scope is refused. Emptying Mosaic's trash without naming what to empty is an error, never "all of it".
- Whether you can see afterwards what it did. Mosaic logs calls on the API activity screen by key.

Sites also have their own rules about automated use, and an assistant is automation. The [AI agents page](https://mosaicbrowser.com/use-cases/ai-agents) covers that side. Mosaic's MCP server is part of Pro, $49 a month with a 14-day free trial, on the [pricing page](https://mosaicbrowser.com/pricing).

## Sources

1. [Model Context Protocol specification: Transports](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports), read November 2, 2026
2. [Model Context Protocol: What is MCP?](https://modelcontextprotocol.io/docs/2026-07-28/getting-started/intro), read November 2, 2026
3. [Playwright MCP (GitHub)](https://github.com/microsoft/playwright-mcp), read November 2, 2026
4. [Chrome DevTools MCP (GitHub)](https://github.com/ChromeDevTools/chrome-devtools-mcp), read November 2, 2026

## Questions

### What is the difference between stdio and HTTP MCP servers?

With stdio the client launches the server as a local process and talks to it over standard input and output. With Streamable HTTP the server is already running and the client sends requests to an address. The MCP specification asks clients to support stdio whenever possible.

### Do browser MCP servers use screenshots?

Most read the page as an accessibility tree instead: roles, names and states, with a reference on each element. That is far smaller than the HTML and does not need a vision model. Screenshots are usually an extra tool.

### Can Playwright MCP connect to an anti-detect browser?

Playwright MCP has a --cdp-endpoint option, so it can attach to a running Chromium. It then drives the page the way Playwright does, which includes enabling the DevTools Runtime domain.

### Is Mosaic's MCP server free?

No. The MCP server and the REST API are part of Pro, $49 a month with a 14-day free trial.

## Related

[An anti-detect browser MCP server for your AI assistant](https://mosaicbrowser.com/features/mcp-server): Mosaic's anti-detect browser MCP server lets Claude or any MCP client create, launch and drive your profiles. 150+ tools, off by default, key-gated.

[How to let Claude control a browser](https://mosaicbrowser.com/guides/let-claude-control-a-browser): Let Claude control a browser with the Claude in Chrome extension, or with an MCP server in Claude Desktop or Claude Code. Which to pick, and how to set each up.

[How to automate multiple browser profiles](https://mosaicbrowser.com/guides/automate-multiple-browser-profiles): Automate multiple browser profiles by giving each account a persistent profile, starting each from a script and attaching Playwright or Puppeteer over CDP.

[Anti-detect browser for AI agents](https://mosaicbrowser.com/use-cases/ai-agents): An anti-detect browser for AI agents gives each account the agent works in its own profile. Mosaic's MCP server and REST API let it drive them on your computer.

[Local first: your profiles stay on your computer](https://mosaicbrowser.com/features/local-first): Mosaic has no cloud copy of your profiles. Profiles, cookies and proxies stay on your computer, encrypted on disk, with app lock, daily backups and a trash.







## Run this guide on your own accounts

Every Mosaic profile is a fingerprint, a proxy exit and a cookie jar that agree with each other, kept on your computer. Free holds 3 profiles. Pro is $49 a month for any number.

Mosaic is a desktop app

Email yourself the link and open it on your computer.
