# capmonster-mcp-patchright

Fork of mcp-patchright that adds a per-call world:'main' option to browser_evaluate / browser_run_code_unsafe, so page-defined window globals are visible and callable. Defaults to Patchright's isolated stealth world; opt into main only when you need it. E

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 1.1.3
- **Author:** Unknown
- **License:** MIT
- **npm:** capmonster-mcp-patchright
- **Source:** https://github.com/CapMonsterCloud/capmonster-mcp-patchright
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 2 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-09-19T17:58:54.898Z
- **Version scanned:** 1.1.3
- **CVEs:** none found by OSV at scan time

## Tools

40 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `browser_start` — Start a browser session. Defaults to patchright chromium headed Chrome with a persistent profile.
- `browser_status` — Return current browser status.
- `browser_navigate` — Navigate the active page to a URL.
- `browser_new_page` — Open a new page/tab and make it active. Optionally navigate to a URL.
- `browser_pages` — List open pages/tabs with ids, active state, URL, and title.
- `browser_switch_page` — Switch the active page/tab by pageId from browser_pages.
- `browser_close_page` — Close a page/tab by pageId, or the active page if omitted.
- `browser_snapshot` — Return a distilled AI-oriented aria snapshot (verbose /url lines dropped and data: URLs collapsed to save tokens). Use [ref=eN] values with browser_click/fill/t
- `browser_find` — Search the current page's aria snapshot for text or a regex. Returns matching nodes with their [ref] and a few lines of surrounding context — cheaper than a ful
- `browser_take_screenshot` — Take a screenshot. Returns base64 if path is omitted.
- `browser_click` — Click an element by CSS selector or aria ref from browser_snapshot.
- `browser_fill` — Fill an input by CSS selector or aria ref from browser_snapshot.
- `browser_type` — Type text into an element (CSS selector or aria ref) with human-like input: real per-key events, real Shift keyDown/up for capitals & symbols, variable dwell an
- `browser_hover` — Hover an element by CSS selector or aria ref from browser_snapshot.
- `browser_press_key` — Press a keyboard key, optionally focused on a selector or aria ref first.
- `browser_wait_for` — Wait for time or for selector/ref state. If no selector/ref, waits timeout milliseconds.
- `browser_evaluate`
- `browser_fingerprint_check` — Collect browser fingerprint diagnostics from the active page.
- `browser_navigate_back` — Navigate back in browser history.
- `browser_select_option` — Select options from a <select> element by CSS selector or aria ref.
- `browser_handle_dialog` — Accept or dismiss a JavaScript dialog (alert / confirm / prompt).
- `browser_file_upload` — Upload files to a <input type=file> by CSS selector or aria ref.
- `browser_network_requests` — List captured network requests. Set activeOnly=true for in-flight only.
- `browser_network_request` — Get details for a single network request by stable id from browser_network_requests. Legacy zero-based index is also accepted.
- `browser_console_messages` — List captured console messages (log / warn / error etc.).
- `browser_resize` — Resize the active page viewport.
- `browser_drag` — Drag an element from source to target by CSS selector or aria ref.
- `browser_fill_form` — Fill multiple form fields at once. Each field needs selector or ref, and value.
- `browser_run_code_unsafe` — Execute arbitrary JavaScript in page context. Prefer browser_evaluate when possible. Runs in the isolated stealth world by default; set world:'main' to run in t
- `browser_add_init_script`
- `browser_network_state_set` — Set network state: pass offline=true to simulate offline, offline=false to restore connectivity.
- `browser_api_request` — Make an HTTP request reusing the browser session's cookies/storage (authenticated API calls without re-login). Returns status, headers, and body.
- `browser_get_visible_text` — Get the visible text (document.body.innerText) of the active page. Lighter than a full aria snapshot.
- `browser_get_visible_html` — Get page HTML, optionally scoped to a selector. Strips script/style/svg by default for token efficiency.
- `browser_iframe_click` — Shorthand for clicking inside an iframe. (Most tools now accept a frameSelector directly — prefer browser_click with frameSelector.)
- `browser_iframe_fill` — Shorthand for filling inside an iframe. (Most tools now accept a frameSelector directly — prefer browser_fill with frameSelector.)
- `browser_route_block` — Block requests by resource type and/or URL pattern (e.g. block images/fonts/media to speed up loads and shrink fingerprint surface). Applies to all pages in the
- `browser_route_mock` — Mock matching requests with a canned response (fulfill). Useful for stubbing APIs or bypassing endpoints.
- `browser_route_clear` — Remove all active block/mock routes.
- `browser_storage_save` — Export current session (cookies + localStorage) as a Playwright storageState. Saves to path, or returns the state JSON if path omitted.

## Install

**Verdict: review** — Installable, but 1 thing to check first: No publisher has proved control of this listing; it is indexed, not vouched for.
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"capmonster-mcp-patchright\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"capmonster-mcp-patchright\"\n      ]\n    }\n  }\n}"
```

## Blast radius

Moderate to extensive — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: mutates data; runs on your machine.
- Floor 30, ceiling 54 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/capmonster-mcp-patchright
- Install plan: https://forgeregistry.com/api/v1/packages/capmonster-mcp-patchright/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/capmonster-mcp-patchright
- HTML page: https://forgeregistry.com/registry/capmonster-mcp-patchright
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
