CloakMCP

io.github.overtimepog由 GitHub 账号 overtimepog 发布v2.0.1更新于 Oct 24, 2026

Stealth browser MCP server — anti-detection Chromium with snapshot-first agent interface

概览

AI 生成的概览

让助手操控一款反检测的隐身 Chromium 浏览器:打开网页、以 Markdown 读取内容,并通过无障碍树引用进行点击和输入。

可以做什么
CloakMCP 在本地运行一款隐身 Chromium,并向助手暴露浏览器控制工具。核心工具涵盖启动与关闭浏览器、导航、前进后退、获取带 [@eN] 元素引用的无障碍树快照、点击、输入、选择、悬停、勾选、按键、滚动、等待、执行 JavaScript 以及管理页面。它还能把页面内容输出为干净的 Markdown,或输出带元素编号的标注截图。可选的能力开关工具增加网络拦截、Cookie 读写、PDF 导出和控制台输出。
适用场景
当助手需要真正操作网页而不只是抓取时适用,尤其是会拦截普通自动化的站点。以快照为先、基于引用的交互方式适合多步表单填写、页面导航和内容提取。它是仅限桌面的本地进程,不适合无头服务器部署。
运行要求
本地 Python 环境,需通过 pip 安装 cloakbrowsermcp 包,以及它所驱动的补丁版 Chromium。默认使用 stdio 传输,也可用 SSE 并指定端口。可选命令行参数用于开启额外能力,环境变量用于控制日志。代理为可选项,但隐身用途下建议配置。
安装前请注意
它专为规避机器人检测而设计,包括 Cloudflare Turnstile 和 reCAPTCHA,使用它可能违反所访问网站的服务条款。相关工具可以点击、输入、提交表单、设置 Cookie、拦截网络请求,并在页面中执行任意 JavaScript,可能修改或外发数据。代理和持久化配置文件可能带有身份信息;请先明确允许助手执行哪些操作。

安装

在 SourceWeft 中

  1. 打开 控制台中的 CloakMCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

CloakBrowser MCP

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.

Why CloakBrowser MCP?

FeaturePlaywright MCPCloakBrowser 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 settlingBasic✅ MutationObserver + networkidle
Auto-retry clicks❌✅
Humanized input❌✅ Mouse curves, keyboard timing
Capability gating✅ --caps✅ --caps

Quick Start

Install

bash
pip install cloakbrowsermcp

Use with Claude Desktop

Add to your claude_desktop_config.json:

json
{  "mcpServers": {    "cloakbrowser": {      "command": "cloakbrowsermcp"    }  }}

Use with VS Code / Cursor

Add to .vscode/mcp.json:

json
{  "servers": {    "cloakbrowser": {      "command": "cloakbrowsermcp",      "args": ["--caps", "all"]    }  }}

Use with Hermes Agent

Add to ~/.hermes/config.yaml:

yaml
mcp_servers:  cloakbrowser:    command: cloakbrowsermcp    args: ["--caps", "all"]    timeout: 120

How It Works

Snapshot-First Architecture

CloakBrowser MCP uses accessibility tree snapshots as the primary way for AI models to understand web pages — not screenshots, not raw HTML.

1. cloak_launch()           → Start stealth browser2. cloak_navigate(pid, url) → Go to page (auto-waits for settle)3. cloak_snapshot(pid)      → Get interactive elements with [@eN] refs4. cloak_click(pid, '@e5')  → Click element by ref5. cloak_type(pid, '@e3', 'hello')  → Type into input6. cloak_read_page(pid)     → Get content as clean markdown7. cloak_close()            → Done

Each interactive element gets a [@eN] ref ID. All interaction tools use these refs — no CSS selectors needed.

Three Ways to See a Page

  1. cloak_snapshot() — Accessibility tree with [@eN] refs. Fast, cheap, reliable. Use this.
  2. cloak_read_page() — Clean markdown extraction. For reading content, not interacting.
  3. cloak_screenshot() — Annotated screenshot with element indices. For visual context (images, charts, CAPTCHAs).

Stealth by Default

All anti-detection features are ON by default:

  • Source-patched Chromium binary (not Playwright patches — actual Chromium source modifications)
  • Human-like mouse curves, keyboard timing, and scroll patterns (humanize=True)
  • Stealth fingerprint arguments (consistent canvas, WebGL, audio fingerprints)
  • Proxy support with GeoIP-based timezone/locale detection

Tools

Core Tools (20 — always available)

ToolDescription
cloak_launchStart stealth browser (all anti-detection ON)
cloak_closeClose browser and release resources
cloak_snapshotPRIMARY — accessibility tree with [@eN] refs
cloak_clickClick element by ref (auto-retry)
cloak_typeType into input by ref (with submit option)
cloak_selectSelect dropdown option by ref
cloak_hoverHover over element by ref
cloak_checkCheck/uncheck checkbox by ref
cloak_read_pagePage content as clean markdown
cloak_screenshotAnnotated screenshot with element indices
cloak_navigateGo to URL (auto-waits for settle)
cloak_backNavigate back in history
cloak_forwardNavigate forward in history
cloak_press_keyPress keyboard key
cloak_scrollScroll page up/down
cloak_waitWait for page to settle
cloak_evaluateExecute JavaScript in page
cloak_new_pageOpen new page/tab
cloak_list_pagesList all open pages
cloak_close_pageClose a specific page

Capability-Gated Tools (enabled via --caps)

Enable with cloakbrowsermcp --caps network,cookies,pdf,console or --caps all.

ToolCapabilityDescription
cloak_network_interceptnetworkBlock/mock/passthrough requests
cloak_network_continuenetworkRemove interception rule
cloak_get_cookiescookiesGet all cookies
cloak_set_cookiescookiesSet cookies
cloak_pdfpdfSave page as PDF
cloak_consoleconsoleGet browser console output

Configuration

CLI Options

cloakbrowsermcp [--caps CAPS] [--transport {stdio,sse}] [--port PORT]
  • --caps: Comma-separated capabilities: network, cookies, pdf, console, all
  • --transport: MCP transport — stdio (default) or sse
  • --port: Port for SSE transport (default: 8931)

Environment Variables

VariableDefaultDescription
CLOAKBROWSER_LOG_LEVELINFOLog level
CLOAKBROWSER_LOG_FILE~/.cloakbrowser/logs/server.logLog file path
CLOAKBROWSER_LOG_STDERRfalseAlso log to stderr

Launch Options

python
cloak_launch(    headless=True,        # False for headed mode (some sites require it)    proxy="http://...",   # Residential proxy recommended    humanize=True,        # Human-like input (ON by default)    stealth_args=True,    # Stealth fingerprints (ON by default)    timezone="America/New_York",    locale="en-US",    geoip=False,          # Auto-detect from proxy IP    fingerprint_seed="my-identity",  # Consistent fingerprint across sessions    user_data_dir="/path",  # Persistent profile)

Backend note: SessionConfig.backend is deprecated. CloakBrowser 0.4.0 removed the patchright backend (it broke proxy auth and add_init_script without improving stealth), so current versions ignore the setting and log a one-time warning. If you still need it, pip install "cloakbrowsermcp[patchright]" pins cloakbrowser<0.4, where the old backend still works, but it carries those upstream bugs.

Architecture

cloakbrowsermcp/├── server.py      # FastMCP server, tool registration, error handling├── session.py     # Browser lifecycle, page management, ref storage├── snapshot.py    # Accessibility tree JS, ref resolution├── markdown.py    # Readability-style HTML-to-markdown extraction├── vision.py      # Annotated screenshots with element indices├── waiting.py     # Smart wait, page settle, retry logic├── stealth.py     # Stealth config inspection├── network.py     # Network intercept, cookies (capability-gated)├── __init__.py└── __main__.py

Design Principles

  1. Snapshot-first — Tool descriptions steer models to use cloak_snapshot() as the primary page understanding tool
  2. Ref-based only — No CSS selector tools. All interaction via [@eN] refs from snapshots
  3. Stealth by default — Anti-detection, humanization, and stealth args all ON without configuration
  4. Auto-snapshot after actions — Click, type, navigate all return an updated snapshot
  5. Smart waiting — Auto-wait on navigation (networkidle + MutationObserver settle), auto-retry on failed clicks
  6. Capability gating — Advanced tools (network, cookies, PDF) off by default to keep tool count low
  7. Clean content extraction — Markdown for reading, snapshot for interaction, annotated screenshots for vision

Development

bash
git clone https://github.com/overtimepog/CloakMCPcd CloakMCPpip install -e ".[dev]"pytest

License

Apache-2.0

来源:README.md,提交 1e7122d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v2.0.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。