{ "name": "cloakbrowser-mcp", "version": "1.15.1", "description": "Playwright MCP-compatible browser automation bridge for CloakBrowser Chromium.", "mcpName": "io.github.swimmwatch/cloakbrowser-mcp", "type": "module", "packageManager": "npm@11.19.0", "license": "MIT", "author": "swimmwatch", "sideEffects": false, "engines": { "node": "^22.13.0 || >=24.0.0" }, "exports": { "./package.json": "./package.json" }, "imports": { "#src/*": { "development": "./src/*.ts", "types": "./src/*.ts", "default": "./dist/*.js" }, "#scripts/*": "./scripts/*.mjs", "#scripts/testing/*": "./scripts/testing/*.ts" }, "bin": { "cloakbrowser-mcp": "dist/cli.js" }, "files": [ "dist", "README.md", "LICENSE", "server.json" ], "publishConfig": { "access": "public", "registry": "https://registry.npmjs.org/" }, "scripts": { "build": "tsc -p tsconfig.build.json && node scripts/copy-runtime-assets.mjs", "typecheck": "tsc --noEmit", "clean": "node -e \"const fs=require('node:fs');fs.rmSync('dist',{recursive:true,force:true});fs.rmSync('coverage',{recursive:true,force:true})\"", "test": "vitest run", "test:watch": "vitest", "test:unit": "vitest run tests/unit", "test:integration": "vitest run tests/integration", "test:e2e": "npm run build && npm run test:e2e:run && npm run test:e2e:playwright-console:run", "test:e2e:run": "vitest run --config vitest.e2e.config.ts", "test:e2e:cdp": "npm run build && npm run test:e2e:cdp:run", "test:e2e:cdp:run": "vitest run --config vitest.distribution-e2e.config.mjs tests/e2e/cdp-access.manual.ts", "test:e2e:cdp:docker": "npm run docker:build && npm run test:e2e:cdp:docker:run", "test:e2e:cdp:docker:run": "vitest run --config vitest.distribution-e2e.config.mjs tests/e2e/cdp-docker.manual.ts", "test:e2e:npm-package": "npm run build && vitest run --config vitest.distribution-e2e.config.mjs tests/e2e/npm-package.manual.ts", "test:e2e:docker": "npm run docker:build && npm run test:e2e:docker:run", "test:e2e:docker:run": "vitest run --config vitest.distribution-e2e.config.mjs tests/e2e/docker-image.manual.ts", "test:e2e:playwright-console": "npm run build && npm run test:e2e:playwright-console:run", "test:e2e:playwright-console:run": "vitest run --config vitest.distribution-e2e.config.mjs tests/e2e/playwright-console.manual.ts", "test:e2e:distributions": "npm run test:e2e:npm-package && npm run test:e2e:docker", "test:coverage": "vitest run --coverage", "start": "node dist/cli.js", "dev": "node --conditions development --import tsx src/cli.ts", "lint": "eslint .", "lint:fix": "eslint . --fix", "format": "prettier --write .", "format:check": "prettier --check .", "video:demo:render": "npm --prefix tools/video/30-second-demo run render", "video:demo:webp": "npm --prefix tools/video/30-second-demo run render:webp", "docs:install": "python3 -m venv .venv-docs && .venv-docs/bin/pip install -r docs/requirements.txt", "docs:assets": "node scripts/generate-brand-assets.mjs", "docs:cli": "node --conditions development --import tsx scripts/generate-cli-docs.ts", "docs:compatibility": "node scripts/generate-version-compatibility.mjs", "docs:compatibility:check": "node scripts/generate-version-compatibility.mjs --check", "docs:serve": ".venv-docs/bin/mkdocs serve", "docs:metadata:check": ".venv-docs/bin/python -m unittest discover -s tests/docs", "docs:build": "npm run docs:metadata:check && npm run docs:build:site", "docs:seo:validate": "node scripts/validate-docs-seo.mjs", "version:apply": "node scripts/apply-release-version.mjs", "server:validate": "node scripts/validate-server-json.mjs", "registry:check": "node scripts/check-github-mcp-registry.mjs", "registry:check:strict": "node scripts/check-github-mcp-registry.mjs --strict", "audit:prod": "npm audit --omit=dev --audit-level=high", "package:verify": "npm run build && npm run server:validate && node scripts/verify-npm-package.mjs", "docker:build": "docker buildx build --load -t cloakbrowser-mcp:dev --build-arg RELEASE_VERSION=$npm_package_version --build-arg RELEASE_VERSION_TAG=v$npm_package_version .", "docker:lint": "docker run --rm -v \"$PWD:/repo:ro\" --workdir /repo docker.io/hadolint/hadolint:v2.14.0@sha256:27086352fd5e1907ea2b934eb1023f217c5ae087992eb59fde121dce9c9ff21e /bin/hadolint Dockerfile", "docker:smoke": "docker run --rm cloakbrowser-mcp:dev --help", "bridge:compare": "node scripts/compare-playwright-mcp-bridge.mjs", "upstream:check": "npm run upstream:check:playwright && npm run upstream:check:cloakbrowser", "upstream:check:playwright": "node scripts/check-playwright-mcp-updates.mjs", "upstream:check:cloakbrowser": "node scripts/check-cloakbrowser-updates.mjs", "check": "npm run check:static && npm run build && npm test && npm run test:e2e:run", "check:ci": "npm run check && npm run audit:prod && npm run test:coverage", "docs:translations": "node scripts/update-doc-translations.mjs", "docs:translations:check": "node scripts/update-doc-translations.mjs --check", "test:report": "node scripts/test-report.mjs collect", "test:report:generate": "node scripts/test-report.mjs generate", "test:report:open": "node scripts/test-report.mjs open", "test:report:merge": "node scripts/test-report.mjs merge", "test:report:probe": "node scripts/test-report.mjs probe", "check:static": "npm run typecheck && npm run lint && npm run format:check && npm run docs:compatibility:check && npm run docs:translations:check && npm run server:validate", "package:pack": "npm run build && npm run server:validate && node scripts/verify-npm-package.mjs --pack-only", "docs:build:site": ".venv-docs/bin/mkdocs build --strict" }, "dependencies": { "@modelcontextprotocol/sdk": "^1.32.1", "@playwright/mcp": "^0.0.83", "cloakbrowser": "^0.6.3", "commander": "^15.0.0", "mmdb-lib": "^3.0.3", "pino": "^10.4.0", "playwright-core": "1.64.1", "socks-proxy-agent": "^10.1.0", "ws": "8.22.0" }, "devDependencies": { "@eslint/js": "^10.0.1", "@types/node": "^26.6.5", "@types/ws": "^8.18.2", "@typescript/native": "npm:typescript@^7.0.2", "@vitest/coverage-v8": "^5.0.5", "@vitest/eslint-plugin": "^1.6.27", "ajv": "^8.20.0", "ajv-formats": "^3.0.1", "allure": "3.21.0", "eslint": "^10.12.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-import-x": "^4.17.1", "eslint-plugin-jsdoc": "^65.3.6", "eslint-plugin-n": "^18.4.1", "eslint-plugin-no-secrets": "^2.3.3", "eslint-plugin-perfectionist": "^5.12.1", "eslint-plugin-promise": "^7.3.0", "eslint-plugin-regexp": "^3.2.0", "eslint-plugin-sonarjs": "^4.2.2", "fast-check": "^4.9.0", "playwright": "1.64.1", "prettier": "^3.9.10", "tsx": "^4.23.13", "typescript": "npm:@typescript/typescript6@^6.0.2", "typescript-eslint": "^8.71.2", "vitest": "^5.0.5" }, "overrides": { "@hono/node-server": "2.1.5", "vite": "8.3.4", "esbuild": "0.28.2", "@typescript-eslint/utils": "8.71.2", "fast-uri": "3.1.8", "hono": "4.13.13", "ip-address": "10.7.4", "brace-expansion": "5.0.12" }, "keywords": [ "mcp", "model-context-protocol", "cloakbrowser", "browser-automation", "playwright", "chromium", "ai-agent" ], "repository": { "type": "git", "url": "git+https://github.com/swimmwatch/cloakbrowser-mcp.git" }, "homepage": "https://swimmwatch.github.io/cloakbrowser-mcp/", "bugs": { "url": "https://github.com/swimmwatch/cloakbrowser-mcp/issues" } }