maestrojeong/browser-rs-mcp

View on GitHub ↗

Lightweight stealth-oriented browser MCP server in Rust — one shared Chrome for many AI agents, 64+ Playwright-style tools, no Node.js runtime.

21 ★4 forksRustUpdated 18d ago

What you need to know

browser-rs — a lightweight (~5.5 MB single Rust binary) stealth-oriented browser MCP server that lets multiple agents share one logged-in Chrome with owner-isolated tab groups, exposing 67 Playwright-style tools over raw CDP with no Node.js runtime.

Install

curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/main/install.sh | sh
Pin a release: curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/main/install.sh | AB_VERSION=v0.1.23 sh
Build from source: cargo install --git https://github.com/maestrojeong/browser-rs-mcp ab-mcp
Requires a locally installed Google Chrome or Chromium; set AB_CHROME if not in a standard location.

Usage

  • claude mcp add browser-rs -- browser-rs (or Codex CLI ~/.codex/config.toml / Claude Desktop config).
  • Typical loop: browser_snapshot, act, then inspect the returned accessibility diff.
  • Most interaction tools accept a snapshot ref or CSS selector; cross-origin iframes use browser_iframe_click/_fill/_read.
  • Common workflow: browser_navigate to a URL, browser_snapshot returns the accessibility tree.

Key features

  • One shared persistent Chrome profile with per-owner tab groups (research/operations/qa) for parallel scraping, automation, and QA.
  • Raw CDP over a single multiplexed WebSocket; ~6 MB RSS server vs ~180 MB for Node-based equivalents.
  • Stealth defaults — no page patches, persistent headful profile; release-borne detector runners under bench/ for reproducibility.
  • Hardened security controls: per-owner HMAC capability tokens, AB_ALLOWED_TOOLS allowlist, AB_MAX_OUTPUT_LIMIT, and a secret broker in managed multi-tenant mode.
  • 67 tools including browser_iframe_type, browser_pointer, browser_cancel_typing; Apache-2.0.

Best for

Multi-agent environments (research/operations/QA teams) sharing one logged-in browser on a single machine with minimal memory footprint.

Caveats

  • Prebuilt binaries only for macOS arm64 and Linux x64.
  • Does not guarantee bot-detection bypass; requires a locally installed Chrome/Chromium.
  • Managed hosting mode is separate (per-owner capability tokens); standalone stdio/loopback HTTP is the default.
  • Output limits have an absolute ceiling (default 5 MB); large responses are truncated.
Platforms: LocalClients: Claude Code · Codex CLI · Claude Desktop

Reviewed 2026-08-18

Topics

ai-agentsbrowser-automationchrome-devtools-protocolmcpmcp-servermodel-context-protocolplaywrightruststealthweb-scraping
Stars
21★
Forks
4
Language
Rust
License
Apache-2.0
Created
2026-07-12
Last push
2026-08-18