browser_launch
Launch a stealth Chrome browser with anti-detection features, including automatic Cloudflare and Turnstile challenge solving. Customize proxies, user agents, viewport, and reuse persistent profiles for automated browsing tasks.
Instructions
Launch stealth Chrome via nodriver. Creates persistent profile by default.
Args:
url: initial URL to load
headless: run without UI (many sites detect headless — prefer False)
proxy: "http://user:pass@host:port" or "socks5://host:port"
user_agent: override UA string
window_width, window_height: viewport size
persistent: reuse profile at ~/.mcp-stealth/profile
lang: browser language
extra_args: additional Chromium flags
storage_state_path: load cookies/localStorage from JSON before first nav
testing_mode: 2-5× faster startup+nav for perf/regression testing —
disables image loading, background throttling dampers, translate,
notifications, media autoplay. WARNING: reduces stealth — not for
anti-bot work (sites can detect missing images as automation signal).
auto_verify: if True (default), automatically detect Cloudflare /
Turnstile challenges after the initial load and dispatch a
CDP-level click on the checkbox. Caps at 2 attempts ~6s total —
never loops. Set False to opt out.
user_data_dir: launch Chrome against an EXISTING user profile root
(e.g. "~/Library/Application Support/Google/Chrome"). Overrides
persistent + the default MCP profile. The target Chrome instance
(if any) MUST be closed first — locked profiles are detected
upfront and refused with the lock-holder PID. Supports ~ expansion.
profile_directory: when paired with user_data_dir, picks a sub-profile
inside it (e.g. "Default", "Profile 21"). Without this, Chrome
uses "Default". Helpful to drive a specific persona without
cloning the profile. Use list_chrome_profiles to enumerate.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | about:blank | |
| headless | No | ||
| proxy | No | ||
| user_agent | No | ||
| window_width | No | ||
| window_height | No | ||
| persistent | No | ||
| lang | No | en-US | |
| extra_args | No | ||
| storage_state_path | No | ||
| testing_mode | No | ||
| auto_verify | No | ||
| user_data_dir | No | ||
| profile_directory | No |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |