inspect_visual_challenge
Detect reCAPTCHA v2 image-grid challenges on the active page, capture a screenshot, and return tile metadata for AI-driven visual analysis.
Instructions
Detect a reCAPTCHA v2 image-grid challenge on the active page, screenshot it, and return tile metadata. The AI client (Claude / Cursor / Gemini — multimodal) uses its own vision to identify which tiles to click, then calls solve_visual_challenge with the selected indices. Requires QA_VISUAL_CHALLENGE_CONSENT=true at the server level; without it, returns a structured consent_required error carrying the full legal disclaimer.
Returns: {challenge_id, screenshot_base64, challenge_text, grid_layout ('3x3'|'4x4'), tile_count, tiles[{index, viewport_x, viewport_y, w, h}], expires_at, fingerprint}.
Error shapes: consent_required / unauthorized_domain / forbidden_domain / no_challenge_present / no_active_page / detection_failed — same {error, retryable, hint} envelope as every other runner. Scope: reCAPTCHA v2 image-grid only in v0.7.0 (hCaptcha → v0.7.1; v3 / Turnstile permanently out of scope). Pair with solve_visual_challenge — this tool alone never clicks anything.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page_id | No | Reserved for future multi-page sessions; ignored in v0.7.0 (the tool operates on the active Playwright page handed in by the runner). | |
| selector | No | Optional override for the iframe selector. Default auto-detection tries `iframe[title*="recaptcha challenge"]` (English UI) then `iframe[src*="recaptcha/api2/bframe"]` (URL pattern, locale-agnostic). |