CloakBrowser MCP

io.github.swimmwatchPublished by GitHub account swimmwatchv1.15.1Updated Oct 24, 2026

Playwright MCP-compatible browser automation bridge for CloakBrowser Chromium.

VerifiedSTDIODesktop onlyBrowser AutomationDeveloper Tools

Overview

AI-generated overview

Playwright MCP-compatible browser automation server that drives CloakBrowser Chromium, letting an assistant browse, interact with and test web pages.

What you can do
  • Browse and interact with web pages through the unchanged upstream Playwright MCP tool set (navigation, clicking, typing, snapshots)
  • Run web research, daily automation and testing tasks in plain English against a real browser
  • Inspect the local setup with two bridge tools that report CloakBrowser binary details and bridge/upstream metadata
  • Use persistent browser profiles, validated context options, Chrome extension loading, GeoIP-matched proxies and humanized input
  • Generate code snippets in TypeScript, Python, Java or C# and write artifacts to an output directory
When to use it
Choose it when you want standard Playwright MCP browser automation but pointed at CloakBrowser Chromium, for example regional QA behind proxies, persistent login profiles, extension-dependent flows, or interaction-sensitive automation and testing.
Requirements
Runs locally over stdio (or Streamable HTTP). Node.js 22.13+ in the 22.x line or 24+ for the npm package, or the Docker image for linux/amd64 and linux/arm64. Configuration uses PLAYWRIGHT_MCP_* and CLOAK_PLAYWRIGHT_MCP_* environment variables; the optional HTTP bearer token is CLOAK_PLAYWRIGHT_MCP_HTTP_AUTH_TOKEN. Network access is needed for browsing.
Before you install
The browser acts on live sites, so it can submit forms, log in and change remote data. Persistent profiles and user data directories store session state on disk. The Docker image defaults to disabling the Chromium sandbox; keep network access and mounted host directories tightly scoped for untrusted pages. If Streamable HTTP is exposed, set CLOAK_PLAYWRIGHT_MCP_HTTP_AUTH_TOKEN and bind to localhost.

Installation

In SourceWeft

  1. Open CloakBrowser MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

cloakbrowser-mcp

[CloakBrowser MCP]

[CI] [codecov] [Actionlint] [CodeQL] [Dependency Review] [OpenSSF Scorecard] [Zizmor] [Release] [GitHub Release] [MCP Registry] [cloakbrowser-mcp MCP server] [LobeHub MCP] [Awesome MCP Servers] [npm] [npm downloads] [Docker Hub pulls] [Docker image] [Node.js 22.13+ or 24+] [TypeScript strict] [Cross-platform] [Available on CodeGuilds] [MCP Server] [MCP transports] [Docker] [License: MIT] [MCP Toplist]

cloakbrowser-mcp is a drop-in Playwright MCP-compatible browser automation server with unchanged upstream tools, CloakBrowser Chromium, and production-ready npm, Docker, and Streamable HTTP packaging. It runs upstream @playwright/mcp as the canonical tool surface and points that runtime at CloakBrowser.

30-second demo

[30-second demo showing CloakBrowser MCP startup, humanized research prompt typing, web automation, and testing workflows]

Run npx -y cloakbrowser-mcp@latest, connect Claude Desktop or Codex CLI, ask for web research, daily automation, or testing in plain English, and inspect the real browser result.

Documentation: swimmwatch.github.io/cloakbrowser-mcp · Comparison · Recipes

Use it when you need:

  • Playwright MCP browser automation backed by CloakBrowser;
  • unchanged upstream browser tools plus two local introspection tools;
  • npm or Docker installation over stdio or Streamable HTTP;
  • opt-in, session-scoped managed CDP access for CDP-capable clients through chromium.connectOverCDP();
  • persistent browser profiles, validated context options, and Chrome extension loading;
  • GeoIP-aware proxy matching for regional QA;
  • humanized mouse, keyboard, and scroll behavior for interaction-sensitive flows.

