Skip to content
SPECIFICTION
Get listed

mitmproxy vs Whistle

mitmproxy

mitmproxy.org

Whistle

wproxy.org

Side by side

FiguremitmproxyWhistle
Price fromFree—
Free planYes—
Free trial——
Open sourceYes—
WebYesYes
WindowsYesYes
macOSYesYes
LinuxYesYes
iOS—Yes
Android—Yes
APIYes—
Self-hostedYes—
Plans published20
Spec score · Web Debugging Proxies8.7 (#5)7.2 (#26)

Plans

mitmproxy

  • FreeFree
  • mitmproxyFree

mitmproxy pricing →

Whistle

No plans published.

Whistle pricing →

In their own words

mitmproxy

mitmproxy is a free set of tools for inspecting and changing traffic sent through a proxy. It handles HTTP/1, HTTP/2, WebSocket, and SSL/TLS traffic, and can intercept HTTP and HTTPS requests and responses for editing. Conversations can be saved for later analysis, and users can replay client requests or recorded server responses. The project provides an interactive console, a browser-based GUI, and non-interactive terminal output through mitmproxy, mitmweb, and mitmdump. Proxy modes include regular, local capture, WireGuard, reverse, transparent, TUN, upstream, SOCKS5, and DNS. Python addons can alter behavior in response to events and expose commands. WireGuard mode can capture traffic from external devices or individual Android apps. A built-in certificate authority generates interception certificates as needed. Installation options cover Windows, macOS, Linux, PyPI, and official Docker images. The project says it does not phone home or check for updates. Documentation notes that HTTP/3 client replay is currently broken; dependencies in precompiled binaries and Docker images are fixed at release and cannot be updated in place.

Visit mitmproxy.org

Whistle

Whistle is a free, MIT-licensed network debugging proxy for packet capture and traffic inspection. It supports HTTP, HTTPS, SOCKS, and reverse proxying, and can intercept and modify network traffic. Users define rules to change requests and responses; the Network interface filters captured requests in real time, while Composer supports replay and editing. WebSocket and TCP request and response data can be inspected, transmission paused or ignored, and custom data sent through Composer. HTTPS decryption requires enabling HTTPS capture and installing Whistle’s root certificate. The desktop version provides a graphical interface for macOS, Windows, and Linux. Its command-line version is intended for headless Linux servers, Docker containers, embedded systems, and IoT devices. Mobile capture instructions cover iOS and Android devices configured to use the proxy and trust its root certificate. Plugins extend Whistle’s functions and can be installed, configured, updated, and removed; the software can also be added to a project as an NPM module. The integrated Weinre tool supports debugging webpages on mobile devices from a computer on the same network. Internal requests can use username and password authentication, while proxy request permission control requires a plugin or custom plugin.

Visit wproxy.org