Lightweight stealth-oriented browser MCP server in Rust — one shared Chrome for many AI agents, 64+ Playwright-style tools, no Node.js runtime.
README
One real browser. Many agents. A ~5.5 MB Rust server.
browser-rs is a lightweight, stealth-oriented browser MCP server. It lets multiple AI agents share one logged-in Chrome — each agent controls only its own tabs — for parallel scraping, web automation, and QA without every agent spinning up its own browser. 68 Playwright-style tools, one Rust binary, no Node.js runtime.
flowchart LR
A["Agent A<br/>owner=research"] --> M["browser-rs MCP<br/>one Rust process"]
B["Agent B<br/>owner=operations"] --> M
C["Agent C<br/>owner=qa"] --> M
M --> H["one shared Chrome<br/>persistent profile"]
H --> T1["research tabs"]
H --> T2["operations tabs"]
H --> T3["qa tabs"]
| | browser-rs | Playwright/Puppeteer-based MCP (Node) | |---|:--|:--| | Server runtime | Single Rust binary | Node.js + npm dependency tree | | Release artifact | ~5.5 MB | Runtime and packages installed separately | | Server memory¹ | ~6 MB RSS | ~180 MB RSS | | Multi-agent control | One Chrome, owner-isolated tab groups | Separate coordination required | | Browser control | Raw CDP over one multiplexed WebSocket | Playwright |
The default mode uses a locally installed, headful Chrome with a persistent
profile and does not inject page patches, minimizing common automation signals.
It does not guarantee bot-detection bypass — no automation stack can — but
ships reproducible detector runners under bench/ so changes can be
tested against current