mcp-stealth-browser
by AntonLi-PM
README.md
# ๐ MCP Stealth Browser (`mcp-stealth-browser`)
[](https://smithery.ai/server/@AntonLi-PM/mcp-stealth-browser)
[](https://github.com/AntonLi-PM/mcp-stealth-browser/releases)
[](https://opensource.org/licenses/MIT)
[](https://modelcontextprotocol.io/)
[](https://www.python.org/)
[](https://github.com/AntonLi-PM/mcp-stealth-browser)
[](https://github.com/AntonLi-PM/mcp-stealth-browser/pulls)
> ๐ก **Facing IP Bans, Zero-View Shadowbans, or Captcha Loops?**
> Need custom dedicated residential IP pools or enterprise setup assistance?
> ๐ **[Claim 1GB Free Residential Proxy Trial](https://ropond.com/)** | ๐ฌ **Telegram Support:** [@ip38888](https://t.me/ip38888) | โ๏ธ **Email:** [anton.li.pm@gmail.com](mailto:anton.li.pm@gmail.com) | ๐ **[Live Benchmark](https://antonli-pm.github.io/anti-bot-bypass-benchmark/)**
> โญ **Love this project? Please consider starring it on GitHub!** It helps keep the open-source residential IP anti-bot benchmark updated.
>
> ๐ฅ **Check Out Our High-Performance AI & Agentic Suite**:
> - ๐ค **[llm-web-grounding-proxy](https://github.com/AntonLi-PM/llm-web-grounding-proxy)**: Universal OpenAI reverse proxy injecting real-time search & citations.
> - ๐ง **[agentic-deep-researcher](https://github.com/AntonLi-PM/agentic-deep-researcher)**: Autonomous AI deep researcher with recursive multi-hop scraping.
> - ๐ **[mcp-stealth-browser](https://github.com/AntonLi-PM/mcp-stealth-browser)**: FastMCP 2.x stealth browser server for Claude Desktop, Cursor & Windsurf.
> - ๐ก๏ธ **[antidetect-proxy-router](https://github.com/AntonLi-PM/antidetect-proxy-router)**: Profile-isolated residential proxy router for Playwright & Camoufox.
> **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.
---
## ๐๏ธ Architecture Overview
```mermaid
flowchart LR
A[LLM Agent<br/>Claude / Cursor / Cline] -->|JSON-RPC 2.0| B(MCP Stealth Server)
B -->|Task Router| C{Engine Dispatcher}
C -->|Tier 1: Fast Path <400ms| D[TLS Impersonator<br/>curl_cffi / JA3 / JA4]
C -->|Tier 2: Challenge Escalation| E[Stealth Playwright<br/>CDP Hooks + Turnstile Solver]
D --> F[Sticky Residential Proxy Router<br/>Ropond Proxy Cloud]
E --> F
F -->|Clean IP Lease| G((Target Website))
G --> H[Token Optimizer Engine<br/>HTML to Semantic Markdown]
H -->|80-95% Token Savings| A
```
---
## ๐ Feature Comparison Matrix
| Capability | `mcp-stealth-browser` | `@modelcontextprotocol/server-fetch` | `playwright-mcp` | `puppeteer-mcp` |
| :--- | :---: | :---: | :---: | :---: |
| **Cloudflare Turnstile Bypass** | โ
**Native (<400ms / Dual-Engine)** | โ (Throws 403) | โ ๏ธ (Requires manual script) | โ (Blocked) |
| **DataDome / Akamai Evasion** | โ
**JA3/JA4 TLS Fingerprint** | โ (No impersonation) | โ (Detectable CDP) | โ (Detectable) |
| **Multi-Engine Web Search** | โ
**Built-in (Zero API Keys)** | โ (None) | โ (None) | โ (None) |
| **Context Token Optimization** | โ
**80-95% Compression (Markdown)** | โ ๏ธ (Basic Markdownify) | โ (Raw DOM dump) | โ (Raw dump) |
| **Sticky Residential Proxy Pool** | โ
**Auto-Rotation on 403/429** | โ (Static proxy only) | โ (None) | โ (None) |
| **Response Latency** | โก **< 400ms** (TLS tier) | 1 - 3s | 5 - 12s | 5 - 15s |
| **1-Click Install** | ๐ **Smithery (`npx`) / `uvx`** | `uvx` | `npx` | `npx` |
---
## โก 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**.
---
## ๐ ๏ธ 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
### 0. 1-Click Install via Smithery (Recommended)
To automatically install for **Claude Desktop**, run:
```bash
npx -y @smithery/cli install @AntonLi-PM/mcp-stealth-browser --client claude
```
To install for **Cursor**, run:
```bash
npx -y @smithery/cli install @AntonLi-PM/mcp-stealth-browser --client cursor
```
---
### 1. Manual Install via pip or uv
```bash
pip install git+https://github.com/AntonLi-PM/mcp-stealth-browser.git
# 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`
```json
{
"mcpServers": {
"stealth-browser": {
"command": "uvx",
"args": ["--from", "git+https://github.com/AntonLi-PM/mcp-stealth-browser.git", "mcp-stealth-browser"],
"env": {
"ROTA_PROXY_URL": "http://user:pass@proxy.ropond.com:8080"
}
}
}
}
```
### 3. Configure in Cursor IDE
Add to `.cursor/mcp.json`:
```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 (claim a **1GB Free Trial** at [Ropond Proxy Cloud](https://ropond.com/)).
2. Set the environment variable:
```bash
export ROTA_PROXY_URL="http://customer-xyz:pass@gw.ropond.com:8080"
```
3. `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:
```bash
# 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](https://github.com/AntonLi-PM/mcp-stealth-browser/issues).
## ๐ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
## ๐งญ Related Open-Source Tools in Our Suite
Explore our complete production-grade anti-bot & matrix marketing open-source ecosystem:
| Category | Repository | Description |
| :--- | :--- | :--- |
| **Global Matrix** | [`omni-social-marketing-cloud`](https://github.com/AntonLi-PM/omni-social-marketing-cloud) | 12-platform multi-account cloud control with 1:1 sticky residential IP mesh |
| **Telegram Growth** | [`telegram-cloud-controller`](https://github.com/AntonLi-PM/telegram-cloud-controller) | Multi-account Telegram fleet automation, warmup engine & lead harvester |
| **WhatsApp Marketing**| [`whatsapp-marketing-cloud`](https://github.com/AntonLi-PM/whatsapp-marketing-cloud) | Multi-account WhatsApp Web cloud sender with session residential routing |
| **TikTok Automation** | [`tiktok-uploader-stealth`](https://github.com/AntonLi-PM/tiktok-uploader-stealth) | Anti-detect TikTok video batch uploader with isolated proxy sessions |
| **E-Commerce Scraper**| [`ecommerce-intelligence-scraper`](https://github.com/AntonLi-PM/ecommerce-intelligence-scraper) | Competitor price monitor & review scraper for Amazon, Shopee & Shopify |
| **AI Deep Research** | [`agentic-deep-researcher`](https://github.com/AntonLi-PM/agentic-deep-researcher) | Autonomous Deep Research engine utilizing heavy multi-hop residential scraping |
| **AI Realtime Search**| [`deepseek-r1-websearch`](https://github.com/AntonLi-PM/deepseek-r1-websearch) | Real-time web search API for DeepSeek-R1, Ollama & Open-WebUI |
| **MCP Browser Tool** | [`mcp-stealth-browser`](https://github.com/AntonLi-PM/mcp-stealth-browser) | FastMCP 2.x stealth browsing server for Claude Desktop, Cursor & Windsurf |
| **Anti-Bot Gateway** | [`searxng-proxy-shield`](https://github.com/AntonLi-PM/searxng-proxy-shield) | Rotating residential proxy shield for SearXNG, Perplexica & Open-WebUI |
| **Profile Router** | [`antidetect-proxy-router`](https://github.com/AntonLi-PM/antidetect-proxy-router) | Profile-isolated residential proxy router for AdsPower, BitBrowser & Playwright |
| **Turnstile Bypass** | [`cloudflare-bypass-residential-scraper`](https://github.com/AntonLi-PM/cloudflare-bypass-residential-scraper) | Turnstile & DataDome bypass scraper with residential session harvesting |
| **Live Benchmark** | [`anti-bot-bypass-benchmark`](https://github.com/AntonLi-PM/anti-bot-bypass-benchmark) | Empirical anti-bot benchmark comparing datacenter vs residential proxy yields |TDQS
A4/5.0
Scored across 4 tools
Disambiguation5/5
Each tool has a distinct purpose: fetching a URL, searching the web, checking proxy status, and rotating proxies. No overlap or ambiguity.
Naming Consistency5/5
All tool names follow a consistent verb_noun pattern with underscores (stealth_fetch, stealth_search, proxy_status, rotate_proxy), maintaining uniformity.
Tool Count5/5
Four tools is well-scoped for a stealth browsing/proxy management server, covering core actions without unnecessary bloat or gaps.
Completeness4/5
The tool set covers fetching, searching, and proxy lifecycle management, but could potentially include a method for clearing session data or managing more proxy options. Still, it is largely complete for its stated purpose.
Maintenance
ActivityMaintained
ResponsivenessNo issues