The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the CloakMCP listing page.
Stealth browser automation for AI agents — a Model Context Protocol server combining CloakBrowser's anti-detection with Playwright MCP-inspired architecture.
CloakBrowser is a source-level patched Chromium that passes Cloudflare Turnstile, reCAPTCHA v3 (0.9 score), FingerprintJS, BrowserScan, and 30+ bot detection services.
| Feature | Playwright MCP | CloakBrowser MCP |
|---|---|---|
| Anti-detection | ❌ None | ✅ Source-patched Chromium |
| Cloudflare bypass | ❌ | ✅ |
| reCAPTCHA v3 | ❌ | ✅ 0.9 score |
| Snapshot-first | ✅ | ✅ |
| Markdown extraction | ❌ | ✅ Readability-style |
| Annotated screenshots | ❌ | ✅ browser-use style |
| Smart page settling | Basic | ✅ MutationObserver + networkidle |
| Auto-retry clicks | ❌ | ✅ |
| Humanized input | ❌ | ✅ Mouse curves, keyboard timing |
| Capability gating | ✅ --caps | ✅ --caps |
Add to your claude_desktop_config.json:
Add to .vscode/mcp.json:
Add to ~/.hermes/config.yaml:
CloakBrowser MCP uses accessibility tree snapshots as the primary way for AI models to understand web pages — not screenshots, not raw HTML.
Each interactive element gets a [@eN] ref ID. All interaction tools use these refs — no CSS selectors needed.
cloak_snapshot() — Accessibility tree with [@eN] refs. Fast, cheap, reliable. Use this.cloak_read_page() — Clean markdown extraction. For reading content, not interacting.cloak_screenshot() — Annotated screenshot with element indices. For visual context (images, charts, CAPTCHAs).All anti-detection features are ON by default:
humanize=True)| Tool | Description |
|---|---|
cloak_launch | Start stealth browser (all anti-detection ON) |
cloak_close | Close browser and release resources |
cloak_snapshot | PRIMARY — accessibility tree with [@eN] refs |
cloak_click | Click element by ref (auto-retry) |
cloak_type | Type into input by ref (with submit option) |
cloak_select | Select dropdown option by ref |
cloak_hover | Hover over element by ref |
cloak_check | Check/uncheck checkbox by ref |
cloak_read_page | Page content as clean markdown |
cloak_screenshot | Annotated screenshot with element indices |
cloak_navigate | Go to URL (auto-waits for settle) |
cloak_back | Navigate back in history |
cloak_forward | Navigate forward in history |
cloak_press_key | Press keyboard key |
cloak_scroll | Scroll page up/down |
cloak_wait | Wait for page to settle |
cloak_evaluate | Execute JavaScript in page |
cloak_new_page | Open new page/tab |
cloak_list_pages | List all open pages |
cloak_close_page | Close a specific page |
--caps)Enable with cloakbrowsermcp --caps network,cookies,pdf,console or --caps all.
| Tool | Capability | Description |
|---|---|---|
cloak_network_intercept | network | Block/mock/passthrough requests |
cloak_network_continue | network | Remove interception rule |
cloak_get_cookies | cookies | Get all cookies |
cloak_set_cookies | cookies | Set cookies |
cloak_pdf | Save page as PDF | |
cloak_console | console | Get browser console output |
--caps: Comma-separated capabilities: network, cookies, pdf, console, all--transport: MCP transport — stdio (default) or sse--port: Port for SSE transport (default: 8931)| Variable | Default | Description |
|---|---|---|
CLOAKBROWSER_LOG_LEVEL | INFO | Log level |
CLOAKBROWSER_LOG_FILE | ~/.cloakbrowser/logs/server.log | Log file path |
CLOAKBROWSER_LOG_STDERR | false | Also log to stderr |
cloak_snapshot() as the primary page understanding tool[@eN] refs from snapshotsApache-2.0