Skip to main content

MCP browser bridge that gives AI clients full access to a live browser environment.

Project description

mithwire-mcp

🤖 Build, test, and debug web automations with AI agents.
An MCP server that gives LLM agents direct control over stealth Chromium browsers.
Dual Engine (CDP + CloakBrowser) • Live Debugging • Proxy Alignment • Persistent Profiles

PyPI Python versions MCP License mithwire engine


💡 What is Mithwire MCP?

mithwire is a production-ready anti-detect browser engine. Mithwire MCP is the Model Context Protocol server that exposes Mithwire's stealth browser capabilities directly to AI models like Claude, Cursor, and autonomous agents.

Instead of manually writing fragile browser-automation glue code, you can hand over the MCP server to an AI agent to build, execute, test, and debug web automations autonomously.

Your AI agent can invoke structured MCP tools (session_start, browser_navigate, browser_click, browser_snapshot, browser_solve_cloudflare) to explore pages, handle logins and captchas, capture console and network logs, and inspect DOM state in real time.


🛠️ Built for Developing & Debugging Automations

Mithwire MCP was designed specifically as an interactive development harness for AI agents and human developers:

  • 🤖 Autonomous Automation Authoring: Give your AI agent a high-level prompt ("Build a script that logs into service X and downloads report Y"). The agent uses MCP tools to navigate, find selectors, verify state, and iterate until the script works.
  • 🔍 Live Inspection & Diagnostics: Agents can capture DOM snapshots, monitor JavaScript console errors, record full CDP network traces, and read storage/cookies at any point during execution.
  • 🖥️ Visual VNC Debugging: Pre-packaged with an embedded noVNC web viewer (http://localhost:6080/vnc.html). Watch your AI agent interact with the browser live in your desktop browser.
  • 🧪 E2E Test Prototyping: Rapidly prototype and debug resilient scrapers and workflows without getting blocked by anti-bot protections.

💥 The Problem for AI Agents

When AI agents attempt web operations using traditional tools (Playwright, Puppeteer, Selenium, or standard web fetchers), they immediately hit anti-bot walls:

  • Instant Anti-Bot Blocks: Standard automation frameworks leak navigator.webdriver = true and ChromeDriver artifacts, triggering Cloudflare, Akamai, and DataDome challenges.
  • Proxy & IP Mismatches: Agents using proxies often leak their host IP via STUN/WebRTC or present timezone/locale settings that contradict their proxy exit location.
  • State Loss Across Turns: AI agents frequently lose cookies, session state, or local storage between execution turns or subagent invocations.

🛡️ The Mithwire MCP Solution

Mithwire MCP solves these challenges natively for AI agent workflows:

  1. 🥷 Stealth by Design: Operates on Mithwire—no WebDriver, no Selenium, zero navigator.webdriver leaks, with built-in Cloudflare Turnstile bypass.
  2. Dual Stealth Engines: Support for both lightweight cdp mode (standard Chrome) and C++-patched stealth mode (CloakBrowser) per session.
  3. 🌍 Automatic Proxy & Egress Alignment: Auto-probes proxy health before launching Chromium and aligns timezone, locale, languages, and geolocation to match the proxy exit IP.
  4. 👤 Persistent Profiles & State Store: Reusable browser profiles (profiles/) store cookies, localStorage, proxies, and persisted fingerprints across agent runs.
  5. 🔒 WebRTC Leak Protection: Automatically guards STUN/UDP queries against leaking the host's real IP address.

⚡ Engine Modes & Capabilities

Configure stealth levels on a per-session or per-profile basis:

Engine Mode Binary Capabilities Best Suited For
cdp (Default) Stock Chrome / Chromium Fast, reliable CDP Emulation overrides for timezone, locale, geo, UA, platform, and device metrics. Local workstations, remote Linux servers (same-OS profiles or standard targets), fast script prototyping.
stealth [CloakBrowser] C++ source code patches for Canvas, WebGL GPU strings, AudioContext, native fonts, and TLS signatures. Cross-OS profiles (e.g. Windows profile on a Linux VPS), cloud agents, high-security anti-bot targets.

✨ Key Features & Capabilities

  • 🤖 Complete Agent Toolset: Full toolsuite covering navigation, DOM querying, clicking, typing, scrolling, screenshots, network capture, and JS evaluation.
  • 🧩 Cloudflare Bypass: Solves Cloudflare Turnstile challenges on command via browser_solve_cloudflare.
  • 🗂️ Centralized State Store: Default ~/.mithwire-mcp directory manages persistent profiles, proxy registries, and cookie import/export files.
  • 🛰️ Proxy Registry & Alignment: Store proxy credentials once and reference them by name. Automatically validates proxy health and aligns timezone/locale/geo before Chromium launches.
  • 🐳 Docker-Ready with Visual Debugging: Pre-configured Docker container with Xvfb, CloakBrowser, and noVNC web viewer (http://localhost:6080/vnc.html).

🚀 Installation

# Standard install (CDP mode)
pip install mithwire-mcp

# With Stealth Mode support (CloakBrowser)
pip install "mithwire-mcp[stealth]"

💻 MCP Client Configuration

Add Mithwire MCP to your MCP client config (e.g. Cursor, Claude Desktop):

{
  "mcpServers": {
    "mithwire-mcp": {
      "command": "mithwire-mcp",
      "args": ["--transport", "stdio"]
    }
  }
}

🐳 Running in Docker (With Visual VNC Debugging)

For isolated execution or local visual observation:

# Pull public Docker image
docker pull ghcr.io/codeisalifestyle/mithwire-mcp:latest

# Run local dev container with noVNC enabled
docker compose -f docker-compose.dev.yml up -d --build

Endpoints:

  • 🔌 MCP Server (Streamable HTTP): http://localhost:7867
  • 🖥️ noVNC Visual Viewer: http://localhost:6080/vnc.html

🧰 Available MCP Tools Reference

🔁 Session Lifecycle & Profile Management
  • session_start - Launch a new browser session (ephemeral or persistent profile)
  • session_list - List active browser sessions
  • session_get - Get session status and identity metadata
  • session_stop - Close a specific session
  • session_stop_all - Terminate all running sessions
  • session_profile_list / session_profile_set / session_profile_delete - Profile management
  • session_proxy_list / session_proxy_set / session_rotate_proxy - Proxy registry & rotation
🎮 Browser Navigation & DOM Actions
  • browser_navigate / browser_back / browser_forward / browser_reload - Navigation
  • browser_snapshot - Take interactive DOM snapshot with element references
  • browser_query - Find elements by CSS selector or text
  • browser_click / browser_mouse_click / browser_type - User interactions
  • browser_scroll / browser_wait_for_selector / browser_wait_for_text - Waits and positioning
  • browser_take_screenshot - Capture page screenshot
  • browser_solve_cloudflare - Automatically solve Cloudflare Turnstile challenge
📡 Cookies, Storage & Network Capture
  • browser_cookies_get / browser_cookies_set / browser_cookies_save / browser_cookies_clear
  • browser_storage_get / browser_storage_set / browser_storage_clear
  • browser_console_messages / browser_network_requests
  • browser_network_capture_start / browser_network_capture_get / browser_network_capture_stop

📜 License

Distributed under the MIT License. Powered by mithwire (AGPL-3.0).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mithwire_mcp-0.4.4.tar.gz (132.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mithwire_mcp-0.4.4-py3-none-any.whl (93.5 kB view details)

Uploaded Python 3

File details

Details for the file mithwire_mcp-0.4.4.tar.gz.

File metadata

  • Download URL: mithwire_mcp-0.4.4.tar.gz
  • Upload date:
  • Size: 132.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mithwire_mcp-0.4.4.tar.gz
Algorithm Hash digest
SHA256 3385d22335779e0693a31741b8fff14ec5273b965874bfd7ab63a686f0075a20
MD5 c17d98615d046bc3aa5a73b9da82b4ee
BLAKE2b-256 0f8c62ccb76032caebf49a3e0463e393155a6712b9399975060fc2f56fecc75e

See more details on using hashes here.

Provenance

The following attestation bundles were made for mithwire_mcp-0.4.4.tar.gz:

Publisher: release.yml on codeisalifestyle/mithwire-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mithwire_mcp-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: mithwire_mcp-0.4.4-py3-none-any.whl
  • Upload date:
  • Size: 93.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mithwire_mcp-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 244fe509fea4cb33da0e5e993334411c7c5861829c8ec846e4ee0bbb74b271bf
MD5 fc6362f39d16df3f7b5632e441b5229d
BLAKE2b-256 a859c57b535be7cfdc5740bf06fb5368d22290f5b20ef5024cfa35282abb7572

See more details on using hashes here.

Provenance

The following attestation bundles were made for mithwire_mcp-0.4.4-py3-none-any.whl:

Publisher: release.yml on codeisalifestyle/mithwire-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page