# Proxyman MCP

> 使用 Codex、Claude Code 或 Cursor 连接 Proxyman MCP，让 AI 助手检查已抓取的 HTTP/HTTPS 流量，并创建调试规则。

Proxyman MCP 可将你的 AI 助手连接到电脑上运行的 Proxyman macOS 应用。你可以借助它检查已抓取的请求和响应、排查失败的请求，并创建调试规则。在让助手分析之前，请保持 Proxyman 运行，并先抓取需要排查的流量。

## 1. 什么是 Proxyman MCP？ {#1-what-is-proxyman-mcp}

**Proxyman MCP**（Model Context Protocol，模型上下文协议）是一项功能，可让 AI 助手（Codex、Claude Code、Cursor 以及其他兼容 MCP 的工具）直接与 Proxyman macOS 应用交互。AI 可以借此检查 HTTP 流量、创建调试规则并控制 Proxyman，全部通过自然语言对话完成。

该架构由两个组件构成：

* **MCP HTTP Server** - 运行在 Proxyman 应用内的 localhost 上，并使用基于令牌的身份验证
* **MCP CLI Server** - 基于 stdio 的 MCP 服务器，AI 工具通过它连接，并将命令转发给 Proxyman

> **备注:** 请查看适用于 AI Agent 的 [Proxyman SKILL.md](https://proxyman.com/docs/zh-cn/skill-md)。

### ✅ 示例提示词 {#-example-prompts}

* 显示发送到 api.example.com 的最近 10 个 API 请求
* 为所有发送到 /api/users 的 POST 请求创建 Breakpoint
* 将失败的请求导出为 cURL 命令
* 为 \*.stripe.com 启用 SSL Proxying
* 创建一个新的 Script，修改状态码、请求头和正文。
* 使用指定 URL 创建 Map Local 和 Breakpoint 规则

![Claude 使用 Proxyman MCP 创建 Scripting 规则，修改查询参数、添加请求头并将状态码设为 301](https://proxyman.com/docs/assets/Screenshot%202026-03-16%20at%2011.20.29.jpg)

_使用 Proxyman MCP 创建 Scripting 规则_

## 2. 优势 {#2-benefits}

<table><thead><tr><th width="229.90625">优势</th><th>说明</th></tr></thead><tbody><tr><td><strong>AI 驱动的调试</strong></td><td>让 AI 分析已抓取的流量、查找特定请求，或解释 API 响应</td></tr><tr><td><strong>免手动创建规则</strong></td><td>通过对话创建 Breakpoint、Map Local 和 Map Remote 规则</td></tr><tr><td><strong>更快的工作流</strong></td><td>无需切换上下文，即可导出 cURL 命令、过滤请求记录并管理会话</td></tr><tr><td><strong>安全设计</strong></td><td>仅限 localhost 的服务器，并采用按会话生成的令牌进行身份验证</td></tr><tr><td><strong>IDE 集成</strong></td><td>支持 Codex、Claude Code、Cursor 以及其他兼容 MCP 的工具</td></tr></tbody></table>

## 3. 如何添加 Proxyman MCP {#3-how-to-add-proxyman-mcp}

1. **在 Proxyman 中启用 MCP**
   * 依次打开 Proxyman → Settings → MCP 标签页
   * 开启 **Enable MCP Server**，以启动 MCP 服务器
2. **选择你的 MCP 客户端：** 在 Proxyman Settings → MCP 中选择 **Codex** 或 **Claude Code**，然后点击 **Copy Command**。如果使用 **Cursor**，请选择 **Manual**，并将显示的配置添加到 Cursor 的 MCP 设置中。
3. 请根据你的客户端和安装方式，使用下方对应的设置。Proxyman 生成的命令会使用已安装应用的路径，可能与这些示例不同。日常调试时，请保持 **Redact Sensitive Data Before Sending to AI** 开启。

![Proxyman MCP 设置页面，已开启 Enable MCP Server，并包含 Claude Code、Codex 和 Manual 标签页、Copy 按钮以及 Redact Sensitive Data 选项](https://proxyman.com/docs/assets/proxyman-settings-mcp-tab.jpg)

_设置中的 MCP 标签页_

### Codex {#codex}

* 正式版本：

```bash
codex mcp add proxyman -- "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
```

* Setapp 版本：

```bash
codex mcp add proxyman -- "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
```

### Claude Code {#claude-code}

* 正式版本：

```bash
claude mcp add proxyman --transport stdio -- "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
```

* Setapp 版本：

```bash
claude mcp add proxyman --transport stdio -- "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
```

### 手动配置 {#manual}

对于 Cursor 和其他 MCP 客户端，请将 Proxyman **Manual** 标签页中的配置添加到客户端的 MCP 设置中。请选择与你已安装的 Proxyman 应用对应的配置。以下示例展示的是 `mcpServers` 条目：

* 正式版本：

```json
{
  "mcpServers": {
    "proxyman": {
      "command": "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
    }
  }
}
```

* Setapp 版本

```json
{
  "mcpServers": {
    "proxyman": {
      "command": "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
    }
  }
}
```

4. **开始使用 Proxyman MCP**

* 确保 Proxyman 正在运行
* 让 AI 助手与 Proxyman 交互，例如：“显示 api.example.com 的最新请求。”
* 如果客户端找不到 Proxyman，请检查 MCP 是否已启用，且配置的应用路径是否正确，然后重新连接客户端。如果已连接但找不到任何请求记录，请重新发起一个请求，并参考[流量缺失检查清单](https://proxyman.com/docs/zh-cn/troubleshooting/i-couldnt-see-any-traffics-on-proxyman)。

## 4. 可用工具 {#4-available-tools}

以下表格列出了常用工具。你的 MCP 客户端会显示所安装 Proxyman 版本的完整工具列表。更多工具请参阅[更新日志](#changelogs)。

### 只读工具 {#read-only-tools}

| 工具                     | 说明                                                                                                             |
| ------------------------ | ---------------------------------------------------------------------------------------------------------------- |
| `get_version`            | 返回 Proxyman 版本号和构建号                                                                                     |
| `get_proxy_status`       | 返回录制状态、代理端口和 SSL Proxying 状态                                                                       |
| `get_flows`              | 列出已抓取的 HTTP/HTTPS 请求记录，可选择使用过滤条件（`limit`、`host_filter`、`method_filter`、`status_filter`） |
| `get_flow_detail`        | 返回某条请求记录的完整详情，包括请求头、正文预览、查询参数和 Cookie                                              |
| `list_rules`             | 列出所有调试规则（breakpoint、map local、map remote、blacklist）                                                 |
| `get_ssl_proxying_list`  | 返回 SSL Proxying 的包含域名和排除域名列表                                                                       |
| `get_certificate_status` | 返回根证书的安装状态                                                                                             |

### 写入工具 {#write-tools}

| 工具                    | 说明                                          | 必需参数             |
| ----------------------- | --------------------------------------------- | -------------------- |
| `create_breakpoint`     | 创建 Breakpoint，用于暂停并检查匹配的请求     | `url`（模式）        |
| `create_map_local`      | 为匹配的 URL 返回自定义响应                   | `url`（模式）        |
| `create_map_remote`     | 将请求从一个 URL 重定向到另一个 URL           | `from_url`、`to_url` |
| `create_blacklist`      | 阻止匹配 URL 模式的请求                       | `url`（模式）        |
| `create_scripting_rule` | 使用自定义 JavaScript 创建 Scripting 规则     | `url`、`script_content` |
| `enable_ssl_proxying`   | 为某个域名启用 HTTPS 解密                     | `domain`             |

### 会话控制 {#session-control}

| 工具               | 说明                             |
| ------------------ | -------------------------------- |
| `clear_session`    | 清除当前会话中所有已抓取的请求记录 |
| `toggle_recording` | 开始或停止流量录制               |

### 请求记录操作 {#flow-operations}

| 工具               | 说明                                                                                                                |
| ------------------ | ------------------------------------------------------------------------------------------------------------------- |
| `export_flow_curl` | 将已抓取的请求导出为可直接运行的 cURL 命令                                                                          |
| `filter_flows`     | 使用多个条件进行高级过滤（url、host、method、status、headers、body），支持 AND/OR 组合                              |

### 应用控制 {#app-control}

| 工具            | 说明                         |
| --------------- | ---------------------------- |
| `open_proxyman` | 如果 Proxyman 未运行，则将其启动 |
| `quit_proxyman` | 退出 Proxyman 应用           |

***

## 更新日志 {#changelogs}

### MCP v3（Proxyman macOS ≥ 6.8.0） {#mcp-v3-proxyman-macos--680}

| 名称                           | 说明                                                                                                                                   |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
| get\_version                   | 获取当前 Proxyman macOS 应用的版本号和构建号                                                                                           |
| get\_proxy\_status             | 获取当前代理状态，包括录制状态、端口号和 SSL Proxying 状态                                                                             |
| get\_flows                     | 从 Proxyman 当前活动的会话数据源中获取最近的 HTTP/HTTPS 请求记录                                                                       |
| get\_flow\_detail              | 获取某条请求记录的详细信息，包括请求头、正文、查询参数和 Cookie                                                                        |
| list\_rules                    | 列出所有生效中的调试规则（breakpoint、map local、map remote、blacklist、scripting、dns spoofing、network condition、whitelist）       |
| get\_ssl\_proxying\_list       | 获取当前 SSL Proxying 配置，包括启用状态和域名列表                                                                                     |
| create\_breakpoint             | 创建新的 Breakpoint 规则，用于暂停并检查/修改与 URL 模式匹配的请求或响应                                                               |
| create\_map\_local             | 创建 Map Local 规则，为匹配的请求返回自定义响应                                                                                        |
| create\_map\_remote            | 创建 Map Remote 规则，将请求从一个 URL 重定向到另一个 URL                                                                              |
| create\_blacklist              | 创建 Blacklist 规则，阻止匹配 URL 模式的请求                                                                                           |
| create\_scripting\_rule        | 创建带有自定义 JavaScript 的 Scripting 规则，用于修改请求或响应                                                                        |
| enable\_ssl\_proxying          | 为指定域名启用 SSL Proxying，以解密 HTTPS 流量                                                                                         |
| clear\_session                 | 清除当前会话中所有已抓取的请求记录                                                                                                     |
| toggle\_recording              | 开始或停止录制 HTTP 流量                                                                                                               |
| export\_flow\_curl             | 将已抓取的 HTTP 请求导出为 cURL 命令                                                                                                   |
| filter\_flows                  | 使用高级过滤条件过滤已抓取的 HTTP/HTTPS 请求记录                                                                                       |
| get\_certificate\_status       | 获取 Proxyman 根证书的当前状态                                                                                                         |
| install\_certificate           | 安装并信任 Proxyman 根 CA 证书                                                                                                         |
| uninstall\_certificate         | 从钥匙串中移除 Proxyman 根 CA 证书                                                                                                     |
| inject\_terminal               | 启动终端应用，并注入 Proxyman 代理环境变量                                                                                             |
| get\_terminal\_manual\_command | 获取用于手动设置代理环境变量的 bash source 命令                                                                                        |
| answer\_setup\_question        | 回答有关如何从 iOS、Android、浏览器等抓取 HTTPS 的设置问题                                                                             |
| search\_docs                   | 搜索内置的 Proxyman 设置和故障排除文档索引                                                                                             |
| list\_setup\_workflows         | 列出 Proxyman MCP 可引导用户完成的受支持设置流程                                                                                       |
| list\_popular\_workflows       | 按 Proxyman 精选的备用排名，列出热门设置流程                                                                                           |
| open\_proxyman\_screen         | 在 macOS 应用中打开特定的 Proxyman 指南或设置页面                                                                                      |
| run\_guided\_setup             | 在 Proxyman 中为浏览器或 Android 模拟器运行一键自动化                                                                                  |
| list\_reverse\_proxies         | 列出已配置的 Reverse Proxy 条目                                                                                                        |
| create\_reverse\_proxy         | 为 localhost 或自定义本地端口路由创建 Reverse Proxy 条目                                                                               |
| generate\_code                 | 将已抓取的 HTTP 请求生成为 18 种以上语言或框架的代码                                                                                   |
| create\_dns\_spoofing          | 创建 DNS Spoofing 规则，将某个主机名重定向到其他 IP 地址                                                                               |
| list\_dns\_spoofing            | 列出所有 DNS Spoofing 规则及其启用状态                                                                                                 |
| update\_dns\_spoofing          | 更新现有的 DNS Spoofing 规则                                                                                                           |
| get\_external\_proxy           | 获取当前 External Proxy（上游代理）配置                                                                                                |
| set\_external\_proxy           | 为指定协议类型配置 External Proxy 设置                                                                                                 |
| toggle\_no\_caching            | 切换 No Caching 功能（移除缓存相关请求头）                                                                                             |
| inject\_electron               | 启动 Electron 应用，并注入 Proxyman 代理配置                                                                                           |
| open\_proxyman                 | 启动 Proxyman macOS 应用                                                                                                               |
| quit\_proxyman                 | 退出 Proxyman macOS 应用                                                                                                               |

### MCP v2（Proxyman ≥ v6.7.0） {#mcp-v2-proxyman--v670}

* 内置知识库，涵盖 iOS、Android、浏览器、终端、VPN、localhost 以及第三方库
* 新增命令：answer\_setup\_question、search\_docs、list\_setup\_workflows、open\_proxyman\_screen、run\_guided\_setup、create\_reverse\_proxy
* 为聊天客户端提供 MCP 资源和提示词模板
* 支持创建和列出 Reverse Proxy

## 安全性 {#security}

* 服务器仅绑定到 `127.0.0.1`（不对外暴露网络）
* 每个会话使用一个加密令牌，存储在 `~/Library/Application Support/com.proxyman.NSProxy/mcp-handshake.json` 中
* 握手文件的权限为 `0600`（仅所有者可访问）
* 响应中的敏感数据（身份验证令牌、密码、API 密钥）会自动脱敏

## 了解更多 {#learn-more}

* [如何在 Codex 和 Claude Code 中使用 Proxyman MCP](https://proxyman.com/posts/how-to-use-proxyman-mcp-with-codex-and-claude-code)
