> ## Documentation Index
> Fetch the complete documentation index at: https://browser-mcp.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Browser MCP

> Connect a browser you control to a trusted AI client using Model Context Protocol.

Browser MCP connects a Chrome Manifest V3 extension to a Bun server over an authenticated WebSocket. MCP clients send browser-scoped, authenticated requests to that server using Streamable HTTP. The extension operates your existing browser, including its signed-in sessions, rather than launching a separate headless browser.

<Warning>
  A browser MCP token grants broad control of a connected browser: reading pages, screenshots, typing, navigation, clicks, and arbitrary page JavaScript. It is not a read-only or single-tab token. Only connect trusted AI clients. Use a separate browser profile without sensitive accounts for evaluation.
</Warning>

## Choose an edition

|                 | Community                                                             | Managed                                                                                  |
| --------------- | --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Operator        | You run the server and PostgreSQL                                     | A service operator runs the server and PostgreSQL                                        |
| Login           | First-account email/password bootstrap; administrator-configured OIDC | GitHub sign-in                                                                           |
| Browser pairing | Connect to your upstream and explicitly approve a device request      | Sign in with GitHub and explicitly approve the device; the browser is registered for you |
| Distribution    | Build from source or use a verified release image and Helm chart      | Separate managed build artifact                                                          |

`EDITION=community|managed` selects the implementation **at build time**. Community is the default. Setting an environment variable on a running community image does not convert it into managed.

<Note>
  The source repository remains private; the Helm chart is intended for separate public distribution through Cloudflare R2. These docs do not assert that a hosted managed service, GHCR image, public chart endpoint, Mintlify site, or Chrome Web Store listing is already published. Use operator-supplied URLs/artifacts, or build locally if you have source access.
</Note>

## Next steps

* [Quickstart](/quickstart): run locally, pair a browser, and connect an MCP client.
* [Extension](/extension): install, connect, disconnect, and understand permissions.
* [Self-host](/self-host) and [Helm](/helm): deploy with your own secrets and PostgreSQL.
* [MCP tools](/mcp-tools): the complete initial tool set and limits.
* [Security](/security): trust boundaries, token handling, and privacy disclosures.

## Current operating boundary

One server process owns all extension WebSockets. **Exactly one replica** is supported. Upgrades and restarts disconnect browsers and may fail in-flight commands; this is not a high-availability service. The chart enforces one replica and uses Recreate deployments.
