mitmproxy-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mitmproxy-mcpStart the proxy on port 8080 and list captured flows"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mitmproxy-mcp
A lightweight Model Context Protocol (MCP) server built on mitmproxy. It lets LLMs capture, inspect, replay and modify HTTP traffic through a small, focused set of tools.
Features
Two capture modes
Start a live proxy via
proxy_startand capture traffic in real time.Load a previously saved
.mitmdump withflows_loadfor offline analysis.
Core operations
View:
flows_list,flow_getReplay:
flow_replay,request_send— backed by mitmproxy's nativereplay.clientModify:
flow_update,flow_create
Built on mitmproxy's own engine for replay and save, so we don't reinvent the wheel.
stdio transport for out-of-the-box Claude Desktop compatibility.
Uses mitmproxy's existing web UI (
mitmweb) if you prefer a visual inspector.
Related MCP server: httptoolkit-mcp
Install
Requires Python 3.13+ and uv.
uv venv
uv pip install -e .Claude Desktop configuration
Add this to your Claude Desktop config (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows/Linux paths may differ):
{
"mcpServers": {
"mitmproxy": {
"command": "uv",
"args": [
"--directory",
"/path/to/mitmproxy-mcp",
"run",
"mitmproxy-mcp"
]
}
}
}A sample config is also in examples/mcp-config.json.
Quick start
Configure your browser or client to use the proxy address shown by
proxy_status(default127.0.0.1:8080).Ask the LLM to run
proxy_start.Browse or make API calls.
Ask the LLM to run
flows_listandflow_getto inspect traffic.Use
flow_replayto resend a request, orflow_update+flow_replayto modify and resend.
HTTPS traffic
For HTTPS interception you must trust the mitmproxy CA certificate:
# Certificate location
~/.mitmproxy/mitmproxy-ca-cert.cerInstall it in your browser or system keychain. See mitmproxy docs for details.
Tools
Tool | Description |
| Start the capture proxy ( |
| Stop the capture proxy |
| Show proxy state and number of captured flows |
| Load flows from a |
| Save current flows to a |
| List flows with filtering/pagination |
| Get a single flow's full details |
| Clear in-memory flows; optionally stop proxy |
| Replay a flow using mitmproxy's |
| Send a new request using mitmproxy's |
| Modify a flow's request/response or metadata |
| Create a new request flow without sending |
| Delete a flow from memory |
Playwright / browser automation
You can point Playwright at the mitmproxy-mcp proxy to capture browser traffic:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(
proxy={"server": "http://127.0.0.1:8080"},
args=["--ignore-certificate-errors"],
)
context = browser.new_context(ignore_https_errors=True)
page = context.new_page()
page.goto("https://example.com")Then ask the LLM to run flows_list and inspect the captured requests.
A complete integration test is in tests/test_playwright_capture.py. Run it with:
uv pip install -e ".[dev]"
playwright install chromium
python -m pytest tests/test_playwright_capture.py -m integration -vDevelopment
Run the server manually for testing:
uv run mitmproxy-mcpRun unit tests (excludes network/browser integration tests):
uv run pytest tests/ -qRun integration tests:
# Playwright browser capture test
uv run pytest tests/test_playwright_capture.py -m integration -v
# All MCP tools end-to-end test
uv run pytest tests/test_all_tools.py -m integration -vLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/u33pk/mitmproxy-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server