
Stealth Browser MCP
Enables AI agents to perform undetectable browser automation that bypasses Cloudflare, antibots, and social media blocks. Provides 105 tools for element extraction, network debugging, and real-world web scraping with a 98.7% success rate on protected sites.
README
<div align="center">
<img src="media/UndetectedStealthBrowser.png" alt="Stealth Browser MCP" width="200"/>
Stealth Browser MCP
🚀 The ONLY browser automation that bypasses Cloudflare, antibots, and social media blocks
</div>
Supercharge any MCP-compatible AI agent with undetectable, real-browser automation. No CAPTCHAs. No blocks. Just results.
⚡ 30-second setup • 🛡️ Undetectable by design • 🏆 98.7% success rate on protected sites • 🕵️ Full network debugging via AI chat
Give your AI agent real browser superpowers: access Cloudflare sites, extract any UI, and intercept network traffic — from inside your chat.
🎥 See It In Action
<div align="center"> <img src="media/showcase-demo-full.gif" alt="Stealth Browser MCP Demo" width="800" style="border-radius: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.15);"> <br><br> <a href="media/Showcase%20Stealth%20Browser%20Mcp.mp4" download> <img src="https://img.shields.io/badge/📹-Watch%20HD%20Video-red?style=for-the-badge&logo=video&logoColor=white" alt="Watch HD Video"> </a> </div>
🎯 Watch: Stealth Browser MCP bypassing Cloudflare, cloning UI elements, and intercepting network traffic — all through simple AI chat commands
🔗 Quick Links
- ▶️ Quickstart
- 🏆 Hall of Fame - Impossible automations made possible
- 🥊 Stealth vs Others - Why we dominate the competition
- 🔥 Viral Examples - Copy & paste prompts that blow minds
- 🧰 88 Tools - Complete arsenal of browser automation
- 🎥 Live Demos - See it bypass what others can't
- 🤝 Contributing & 💬 Discord
Quickstart (60 seconds)
✅ Recommended Setup (Creator's Tested Method)
# 1. Clone the repository
git clone https://github.com/vibheksoni/stealth-browser-mcp.git
cd stealth-browser-mcp
# 2. Create virtual environment
python -m venv venv
# 3. Activate virtual environment
# Windows:
venv\Scripts\activate
# Mac/Linux:
source venv/bin/activate
# 4. Install dependencies
pip install -r requirements.txt
# 5. Add to Claude Code using CLI
Windows:
claude mcp add-json stealth-browser-mcp "{\"type\":\"stdio\",\"command\":\"C:\\path\\to\\stealth-browser-mcp\\venv\\Scripts\\python.exe\",\"args\":[\"C:\\path\\to\\stealth-browser-mcp\\src\\server.py\"]}"
Mac/Linux:
claude mcp add-json stealth-browser-mcp '{
"type": "stdio",
"command": "/path/to/stealth-browser-mcp/venv/bin/python",
"args": [
"/path/to/stealth-browser-mcp/src/server.py"
]
}'
💡 Replace
/path/to/stealth-browser-mcp/
with your actual project path
⚠️ Alternative: FastMCP CLI (Untested by Creator)
These methods should theoretically work but have not been tested by the creator. Use at your own risk.
# Install FastMCP
pip install fastmcp
# Auto-install (untested)
fastmcp install claude-desktop src/server.py --with-requirements requirements.txt
# OR
fastmcp install claude-code src/server.py --with-requirements requirements.txt
# OR
fastmcp install cursor src/server.py --with-requirements requirements.txt
Alternative: Manual Configuration (If Claude CLI not available)
If you don't have Claude Code CLI, manually add to your MCP client configuration:
Claude Desktop - Windows (%APPDATA%\Claude\claude_desktop_config.json
)
{
"mcpServers": {
"stealth-browser": {
"command": "C:\\path\\to\\stealth-browser-mcp\\venv\\Scripts\\python.exe",
"args": ["C:\\path\\to\\stealth-browser-mcp\\src\\server.py"],
"env": {}
}
}
}
Claude Desktop - Mac/Linux (~/Library/Application Support/Claude/claude_desktop_config.json
)
{
"mcpServers": {
"stealth-browser": {
"command": "/path/to/stealth-browser-mcp/venv/bin/python",
"args": ["/path/to/stealth-browser-mcp/src/server.py"],
"env": {}
}
}
}
Quick Test
Restart your MCP client and ask your agent:
"Use stealth-browser to navigate to https://example.com and extract the pricing table."
🚨 Common Installation Issues
❌ ERROR: Could not find a version that satisfies the requirement [package]
- Solution: Make sure your virtual environment is activated:
venv\Scripts\activate
(Windows) orsource venv/bin/activate
(Mac/Linux) - Alternative: Try upgrading pip first:
pip install --upgrade pip
❌ Module not found errors when running server
- Solution: Ensure virtual environment is activated before running
- Check paths: Make sure the Claude CLI command uses the correct venv path
❌ Chrome/Browser issues
- Solution: The server will automatically download Chrome when first run
- No manual Chrome installation needed
❌ "claude mcp add-json" command not found
- Solution: Make sure you have Claude Code CLI installed
- Alternative: Use manual configuration method above
❌ Path errors in Windows
- Solution: Use double backslashes
\\
in JSON strings for Windows paths - Example:
"C:\\\\Users\\\\name\\\\project\\\\venv\\\\Scripts\\\\python.exe"
✨ Why developers star this
- Works on protected sites that block traditional automation
- Pixel-accurate element cloning via Chrome DevTools Protocol
- Full network debugging through AI chat — see every request, response, header, and payload
- Your AI agent becomes a network detective — no more guessing what APIs are being called
- Clean MCP integration — no custom brokers or wrappers needed
- 88 focused tools designed for real-world workflows
Built on nodriver + Chrome DevTools Protocol + FastMCP
🆚 Stealth vs Playwright MCP
Feature | Stealth Browser MCP | Playwright MCP |
---|---|---|
Cloudflare/Queue-It | Consistently works | Commonly blocked |
Banking/Gov portals | Works | Frequently blocked |
Social sites | Full automation | Captchas/bans |
UI cloning | CDP-accurate | Limited |
Network debugging | AI agent sees all requests/responses | Basic |
API reverse engineering | Full payload inspection via chat | Manual tools only |
Dynamic Hook System | AI writes Python functions for real-time request processing | Not available |
Tooling | 88 | ~20 |
Sites users care about: LinkedIn • Instagram • Twitter/X • Amazon • Banking • Government portals • Cloudflare APIs • Nike SNKRS • Ticketmaster • Supreme
Toolbox
<details> <summary><strong>Browser Management</strong></summary>
Tool | Description |
---|---|
spawn_browser() |
Create undetectable browser instance |
navigate() |
Navigate to URLs |
close_instance() |
Clean shutdown of browser |
list_instances() |
Manage multiple sessions |
get_instance_state() |
Full browser state information |
go_back() |
Navigate back in history |
go_forward() |
Navigate forward in history |
reload_page() |
Reload current page |
hot_reload() |
Reload modules without restart |
reload_status() |
Check module reload status |
</details>
<details> <summary><strong>Element Interaction</strong></summary>
Tool | Description |
---|---|
query_elements() |
Find elements by CSS/XPath |
click_element() |
Natural clicking |
type_text() |
Human-like typing |
scroll_page() |
Natural scrolling |
wait_for_element() |
Smart waiting |
execute_script() |
Run JavaScript |
select_option() |
Dropdown selection |
get_element_state() |
Element properties |
</details>
<details> <summary><strong>Element Extraction (CDP‑accurate)</strong></summary>
Tool | Description |
---|---|
extract_complete_element_cdp() |
Complete CDP-based element clone |
clone_element_complete() |
Complete element cloning |
extract_complete_element_to_file() |
Save complete extraction to file |
extract_element_styles() |
300+ CSS properties via CDP |
extract_element_styles_cdp() |
Pure CDP styles extraction |
extract_element_structure() |
Full DOM tree |
extract_element_events() |
React/Vue/framework listeners |
extract_element_animations() |
CSS animations/transitions |
extract_element_assets() |
Images, fonts, videos |
extract_related_files() |
Related CSS/JS files |
</details>
<details> <summary><strong>File-Based Extraction</strong></summary>
Tool | Description |
---|---|
extract_element_styles_to_file() |
Save styles to file |
extract_element_structure_to_file() |
Save structure to file |
extract_element_events_to_file() |
Save events to file |
extract_element_animations_to_file() |
Save animations to file |
extract_element_assets_to_file() |
Save assets to file |
clone_element_to_file() |
Save complete clone to file |
list_clone_files() |
List saved clone files |
cleanup_clone_files() |
Clean up old clone files |
</details>
<details> <summary><strong>Network Debugging & Interception</strong></summary>
🕵️ Turn your AI agent into a network detective! No more Postman, no more browser dev tools — just ask your agent what APIs are being called.
Basic Network Monitoring
Tool | Description |
---|---|
list_network_requests() |
Ask AI: "What API calls happened in the last 30 seconds?" |
get_request_details() |
Ask AI: "Show me the headers and payload for that login request" |
get_response_content() |
Ask AI: "What data did the server return from that API call?" |
modify_headers() |
Ask AI: "Add custom authentication headers to all requests" |
spawn_browser(block_resources=[...]) |
Ask AI: "Block all tracking scripts and ads" |
Dynamic Network Hook System (NEW!)
🎯 AI writes custom Python functions to intercept and modify requests/responses in real-time!
Tool | Description |
---|---|
create_dynamic_hook() |
Ask AI: "Create a hook that blocks ads and logs API calls" |
create_simple_dynamic_hook() |
*Ask AI: "Block all requests to .ads.com" |
list_dynamic_hooks() |
Ask AI: "Show me all active hooks with statistics" |
get_dynamic_hook_details() |
Ask AI: "Show me the Python code for hook ID abc123" |
remove_dynamic_hook() |
Ask AI: "Remove the ad blocking hook" |
AI Hook Learning System
Tool | Description |
---|---|
get_hook_documentation() |
AI learns request object structure and HookAction types |
get_hook_examples() |
10 detailed examples: blockers, redirects, API proxies, custom responses |
get_hook_requirements_documentation() |
Pattern matching, conditions, best practices |
get_hook_common_patterns() |
Ad blocking, API proxying, auth injection patterns |
validate_hook_function() |
Validate hook Python code before deployment |
💡 Example: "Create a hook that blocks social media trackers during work hours, redirects old API endpoints to new servers, and adds authentication headers to all API calls"
🔥 Hook Features:
- Real-time processing (no pending state)
- AI-generated Python functions with custom logic
- Pattern matching with wildcards and conditions
- Request/response stage processing with content modification
- Full response body replacement and header injection
- Automatic syntax validation and error handling
- Base64 encoding for binary content support
</details>
<details> <summary><strong>CDP Function Execution</strong></summary>
Tool | Description |
---|---|
execute_cdp_command() |
Direct CDP commands (use snake_case) |
discover_global_functions() |
Find JavaScript functions |
discover_object_methods() |
Discover object methods (93+ methods) |
call_javascript_function() |
Execute any function |
inject_and_execute_script() |
Run custom JS code |
inspect_function_signature() |
Inspect function details |
create_persistent_function() |
Functions that survive reloads |
execute_function_sequence() |
Execute function sequences |
create_python_binding() |
Create Python-JS bindings |
execute_python_in_browser() |
Execute Python code via py2js |
get_execution_contexts() |
Get JS execution contexts |
list_cdp_commands() |
List available CDP commands |
get_function_executor_info() |
Get executor state info |
</details>
<details> <summary><strong>Progressive Element Cloning</strong></summary>
Tool | Description |
---|---|
clone_element_progressive() |
Initial lightweight structure |
expand_styles() |
On-demand styles expansion |
expand_events() |
On-demand events expansion |
expand_children() |
Progressive children expansion |
expand_css_rules() |
Expand CSS rules data |
expand_pseudo_elements() |
Expand pseudo-elements |
expand_animations() |
Expand animations data |
list_stored_elements() |
List stored elements |
clear_stored_element() |
Clear specific element |
clear_all_elements() |
Clear all stored elements |
</details>
<details> <summary><strong>Cookie & Storage</strong></summary>
Tool | Description |
---|---|
get_cookies() |
Read cookies |
set_cookie() |
Set cookies |
clear_cookies() |
Clear cookies |
get_instance_state() |
localStorage & sessionStorage snapshot |
execute_script() |
Read/modify storage via JS |
</details>
<details> <summary><strong>Tabs</strong></summary>
Tool | Description |
---|---|
list_tabs() |
List open tabs |
new_tab() |
Create new tab |
switch_tab() |
Change active tab |
close_tab() |
Close tab |
get_active_tab() |
Get current tab |
</details>
<details> <summary><strong>Page Analysis & Debugging</strong></summary>
Tool | Description |
---|---|
take_screenshot() |
Capture screenshots |
get_page_content() |
HTML and metadata |
get_debug_view() |
Debug info with pagination |
clear_debug_view() |
Clear debug logs |
export_debug_logs() |
Export logs (JSON/pickle/gzip) |
get_debug_lock_status() |
Debug lock status |
</details>
🧪 Real‑world examples
- Market research: extract pricing/features from 5 competitors and output a comparison
- UI/UX cloning: recreate a pricing section with exact fonts, styles, and interactions
- Inventory monitoring: watch a product page and alert when in stock
- Reverse engineering: intercept requests, map endpoints, and understand data flow
You can drive all of the above from a single AI agent chat.
🛣️ Roadmap
See the live plan in ROADMAP.md. Contributions welcome.
Contributing
We love first‑time contributions. Read CONTRIBUTING.md and open a PR.
If this project saves you time, consider starring the repo and sharing it with a friend.
💼 Need Website or App Development? Try DevHive Studios
DevHive Studios is a fair marketplace connecting businesses with skilled developers. Unlike other platforms, we put developers first while keeping costs affordable for clients.
🏆 Why DevHive?
- For Developers: Keep 60% of what clients pay (+ bonuses for on-time delivery)
- For Clients: Quality websites/apps starting at just $50
- For Everyone: Transparent pricing, fast delivery, expert team
🛠️ Services Available
Web development • Mobile apps • Bots & automation • E-commerce • UI/UX design • Security • Custom software • And more
Ready to start your project? Hit up DevHive Studios today:
DevHive Studios — Fair marketplace. Quality results.
☕ Support This Project
If this browser automation MCP saved you time or made you money, consider supporting the development:
- ☕ Buy me a coffee: buymeacoffee.com/vibheksoni
- ₿ Bitcoin:
3QaS5hq2416Gd3386M6c9g5Dgc5RgvP3o2
- Ł Litecoin:
MM35KN1wUXREpwjj2RsmiKHM1ZWKDmeqDz
- ◎ Solana:
3LkBXDKLZXAgCRzAApa6dQG3ba7zRkUK82Bvmd9JWMdi
Every contribution helps maintain and improve this project! 🚀
📄 License
MIT — see LICENSE.
If you want your AI agent to access ANY website, star this repo. It helps more than you think.
⭐ Star History
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.