search_page

MCP tool from MCP Stealth Chrome by RobithYusuf

Grep the current page's text (zero-LLM, instant)

How to use it

Project documentation lists search_page for the MCP Stealth Chrome MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), then check which tools your installed version makes available. Tool availability can depend on configuration and credentials. A server handshake does not verify this tool’s behavior. See the full listing for setup details.

Install MCP Stealth Chrome

$claude mcp add stealth-chrome -- uvx mcp-stealth-chrome@latest
FULL MCP STEALTH CHROME LISTING

Other tools in MCP Stealth Chrome (38)

auth_capture

Intercept the next N requests matching a URL pattern and return their headers (Authorization, Cookie, X-CSRF-) — for SPAs that hold bearer tokens in JS memory

click_and_wait

Click + observe one of navigation / url / text / selector / request / networkidle. Distinguishes real submit from silent invalid-form click

click_at_corner

Click top-left/right/bottom-left/right of element

click_at_image

Find image + click its center

click_element_offset

Click at % position inside element (not center)

click_turnstile

CF Turnstile bypass for embed widgets + template-match fallback

deep_research

search → fetch top-N sources → markdown + citations, in one call

describe_page

Compact JSON summary (title/url/headings/fields/actions/errors/navigation) — ~10× fewer tokens than accessibilitysnapshot. waitstable=True waits for SPA hydration via MutationObserver

detect_and_bypass

One-shot: detect anti-bot wall (CF / DataDome / PX / Akamai / Imperva / Kasada) and apply best bypass we have

detect_anti_bot

Identify CF/DataDome/PerimeterX/Kasada/Imperva on current page

dialog_auto_handle

Persistent native-dialog handler with type filter (alert / confirm / prompt / beforeunload). Update action without re-arming. Idempotent per tab

export_curl

Turn a captured request into a runnable curl and an httprequest(impersonate='chrome') call. The second form is the point: plain curl replays with a curl TLS fingerprint, which anti-bot systems flag even when every header matches

find_by_image

OpenCV template match → coordinates

fingerprint_audit

Audit this browser's OWN fingerprint for the leaks detectors read — in-page, nothing leaves the machine. Weights cross-field consistency (a Windows UA on a MacIntel platform) and states what it cannot see from inside a page (TLS/JA3, IP-vs-timezone)

fingerprint_rotate

UA/lang/platform/timezone via CDP

form_introspect

Per-field detail (label, framework binding react/vue/solid/lit, validation state, pattern/length constraints, aria-invalid)

github_read

Repo / README / issues / releases via GitHub REST API (pure HTTP)

http_request

TLS-perfect HTTP via curlcffi (chrome/firefox/safari impersonation)

http_request_with_session

Authenticated curlcffi request that piggybacks on browser cookies + auto-extracts most recent same-host bearer from networkindex

http_session_cookies

Inspect which browser cookies match a URL

intercept_log

What was seen, plus whether interception is still active — an empty log cannot be mistaken for "the page sent nothing"

intercept_start

Pause matching requests and observe / cancel / mock them at the CDP layer — catches XHR and anything the page captured before your script ran, which patching window.fetch cannot

intercept_stop

End it early; it also disables itself on a deadline so a forgotten intercept cannot wedge the page

mouse_drift

Random Bezier wandering (pass behavioral ML)

paste_text

Full paste-event sequence (ClipboardEvent + DataTransfer + beforeinput inputType:'insertFromPaste') for SolidJS/Svelte 5/Qwik forms that ignore plain dispatchEvent('input')

scrape_markdown

One URL → clean LLM-ready markdown (stdlib, ~70–98% smaller than raw HTML)

session_warmup

Natural browsing pattern (homepage/referer/scroll) before target

smart_fetch

HTTP-first; auto-escalates to the stealth browser only when the request is blocked

smart_fill

Fill form by label text (fuzzy match: exact > prefix > substring > token); native value setter for React/Vue. Returns didyoumean candidates on miss

social_digest

Structured, account-independent Reddit community digest (votes/comments/age)

solve_captcha

CapSolver API — Turnstile/reCAPTCHA/hCaptcha

solve_recaptcha_ai

Vision LLM picks matching tiles — solve image challenges (auto-clicks anchor checkbox in v0.2.10+)

verify_cf

Cloudflare checkbox via OpenCV template match

vision_locate

NL → element coordinates: "the red Create button at bottom right" (optional click=True)

wait_for_request

Block until a request matching urlpattern is observed (+ optional method filter, + optional response wait) — replaces setTimeout polling

web_search

SERP search with no browser and no API key (Bing default, Brave/DuckDuckGo/Exa optional) → {title,url,snippet}

workflow_run

Sequential tool runner with resumable startat index and stoponerror. Failure response includes failurecontext and resumewith hint

youtube_read

Video metadata + transcript (native timedtext, yt-dlp fallback)