Skip to content
VS Code

CloakBrowser MCP for VS Code

io.github.swimmwatch/cloakbrowser-mcp

Playwright MCP-compatible browser automation bridge for CloakBrowser Chromium.

client:VS Code transport:stdio runtime:npm

Install CloakBrowser MCP in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "playwright-mcp-browser-engine",
      "description": "PLAYWRIGHT_MCP_BROWSER_ENGINE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-headless",
      "description": "PLAYWRIGHT_MCP_HEADLESS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-output-dir",
      "description": "PLAYWRIGHT_MCP_OUTPUT_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-codegen",
      "description": "PLAYWRIGHT_MCP_CODEGEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-snapshot-boxes",
      "description": "PLAYWRIGHT_MCP_SNAPSHOT_BOXES",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-timeout-settle",
      "description": "PLAYWRIGHT_MCP_TIMEOUT_SETTLE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "playwright-mcp-user-data-dir",
      "description": "PLAYWRIGHT_MCP_USER_DATA_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloak-playwright-mcp-context-options",
      "description": "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloak-playwright-mcp-extension-paths",
      "description": "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloak-playwright-mcp-console-fallback",
      "description": "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloak-playwright-mcp-geoip-proxy-match",
      "description": "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloak-playwright-mcp-extra-args",
      "description": "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS",
      "password": true
    }
  ],
  "servers": {
    "cloakbrowser-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "cloakbrowser-mcp"
      ],
      "env": {
        "PLAYWRIGHT_MCP_BROWSER_ENGINE": "${input:playwright-mcp-browser-engine}",
        "PLAYWRIGHT_MCP_HEADLESS": "${input:playwright-mcp-headless}",
        "PLAYWRIGHT_MCP_OUTPUT_DIR": "${input:playwright-mcp-output-dir}",
        "PLAYWRIGHT_MCP_CODEGEN": "${input:playwright-mcp-codegen}",
        "PLAYWRIGHT_MCP_SNAPSHOT_BOXES": "${input:playwright-mcp-snapshot-boxes}",
        "PLAYWRIGHT_MCP_TIMEOUT_SETTLE": "${input:playwright-mcp-timeout-settle}",
        "PLAYWRIGHT_MCP_USER_DATA_DIR": "${input:playwright-mcp-user-data-dir}",
        "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS": "${input:cloak-playwright-mcp-context-options}",
        "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS": "${input:cloak-playwright-mcp-extension-paths}",
        "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK": "${input:cloak-playwright-mcp-console-fallback}",
        "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH": "${input:cloak-playwright-mcp-geoip-proxy-match}",
        "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS": "${input:cloak-playwright-mcp-extra-args}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

CloakBrowser MCP in other clients