Labsco
swimmwatch logo

CloakBrowser MCP

β˜… 21

from swimmwatch

CloakBrowser MCP server for AI agents: Playwright-powered browsing, clean tool forwarding, Docker support, and multi-session HTTP transport.

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedFreeQuick setup

cloakbrowser-mcp

<p align="center"> <img src="docs/assets/brand/logo-wordmark.svg" alt="CloakBrowser MCP" width="640" /> </p>

CI codecov Actionlint CodeQL Dependency Review OpenSSF Scorecard Zizmor Release GitHub Release MCP Registry cloakbrowser-mcp MCP server Awesome MCP Servers npm npm downloads Docker Hub pulls Docker image Node.js >=22.12 TypeScript strict Cross-platform Available on CodeGuilds MCP Server MCP transports Docker License: MIT

cloakbrowser-mcp is a Model Context Protocol browser automation server that runs upstream @playwright/mcp with the CloakBrowser Chromium binary. It gives MCP clients Playwright-compatible browser tools while keeping the upstream tool contracts unchanged.

Documentation: swimmwatch.github.io/cloakbrowser-mcp

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;
  • 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 Node.js 22-26. Docker images are built and smoke-tested for linux/amd64 and linux/arm64.

Add To MCP Clients

Codex CLI

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

Claude Code

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

GitHub Copilot In VS Code

{
  "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:

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

Docker-backed stdio

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

Already-running Streamable HTTP server

npx -y cloakbrowser-mcp@latest --transport streamable-http --http-port 3000
codex mcp add cloakbrowser --url http://127.0.0.1:3000/mcp
claude 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:

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.

Version Compatibility

<!-- compatibility-table:start -->
cloakbrowser-mcp@playwright/mcpCloakBrowserNode.jsPlatform
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
<!-- compatibility-table:end -->

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

npm install
npm run build
npm test
npm run docker:build
npm run docker:smoke
npm run server:validate
npm 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.