browser-rs-mcp - Ultraleichter Stealth-Browser-Controller für mehrere Agenten
(github.com/maestrojeong)1. Motivation?
Ein Chrome pro Agent. Wenn das der Standard ist, fallen pro Agent 500 MB bis 1 GB RAM an. Schon bei nur 5 laufenden Agenten verbraucht allein der Browser 2,5 bis 5 GB RAM.
Dazu kommt, dass Playwright standardmäßig schon für eine einzelne CDP-Session etwa 180 MB benötigt. Der Speicher des Browser-Prozesses ist dabei noch gar nicht mitgerechnet — das heißt, die CDP-Schicht selbst ist bereits schwergewichtig. Je mehr Agenten hinzukommen, desto stärker vervielfacht sich dieser Overhead linear.
Wenn man Multi-Agenten in der Praxis betreiben will, musste genau diese Struktur aufgebrochen werden.
2. How?
Es wird nur ein Browser gestartet. Unabhängig davon, wie viele Agenten es gibt, verbinden sie sich darüber per raw CDP, und der Server isoliert Tabs strikt nach Owner. Agent B kann nicht auf Tabs von Agent A zugreifen. Eine einzige Instanz trägt also N Agenten, sodass der Browser-Speicher nicht mit der Zahl der Agenten wächst.
Auch die Sprache wurde gewechselt. Es wurde in Rust neu implementiert, und die Architektur ist so aufgebaut, dass kein Browser eingebettet wird (Verbindung zu bestehendem Chrome per --connect). Dadurch ist der Server selbst ein einzelnes 6-MB-Binary.
Erkennung wird vermieden. Inspiriert von Patchright werden leicht erkennbare CDP-Domänen wie Runtime.enable gar nicht erst aktiviert, und statt eines gepatchten Fake-Browsers wird einfach das echte Chrome des Nutzers mit persistentem Profil verwendet.
3. Summary
Zusammengefasst: ein ultraleichter Stealth-Browser-Controller für mehrere Agenten
62 Tools auf Basis von raw CDP — Accessibility-Tree-Ref, Action-Settle-Diff, Network/Cookies/Storage/PDF/Upload/iframe/WebAuthn, stdio + HTTP/SSE.
Installation
curl -fsSL https://raw.githubusercontent.com/maestrojeong/browser-rs-mcp/… | sh
4. Future work
Ein Windows-Build und die Veröffentlichung auf crates.io stehen als nächste Aufgaben noch aus.
Noch keine Kommentare.