Your agent can read
the wire too.
WireLens ships an MCP server inside the app. Claude Code, Codex, Gemini CLI and Cursor can find the request behind a bug, read its body, and, when you allow it, add the rule that proves the fix.
5 clients, detected and installed for you · you choose what it may change
Claude Code
Anthropic's agent in your terminal.
Install
$ claude mcp add --scope user wirelens -- "/ Applications/ WireLens.app/ Contents/ Helpers/wirelens-mcp" --allow-mutationsOr write the config yourself
~/.claude.jsonjson
{
"mcpServers": {
"wirelens": {
"command": "/ Applications/ WireLens.app/ Contents/ Helpers/wirelens-mcp",
"args": [
"--allow-mutations"
]
}
}
}Start a new Claude Code session (`claude`).
What changes when it can see the traffic.
An agent that can read the exchange stops guessing at it. Everything below happens on your Mac, against your own capture.
It sees the real response
The agent reads the request your app actually sent and the body the server actually returned, with the timing, rather than your description of it.
It can test the fix
With mutations allowed, the agent adds a Map Local mock or a breakpoint, replays the request through the proxy, and tells you whether the change holds.
It stops guessing at setup
capture_status and diagnose_setup answer the questions that waste a session. Is capture on? Is this host decrypted? Is the certificate trusted? Why is this app missing?
What an agent can actually do.
The left column works as soon as the server is installed. The right column needs --allow-mutations.
Always available
capture_status
Whether capture is listening, the port, decrypted hosts and certificate trust.
diagnose_setup
Ranks likely setup problems against live state for a symptom you describe.
list_flows · get_flow
Find flows by host, path, method and status; read one.
get_flow_body
Read a body, or just the JSONPath the agent needs.
search_bodies
Search inside payloads.
list_hosts · list_sessions
Roll-ups by host and by capture run.
list_websocket_sessions · get_websocket_messages
WebSocket connections and their frames.
list_rules · get_rule · get_rules
Rules as a short list, one in full, or the whole configuration.
export_rules
Save rules to a file another Mac can import.
script_reference · generate_script · test_script
Write a script and try it on a captured request.
list_paused_flows
What a breakpoint is holding right now.
list_simulators
Which simulators trust the WireLens certificate.
export_har · export_curl · export_session · generate_code
Take traffic elsewhere.
proxy_env · run_guided_setup
Setup for runtimes that ignore the system proxy.
search_docs
WireLens's own troubleshooting and rule guides.
With --allow-mutations
set_ssl_include · toggle_ssl_host
Choose what gets decrypted.
set_allow_list · set_block_list
Allow and Block lists.
add_map_local · add_map_remote · add_rewrite
Answer locally, redirect, or edit in flight.
add_breakpoint · add_script_rule · add_dns_spoof
Pause a request, run a script, or point a host somewhere else.
add_block_rule · add_network_condition_rule
Block or hide by URL or app, and slow one host down.
set_throttle · set_network_condition_profile
Network Conditions.
toggle_rule · update_rule · move_rule · duplicate_rule
Change a rule in place, reorder it, or copy it.
remove_rule · remove_rules · import_rules
Delete rules, or load a saved set.
resume_paused_flow
Continue, edit or abort a request held at a breakpoint.
setup_simulator
Install the certificate into a simulator and confirm it.
annotate_flows · delete_flows · rename_session
Mark, tidy and name what was captured.
send_request · replay_flow
Send traffic through the proxy.
control_capture · control_system_proxy · control_certificate
Drive the app.
An agent in your traffic, on your terms.
Your capture is full of tokens and personal data. Here is what the server does about that.
Secrets are redacted
Bodies and headers come back redacted. Getting a raw value takes an explicit request from the agent, which you can see it make.
Read-only until you say otherwise
Without --allow-mutations, the tools that change things are not offered to the agent at all.
Every change lands in Tools
A rule an agent adds appears in the Tools window like any other, with the same switch to turn it off and the same free-plan allowance.
The same power, from your shell.
Use the wirelens command to query a live capture, read bodies by JSONPath, add rules, export HAR and drive capture from a script or from CI.
Command line guide❯ wirelens ls --host payments.acme.dev --status 5xx 3f9c1e2b POST 500 /v1/intents 1.21 s ❯ wirelens show 3f9c --body response --json-path '$.error' { "type": "upstream_timeout" } ❯ wirelens mcp install codex ✓ Wrote ~/.codex/config.toml
The tool ships inside the app, and installing the app does not put it on your PATH. Link it once with Help ▸ Install Command Line Tool…, or run it as /Applications/WireLens.app/Contents/Helpers/wirelens.
About agents and MCP.
Which agents can use WireLens?
Does my traffic go to the model?
Can an agent change my traffic?
Do agent-made rules bypass the free plan?
Where does the server come from?
Is there an HTTP transport?
Connect your agent.
Install WireLens, open Tools ▸ MCP Server and pick your client. It takes about two minutes.
Buying for a team? See team pricing or write to finance@wirelens.app.