OPENCLAW AGENTS

Why Your OpenClaw Browser Keeps Getting CAPTCHAs

OpenClaw uses Playwright under the hood. Anti-bot systems detect CDP fingerprints and block your agent. GateSolve solves the CAPTCHA and returns a token so your agent can continue.

The Problem

OpenClaw's browser runs Chromium via Playwright. Sites with bot detection (Cloudflare, DataDome, PerimeterX) detect the automation in three layers:

  • 1. CDP detection: Runtime.Enable fires when Playwright connects. Anti-bot scripts catch this instantly.
  • 2. JavaScript injection: Playwright injects bindings (window.__playwright__). Property descriptor checks expose tampering.
  • 3. IP reputation: Datacenter IPs are flagged before the page even loads. VPS and cloud hosting get blocked at the ASN level.

Your agent fails silently — falling back to worse sources, cached pages, or hallucinated results.

The Fix

GateSolve uses Camoufox (a patched Firefox build) that bypasses CDP detection and fingerprinting. When your OpenClaw agent hits a CAPTCHA, it calls GateSolve, gets a valid token in 7-15 seconds, and injects it into the page. Your agent continues as if the CAPTCHA never existed.

MCP Server (Recommended for OpenClaw)

Add GateSolve as an MCP tool. Your OpenClaw agent gets a solve_captcha tool it can call whenever it encounters a CAPTCHA. Zero code changes.

# Add GateSolve to your OpenClaw MCP config
# In your openclaw config or mcp-servers.json:
{
  "mcpServers": {
    "gatesolve": {
      "command": "npx",
      "args": ["-y", "@gatesolve/mcp-server"],
      "env": {
        "GATESOLVE_API_KEY": "gs_your_key_here"
      }
    }
  }
}

# Your OpenClaw agent now has a solve_captcha tool
# It can solve Turnstile, reCAPTCHA, and hCaptcha automatically

Python SDK

If you prefer explicit control, use the Python SDK directly.

from gatesolve import GateSolve

solver = GateSolve(api_key="gs_your_key_here")

# When your OpenClaw agent hits a CAPTCHA:
result = solver.solve(
    type="cloudflare-turnstile",
    page_url="https://example.com/login",
    site_key="0x4AAAAAAA..."  # from page source
)

# Inject the token into the page form
print(f"Token: {result.token}")
print(f"Solved in: {result.solve_time}")
pip install gatesolve

Direct API

Works from any language. Submit a solve request, poll for the result.

# Direct API call — works from any language
curl -X POST https://gatesolve.dev/api/solve \
  -H "Authorization: Bearer gs_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "cloudflare-turnstile",
    "siteKey": "0x4AAAAAAA...",
    "pageUrl": "https://example.com"
  }'

# Returns: { "id": "...", "status": "pending", "poll": "..." }
# Poll the URL until status is "solved"

How It Works

1

Agent hits a CAPTCHA

Your OpenClaw browser navigates to a page protected by Cloudflare Turnstile, reCAPTCHA, or hCaptcha.

2

GateSolve solves it

Camoufox (patched Firefox) loads the page on residential infrastructure. Passes fingerprint and IP checks. Solves in 7-15 seconds.

3

Agent gets the token

GateSolve returns a valid CAPTCHA token. Your agent injects it into the form and continues the workflow.

Cloudflare Turnstile

Most common on modern sites. $0.02/solve.

reCAPTCHA v2/v3

Google reCAPTCHA support. $0.03/solve.

hCaptcha

Privacy-focused CAPTCHA. $0.03/solve.

Why GateSolve for OpenClaw Agents

✓

100 free solves

No credit card required. Get an API key and start immediately.

✓

MCP server

Listed in the official MCP Registry. Add as a tool in seconds.

✓

Async API

Submit and poll. Non-blocking. Optional webhook callbacks.

✓

Camoufox solver

Patched Firefox that passes CDP and fingerprint detection.

✓

Error taxonomy

correction_class tells your agent what to do on failure.

✓

Python SDK

pip install gatesolve. Three lines of code.

Stop Losing Tasks to CAPTCHAs

100 free solves. No credit card. Works with OpenClaw today.