Skip to main content
Glama
AntonLi-PM

mcp-stealth-browser

by AntonLi-PM

๐Ÿš€ MCP Stealth Browser (mcp-stealth-browser)

GitHub Release License: MIT MCP Standard Python 3.10+ Cloudflare Bypass PRs Welcome

The High-Performance Stealth Web Browsing & Search MCP Server for Claude Desktop, Cursor, Windsurf & Cline.
Bypasses Cloudflare Turnstile, anti-bot shields, and JavaScript SPAs with dual-engine TLS/Playwright impersonation, dynamic residential proxy rotation, and token-optimized semantic Markdown extraction.


โšก Why mcp-stealth-browser?

Standard web fetch and browser MCP servers (@modelcontextprotocol/server-fetch, playwright-mcp) fail on 70%+ of modern websites:

  • โŒ Cloudflare & Anti-Bot Blocking: Hit with 403 Forbidden or Just a moment... CAPTCHA loops.

  • โŒ Token Window Explosion: Dump raw HTML with bloated scripts, SVGs, and cookie modals, wasting 100k+ tokens.

  • โŒ IP Rate-Limits: Repeated queries from data center IPs get permanently blocked.

  • โŒ No Native Multi-Engine Web Search: Requires expensive Bing/Google API keys to search the web.

๐ŸŒŸ What mcp-stealth-browser solves:

  • โœ… Dual-Engine Cascade: Fast TLS/JA4 browser impersonation (<400ms) with auto-escalation to headless Playwright when Cloudflare Turnstile or DataDome is detected.

  • โœ… Built-in Real-Time Web Search: stealth_search crawls Google & DuckDuckGo simultaneously with zero API keys.

  • โœ… Token-Optimized Markdown: Strips navigation, headers, footers, and scripts, compressing content by 80-95% while preserving tables, headings, and code snippets.

  • โœ… Sticky Residential Proxy Pool: Dynamic residential proxy rotation with 10-30 minute sticky IP sessions and automatic block recovery.

  • โœ… Universal 1-Click Integration: Drop-in configuration for Claude Desktop, Cursor IDE, Windsurf, and Cline.


Related MCP server: Stealth Browser MCP Server

๐Ÿ› ๏ธ MCP Tools Exposed

Tool Name

Parameters

Description

stealth_fetch

url, bypass_challenge=True, session_id

Fetches any URL bypassing Cloudflare Turnstile, returns clean semantic Markdown with token estimation.

stealth_search

query, num_results=5, session_id

Multi-engine real-time web search (DuckDuckGo + Google) returning clean ranked citations with zero API keys.

proxy_status

none

Returns proxy pool health, active sticky sessions, and residential IP provider status.

rotate_proxy

session_id

Forces an immediate IP rotation for a specific sticky session.


๐Ÿ“ฆ Quick Start & Configuration

1. Install via pip or uv

pip install mcp-stealth-browser
# Optional: Install Playwright for heavy Turnstile challenge solving
playwright install chromium

2. Configure in Claude Desktop

Add to your claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "stealth-browser": {
      "command": "uvx",
      "args": ["mcp-stealth-browser"],
      "env": {
        "ROTA_PROXY_URL": "http://user:pass@proxy.ropond.com:8080"
      }
    }
  }
}

3. Configure in Cursor IDE

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "stealth-browser": {
      "command": "python",
      "args": ["-m", "mcp_stealth_browser"],
      "env": {
        "ROTA_PROXY_URL": "http://user:pass@proxy.ropond.com:8080"
      }
    }
  }
}

๐ŸŒ Residential Proxy Setup (High-Volume Scraping)

For high-concurrency scraping without IP blocks, mcp-stealth-browser natively integrates with dynamic residential proxies:

  1. Obtain a residential proxy gateway (e.g. claim a 1GB Free Trial at Ropond Proxy Cloud).

  2. Set the environment variable:

export ROTA_PROXY_URL="http://customer-xyz:pass@gw.ropond.com:8080"
  1. mcp-stealth-browser will automatically create sticky sessions per agent conversation and rotate automatically if a 403 or 429 block is encountered.


๐Ÿงช Testing Locally

You can test the search and fetch capabilities directly from CLI:

# Test multi-engine search
python -m mcp_stealth_browser.cli --test-search "DeepSeek R1 reasoning architecture"

# Test stealth fetch on a webpage
python -m mcp_stealth_browser.cli --test-fetch "https://news.ycombinator.com"

# Check proxy pool health
python -m mcp_stealth_browser.cli --status

๐Ÿค Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page.

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables undetectable web scraping and browser automation for AI agents with 84 tools including stealth navigation, element extraction, network interception, and auto cookie consent dismissal. Bypasses anti-bot systems like Cloudflare and DataDome while providing LLM-ready markdown output and full Chrome DevTools Protocol access.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides stealth web browsing using dual browser engines (Chromium and Firefox) with automatic bot-detection bypass, enabling AI agents to browse, interact, and extract content from websites without being blocked.
    1
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AntonLi-PM/mcp-stealth-browser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server