Claude Code integration
ProxyPro ships with a built-in Model Context Protocol server so AI agents (Claude Code, Cursor, any MCP-HTTP client) can read your live HTTP / gRPC / WebSocket traffic and create / toggle / delete mock rules on your behalf. 25 tools cover the full surface — inspecting captures, creating Map Local / Map Remote / Throttle rules, replaying requests, and toggling the macOS system proxy.
This page walks through wiring it up, then describes the optional skill bundle that adds workflow recipes on top of the raw tools.
1. Connect Claude Code to the MCP server
Make sure ProxyPro is running, then in your terminal:
claude mcp add --transport http proxypro http://localhost:9091/mcpVerify the handshake:
claude mcp list# proxypro: http://localhost:9091/mcp (HTTP) - ✓ ConnectedOpen a Claude Code session in any project and try:
“Use ProxyPro to list the last 5 HTTP captures.”
Claude should call list_captures and show you the results. If it doesn’t,
ensure the session was started AFTER you ran mcp add — Claude only picks
up MCP servers at session start.
2. (Optional) Install the skill bundle
The MCP tools alone are usable, but Claude routes them better when paired with a small skill that documents when to invoke which tool, common multi-step workflows, and anti-patterns to avoid.
Get the bundle
Two ways:
- Open ProxyPro
- Click the MCP tab in the top nav
- Click Export skill bundle…
- Save
proxypro-claude-skill.zipanywhere convenient
Download the
latest skill bundle from GitHub Releases
(look for proxypro-claude-skill.zip in the release assets).
Install into your project
# From your project rootmkdir -p .claude/skills/unzip ~/Downloads/proxypro-claude-skill.zip -d .claude/skills/You should now have:
.claude/skills/proxypro/├── SKILL.md├── CLAUDE.md.example└── references/ ├── recipe-01-mock-single-endpoint.md ├── recipe-02-simulate-api-failure.md ├── recipe-03-replay-modified-headers.md ├── recipe-04-ab-compare-upstreams.md ├── recipe-05-throttle-slow-network.md ├── recipe-06-capture-and-mock.md └── recipe-07-system-proxy-session.mdRestart your Claude Code session — it picks up new skills at session start.
Lightweight alternative: CLAUDE.md only
If you want the integration mentioned to Claude on every session but don’t
need the full recipe library, just paste CLAUDE.md.example into your
project’s CLAUDE.md:
cat .claude/skills/proxypro/CLAUDE.md.example >> CLAUDE.mdYou can delete the skill folder after if you only want the minimal hint.
3. What you can do now
Workflows the recipes cover
The seven recipes in the skill bundle each show a concrete multi-step pattern with example prompts, exact tool calls, and cleanup steps:
| # | Recipe | Use case |
|---|---|---|
| 1 | Mock a single endpoint | ”Fake the response from /api/users” |
| 2 | Simulate an API failure | ”Make /api/checkout return 500” |
| 3 | Replay with modified headers | ”Re-send that with an admin token” |
| 4 | A/B compare prod vs staging | ”Diff what v1 vs v2 returns” |
| 5 | Throttle for slow-network testing | ”Try this on slow 3G” |
| 6 | Capture-and-mock pattern | ”Freeze that real response as a fixture” |
| 7 | System proxy session toggle | ”Capture everything for the next 10 minutes” |
Tools available
25 MCP tools total:
- Read:
list_captures,get_capture,get_capture_body,list_rules,get_rule_detail,list_mock_states,get_mock_state - Rules:
create_map_local_rule,create_map_remote_rule,create_throttle_rule,create_breakpoint_rule,create_mock_state_write_rule,update_rule,set_rule_enabled,delete_rule - Mock state:
create_mock_state,update_mock_state,delete_mock_state - Runtime:
replay_request,clear_captures,set_system_proxy - SSL proxying:
get_ssl_proxying,set_ssl_proxying_mode,add_ssl_proxying_host,remove_ssl_proxying_host
Each has a schema-validated input + a description Claude reads at session start. The skill bundle adds higher-level “when to invoke” hints + recipes that compose multiple tools.
4. Cleanup hygiene
When you let an AI agent create rules, it’s responsible for cleaning them
up. The skill encourages this explicitly: every recipe ends with a
delete_rule(ruleId) step. But if a session ends abruptly:
- Open the Rules tab in ProxyPro to see what’s still active
- Delete anything you don’t recognise, or load a known-good profile via the Recent dropdown (see the Rules import/export docs)
For the system proxy specifically: if set_system_proxy(true) was called
and the session ended without cleanup, you may need to toggle it off
manually in ProxyPro → header → system proxy toggle.
Troubleshooting
Claude doesn’t call ProxyPro tools when I ask
- Make sure
claude mcp listshows✓ Connected - Restart the Claude Code session — MCP server list is picked up at start
- Check the MCP tab in ProxyPro for the recent-calls log; if it stays empty, the calls aren’t reaching ProxyPro at all
claude mcp add says “Failed to connect”
- Is ProxyPro actually running? Check Activity Monitor for
ProxyProandproxypro-engine - Is port 9091 reachable?
curl http://127.0.0.1:9091/mcpshould respond - If you see a different port in ProxyPro’s MCP tab (e.g. 9092), 9091 was
in use at startup and ProxyPro hopped —
claude mcp addneeds the actual port
The skill bundle didn’t end up under .claude/skills/
Re-check the unzip command — unzip -d .claude/skills/ extracts the
contents as .claude/skills/proxypro/.... If you see a doubled path like
.claude/skills/proxypro/proxypro/..., move the inner proxypro/
folder up one level.