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