@browserview/mcp
Official@browserview/mcp is an MCP server that lets AI agents create, inspect, share, and destroy disposable cloud Chromium browser sessions on browserview.io, enabling both programmatic browser control (over CDP) and human observation/control via a live viewer URL simultaneously.
Capabilities
Create browser sessions (
create_session): Spin up a disposable cloud Chromium browser with a configurable start URL, viewport dimensions (320–3840 × 240–2160), optional wait-for-ready blocking, and optional session recording. Returns a human-accessibleviewer_url, pluscdp_urlandcdp_tokenfor driving the browser via Playwright or Puppeteer.List active sessions (
list_sessions): Get a summary of all active sessions for your account (id, status, health, start_url, dimensions, created_at) — no URLs or tokens exposed.Inspect a session (
get_session): Fetch full details for a single session with freshly issued viewer/CDP URLs and tokens, plus health info:restartscount anddegradedflag (true once the in-session browser has restarted). Use this to refresh expired tokens.Destroy a session (
destroy_session): Permanently shut down a session — browser stops, all viewer/CDP connections drop, unrecoverable. Recorded replays remain available afterward.Mint scoped access tokens (
mint_session_token): Generate short-lived, scoped tokens (view,control, orcdp) to securely share a session without exposing your API key. Configurable TTL from 1 second to 7 days (default 1 hour).Retrieve session replays (
get_session_replay): Fetch the replay manifest for recorded sessions (works even after destruction): seekable WebM video, main-frame page navigation timeline, and per-stream JSONL event feeds (actions, console, network, errors), all with absolute epoch-ms timestamps for precise alignment with video. Supports optional polling (up to 2 min) while recording finalizes.
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., "@@browserview/mcpCreate a browser session for https://example.com"
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.
@browserview/mcp
MCP (Model Context Protocol) server for browserview.io — disposable cloud Chromium sessions. Humans watch and control a session through a live viewer URL; agents drive the same browser over the Chrome DevTools Protocol (CDP) using Playwright or Puppeteer (connectOverCDP). This server lets any MCP-capable agent (Claude, OpenAI agents, Cursor, and others) create, inspect, share, and destroy sessions.
Requirements
Node.js 18+
A browserview.io API key, provided via the
BROWSERVIEW_API_KEYenvironment variable. Keys are minted in the browserview.io console and look likebv_live_+ 40 hex chars.
Optional: set BROWSERVIEW_BASE_URL to override the API base URL (default https://sessions.browserview.io). The legacy BROWSERVIEW_API_URL variable is still honored as a fallback but is deprecated — prefer BROWSERVIEW_BASE_URL.
Related MCP server: RoxyBrowser MCP Server
Setup
Claude Code
claude mcp add browserview -e BROWSERVIEW_API_KEY=your-key-here -- npx -y @browserview/mcpClaude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"browserview": {
"command": "npx",
"args": ["-y", "@browserview/mcp"],
"env": {
"BROWSERVIEW_API_KEY": "your-key-here"
}
}
}
}Cursor
Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"browserview": {
"command": "npx",
"args": ["-y", "@browserview/mcp"],
"env": {
"BROWSERVIEW_API_KEY": "your-key-here"
}
}
}
}Generic stdio client
Run the server as a stdio subprocess:
BROWSERVIEW_API_KEY=your-key-here npx -y @browserview/mcpTools
Tool | Arguments | Description |
|
| Create a browser session. Server defaults: |
| — | List all sessions (no URLs/tokens; use |
|
| Fetch one session with freshly issued URLs and tokens, plus health details: |
|
| Permanently destroy a session. |
|
| Mint a scoped access token for sharing a session without exposing your API key. |
|
| Replay manifest of a recorded session (works after destruction): video URL (seekable WebM), pages timeline, and per-stream JSONL event URLs (actions/console/network/errors), all with absolute epoch-ms timestamps. With |
Connecting to the browser
cdp_url is deliberately token-free; pass cdp_token as an x-session-token header or a ?token= query parameter:
// Playwright
const browser = await chromium.connectOverCDP(session.cdp_url, {
headers: { "x-session-token": session.cdp_token },
});
// Puppeteer
const browser = await puppeteer.connect({
browserURL: session.cdp_url + "?token=" + session.cdp_token,
});Tokens expire after token_ttl_seconds (1 hour by default) — call get_session or mint_session_token for fresh ones. Hand viewer_url to a human to let them watch and take control of the same browser while the agent works.
Behavior notes
Retries: requests that fail with 429 (rate/capacity limit,
Retry-After: 30) or 503 (auth backend temporarily down,Retry-After: 10) are retried automatically up to 3 times, honoring theRetry-Afterheader (capped at 30s per wait) or falling back to 1s/2s/4s backoff.Timeout: each request has a 60s timeout, sized for
create_sessionwithwait: true.URLs: the API returns
viewer_url/watch_url/cdp_urlas paths relative to the API host; this server resolves them to absolute URLs before returning them.Errors: API errors surface the server's
detailmessage plus retry hints when rate limited.Lifecycle: sessions are disposable — destroy them when done; the server also reaps sessions automatically when idle or past their maximum lifetime, so a crashed agent never leaks a browser.
Development
npm install
npm run build
node dist/index.jsMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityAmaintenanceMCP server for browser automation, exposing tools for tab management, navigation, CDP, action plans, and cleanup.Last updated728221MIT
- AlicenseBqualityAmaintenanceAn MCP server for managing RoxyBrowser browser instances and obtaining CDP endpoints for automation. Supports workspace management, proxy configuration, and account management.Last updated2612737MIT
- AlicenseAqualityDmaintenanceSelf-hosted MCP server for AI browser automation. Connects to your own Chromium instance via CDP, providing tools for browser control, navigation, interaction, and content extraction.Last updated191MIT
- Flicense-qualityBmaintenanceAn MCP server for generic browser automation using Playwright. Enables MCP clients to navigate pages, inspect elements, execute JavaScript, capture screenshots, and monitor console logs and network traffic via a headless Chromium instance.Last updated
Related MCP Connectors
MCP server for interacting with the Supabase platform
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP (Model Context Protocol) server for Appwrite
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/browserview/mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server