Cross-platform checks cover npm on Linux x64/arm64, macOS arm64/x64, and Windows x64 across the Node.js versions listed in Testing. Docker images are built and smoke-tested for linux/amd64 and linux/arm64.

See @playwright/mcp vs cloakbrowser-mcp when deciding whether plain upstream Playwright MCP or CloakBrowser MCP fits a deployment better. The Recipes pages show task-focused setup paths for persistent login profiles, Chrome extensions, reverse proxies, regional QA, client connections, and CI smoke tests.

Install With npm

bash
npx -y cloakbrowser-mcp@latest

Requires Node.js 22.13+ in the 22.x line, or Node.js 24+. Run diagnostics before wiring a client:

bash
npx -y cloakbrowser-mcp@latest doctor

For Streamable HTTP instead of stdio:

bash
npx -y cloakbrowser-mcp@latest --transport streamable-http --http-port 3000

See the generated CLI Reference for all flags.

Install With Docker

bash
docker run --rm -i \  -v "$PWD/artifacts:/data" \  swimmwatch/cloakbrowser-mcp:latest

For Streamable HTTP:

bash
docker run --rm -p 127.0.0.1:3000:3000 \  -v "$PWD/artifacts:/data" \  swimmwatch/cloakbrowser-mcp:latest \  --transport streamable-http --http-host 0.0.0.0 --http-port 3000

The Docker image writes artifacts to /data and is published for linux/amd64 and linux/arm64. It defaults to CLOAK_PLAYWRIGHT_MCP_NO_SANDBOX=true for compatibility with containerized runtimes where Chromium sandboxing is often unavailable. If your host and container runtime support Chromium sandboxing, set CLOAK_PLAYWRIGHT_MCP_NO_SANDBOX=false; for untrusted pages, keep container network access and mounted host directories tightly scoped. The same tags are also available from ghcr.io/swimmwatch/cloakbrowser-mcp. See Docker for persistent profiles, extension mounts, HTTPS, and smoke-test examples, or use the reverse proxy recipe for a focused Streamable HTTP deployment.

Add To MCP Clients

Codex CLI

bash
codex mcp add cloakbrowser -- npx -y cloakbrowser-mcp@latest

Claude Code

bash
claude mcp add --transport stdio cloakbrowser -- npx -y cloakbrowser-mcp@latest

GitHub Copilot In VS Code

json
{  "servers": {    "cloakbrowser": {      "type": "stdio",      "command": "npx",      "args": ["-y", "cloakbrowser-mcp@latest"]    }  }}

Claude Desktop, Cursor, Cline, Windsurf, Warp, And Other mcpServers Clients

Add this server entry to the client's MCP JSON config:

json
{  "mcpServers": {    "cloakbrowser": {      "command": "npx",      "args": ["-y", "cloakbrowser-mcp@latest"]    }  }}

Docker-backed stdio

json
{  "mcpServers": {    "cloakbrowser": {      "command": "docker",      "args": [        "run",        "--rm",        "-i",        "-v",        "/tmp/cloakbrowser-artifacts:/data",        "swimmwatch/cloakbrowser-mcp:latest"      ]    }  }}

Already-running Streamable HTTP server

bash
npx -y cloakbrowser-mcp@latest --transport streamable-http --http-port 3000codex mcp add cloakbrowser --url http://127.0.0.1:3000/mcpclaude mcp add --transport http cloakbrowser http://127.0.0.1:3000/mcp

Prompt For A Code Assistant

Paste this into Codex, Claude Code, Copilot, Cursor, Cline, Windsurf, or a similar coding assistant that can edit MCP config:

text
Install the CloakBrowser MCP server for this workspace. Name it "cloakbrowser".Prefer stdio with command "npx" and args ["-y", "cloakbrowser-mcp@latest"].If this client uses VS Code mcp.json, add it under "servers" with type "stdio".If this client uses Claude/Cursor/Cline/Windsurf/Warp-style config, add it under"mcpServers" with the same command and args. Do not add secrets.

More examples are in Getting Started, with dedicated recipes for Claude Desktop and Codex CLI.

Configuration

Use upstream PLAYWRIGHT_MCP_* variables for browser, artifacts, timeouts, network, and tool capability settings. Cloak-specific bridge toggles use CLOAK_PLAYWRIGHT_MCP_*. Select a Pro Preview browser build before startup with --release-channel preview or CLOAK_PLAYWRIGHT_MCP_RELEASE_CHANNEL=preview; the default is stable.

The common variable table now lives in Configuration. That page also covers persistent profiles, validated context options, Chrome extensions, Streamable HTTP metadata, and HTTPS/auth options. See GeoIP Proxy Matching for regional proxy behavior, Humanized Input Behavior for interaction realism, and Recipes for task-focused configurations.

Version Compatibility

cloakbrowser-mcp@playwright/mcpCloakBrowserNode.jsPlatform
1.15.1^0.0.83^0.6.3`^22.13.0
1.15.0^0.0.83^0.6.3`^22.13.0
1.14.1^0.0.82^0.5.10`^22.13.0
1.14.0^0.0.82^0.5.10`^22.13.0
1.13.0^0.0.80^0.5.10`^22.13.0
1.12.0^0.0.79^0.5.7`^22.13.0
1.11.0^0.0.79^0.5.6`^22.13.0
1.10.0^0.0.78^0.5.3`^22.13.0
1.9.0^0.0.78^0.5.1`^22.13.0
1.8.0^0.0.78^0.4.10`^22.13.0
1.7.0^0.0.77^0.4.8>=22.12npm on Linux x64/arm64, macOS arm64/x64, Windows x64; Docker linux/amd64, linux/arm64
1.6.1^0.0.77^0.4.7>=22.12npm on Linux x64/arm64, macOS arm64/x64, Windows x64; Docker linux/amd64, linux/arm64
1.6.0^0.0.77^0.4.7>=22.12npm on Linux x64/arm64, macOS arm64/x64, Windows x64; Docker linux/amd64, linux/arm64
1.5.0^0.0.76^0.4.3>=22.12npm on Linux x64/arm64, macOS arm64/x64, Windows x64; Docker linux/amd64, linux/arm64
1.4.0^0.0.76^0.3.32>=22.12npm on Linux x64/arm64, macOS arm64/x64, Windows x64; Docker linux/amd64, linux/arm64
1.3.0^0.0.75^0.3.31>=20Docker linux/amd64, Node.js local
1.2.7^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.6^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.5^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.3^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.2^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.1^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.2.0^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.1.0^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.0.2^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.0.1^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local
1.0.0^0.0.75^0.3.30>=20Docker linux/amd64, Node.js local

See Version Compatibility for the maintained compatibility table.

Tools

The upstream Playwright MCP tool list is authoritative. This project does not reimplement or re-document upstream browser schemas in source code.

Local tools:

  • cloakbrowser_binary_info returns CloakBrowser package, platform, cache, and resolved binary data.
  • cloakbrowser_bridge_info returns bridge metadata, upstream package/version, and local tool names.

Development

bash
npm installnpm run buildnpm testnpm run docker:buildnpm run docker:smokenpm run server:validatenpm run bridge:compare -- cloakbrowser-mcp:dev --report bridge-parity-report.json

Documentation starts at docs/getting-started.md. Contributor material is grouped under docs/contributor-guide.md.

See test reporting for local Allure reports and combined CI matrix reports linked from pull requests.

Source: README.md at commit 2f3086f

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

5
  1. v1.15.1LatestOct 18, 2026
  2. v1.15.0Oct 18, 2026
  3. v1.14.1Sep 27, 2026
  4. v1.14.0Sep 25, 2026
  5. v1.13.0Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts