Proxyman MCP
공식Proxyman MCP를 사용하면 AI가 자연어 대화를 통해 HTTP 트래픽을 검사하고, 디버깅 규칙을 생성하며, Proxyman을 제어할 수 있습니다.
Proxyman MCP(으)로 무엇을 할 수 있나요?
- 캡처된 트래픽 검사 — AI에게
get_flows를 사용하여 최근 HTTP 흐름을 나열하고get_flow_detail로 전체 요청/응답 세부 정보를 확인하도록 요청하세요. - 대화를 통한 디버깅 규칙 생성 —
create_breakpoint,create_map_local,create_map_remote,create_blacklist를 사용하여 중단점 설정, 로컬 매핑, 원격 매핑 또는 블랙리스트 규칙을 생성하세요. - 프록시 세션 제어 —
toggle_recording으로 녹화를 시작 또는 중지하고clear_session으로 캡처된 모든 흐름을 지우세요. - 요청을 코드로 내보내기 —
export_flow_curl로 캡처된 흐름을 cURL 명령어로 내보내거나generate_code를 사용하여 18개 이상의 언어로 클라이언트 코드를 생성하세요. - SSL 복호화 관리 —
enable_ssl_proxying으로 도메인에 대한 HTTPS 복호화를 활성화하고get_certificate_status로 인증서 설치 상태를 확인하세요. - 고급 프록시 설정 구성 —
set_external_proxy로 업스트림 외부 프록시를 설정하고,create_reverse_proxy로 리버스 프록시 항목을 생성하거나, 캐싱 없음 동작을 전환하세요.
문서
전체 문서 색인은 llms.txt를 참조하세요. 문서 페이지의 Markdown 버전은 페이지 URL에
.md를 추가하여 이용할 수 있으며, 이 페이지는 Markdown으로 제공됩니다.
MCP
1. Proxyman MCP란?
Proxyman MCP(Model Context Protocol)는 AI 어시스턴트(Claude, Cursor 및 기타 MCP 호환 도구)가 Proxyman macOS 앱과 직접 상호 작용할 수 있게 해주는 기능입니다. AI가 자연어 대화를 통해 HTTP 트래픽을 검사하고, 디버깅 규칙을 생성하며, Proxyman을 제어할 수 있도록 합니다.
아키텍처는 두 가지 구성 요소로 이루어져 있습니다.
- MCP HTTP 서버 - 토큰 기반 인증을 통해 localhost의 Proxyman 앱 내에서 실행됩니다.
- MCP CLI 서버 - AI 도구가 연결하는 stdio 기반 MCP 서버로, Proxyman에 명령을 전달합니다.
{% hint style="info" %} AI 에이전트를 위한 Proxyman SKILL.md를 확인하세요. {% endhint %}
✅ 프롬프트 예시
- api.example.com에 대한 최근 API 요청 10개를 보여줘
- /api/users에 대한 모든 POST 요청에 중단점을 생성해 줘
- 실패한 요청을 cURL 명령어로 내보내 줘
- *.stripe.com에 대한 SSL 프록시를 활성화해 줘
- 상태 코드, 헤더, 본문을 변경하는 새 스크립트를 생성해 줘
- 주어진 URL로 Map Local, 중단점 도구를 생성해 줘
2. 장점
| 장점 | 설명 |
|---|---|
| AI 기반 디버깅 | 캡처된 트래픽 분석, 특정 요청 검색, API 응답 설명을 AI에 요청 |
| 핸즈프리 규칙 생성 | 대화를 통해 중단점, Map Local/Remote 규칙 생성 |
| 더 빠른 워크플로우 | 컨텍스트 전환 없이 cURL 명령어 내보내기, 흐름 필터링, 세션 관리 |
| 설계 단계의 보안 | 세션별 토큰 인증을 사용하는 로컬호스트 전용 서버 |
| IDE 통합 | Cursor 및 기타 MCP 호환 도구와 원활하게 작동 |
3. Proxyman MCP 추가 방법
- Proxyman에서 MCP 활성화
- Proxyman → 설정 → MCP 탭 열기
- MCP 서버 시작을 위한 MCP 서버 활성화 토글
- MCP 클라이언트 구성 (예: Cursor, Claude Desktop)
- 에이전트에 Proxyman MCP 추가:
Codex
- 프로덕션 버전:
codex mcp add proxyman -- "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
- Setapp 버전:
codex mcp add proxyman -- "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
Claude Code
- 프로덕션 버전:
{% code overflow="wrap" %}
claude mcp add proxyman --transport stdio -- "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
{% endcode %}
- Setapp 버전:
{% code overflow="wrap" %}
claude mcp add proxyman --transport stdio -- "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
{% endcode %}
수동
사용 중인 AI 에이전트에 따라 에이전트 설정을 편집하여 Proxyman MCP를 사용해야 합니다. 다음은 샘플 setting.json입니다.
- 프로덕션 버전:
{
"mcpServers": {
"proxyman": {
"command": "/Applications/Proxyman.app/Contents/MacOS/mcp-server"
}
}
}
- Setapp 버전
{
"mcpServers": {
"proxyman": {
"command": "/Applications/Setapp/Proxyman.app/Contents/MacOS/mcp-server"
}
}
}
- Proxyman MCP 사용 시작
- Proxyman이 실행 중인지 확인
- AI 어시스턴트에게 Proxyman과 상호 작용하도록 요청
4. 사용 가능한 도구
읽기 전용 도구
| 도구 | 설명 |
|---|---|
get_version | Proxyman 버전 및 빌드 번호 반환 |
get_proxy_status | 녹화 상태, 프록시 포트, SSL 프록시 상태 반환 |
get_flows | 선택적 필터(limit, host_filter, method_filter, status_filter)를 사용하여 캡처된 HTTP/HTTPS 흐름 나열 |
get_flow_detail | 헤더, 본문 미리보기, 쿼리 매개변수, 쿠키를 포함한 특정 흐름의 전체 세부 정보 반환 |
list_rules | 모든 디버깅 규칙(중단점, Map Local, Map Remote, 블랙리스트) 나열 |
get_ssl_proxying_list | SSL 프록시 포함/제외 도메인 목록 반환 |
get_certificate_status | 루트 인증서 설치 상태 반환 |
쓰기 도구
| 도구 | 설명 | 필수 매개변수 |
|---|---|---|
create_breakpoint | 일치하는 요청을 일시 중지/검사하는 중단점 생성 | url (패턴) |
create_map_local | 일치하는 URL에 대한 사용자 지정 응답 반환 | url (패턴) |
create_map_remote | 한 URL에서 다른 URL로 요청 리디렉션 | from_url, to_url |
create_blacklist | URL 패턴과 일치하는 요청 차단 | url (패턴) |
| enable_scripting_tool | 스크립트 생성 | |
enable_ssl_proxying | 도메인에 대한 HTTPS 복호화 활성화 | domain |
세션 제어
| 도구 | 설명 |
|---|---|
clear_session | 현재 세션에서 캡처된 모든 흐름 지우기 |
toggle_recording | 트래픽 녹화 시작 또는 중지 |
흐름 작업
| 도구 | 설명 |
|---|---|
export_flow_curl | 캡처된 요청을 실행 가능한 cURL 명령어로 내보내기 |
filter_flows | AND/OR 조합을 지원하는 여러 기준(url, host, method, status, headers, body)을 사용한 고급 필터링 |
앱 제어
| 도구 | 설명 |
|---|---|
open_proxyman | 실행 중이 아닌 경우 Proxyman 실행 |
quit_proxyman | Proxyman 앱 종료 |
변경 로그
MCP v3 (Proxyman macOS ≥ 6.8.0)
| 이름 | 설명 |
|---|---|
| get_version | 현재 Proxyman macOS 앱 버전과 빌드 번호를 가져옵니다 |
| get_proxy_status | 녹화 상태, 포트 번호, SSL 프록시 상태를 포함한 현재 프록시 상태를 가져옵니다 |
| get_flows | Proxyman의 활성 세션 데이터 소스에서 최근 HTTP/HTTPS 흐름을 가져옵니다 |
| get_flow_detail | 헤더, 본문, 쿼리 매개변수, 쿠키를 포함한 특정 흐름의 상세 정보를 가져옵니다 |
| list_rules | 모든 활성 디버깅 규칙(중단점, 로컬 매핑, 원격 매핑, 블랙리스트, 스크립팅, DNS 스푸핑, 네트워크 상태, 화이트리스트)을 나열합니다 |
| get_ssl_proxying_list | 활성화 상태와 도메인 목록을 포함한 현재 SSL 프록시 설정을 가져옵니다 |
| create_breakpoint | URL 패턴과 일치하는 요청 또는 응답을 일시 중지하고 검사/수정할 수 있는 새 중단점 규칙을 만듭니다 |
| create_map_local | 일치하는 요청에 대해 사용자 지정 응답을 반환하는 로컬 매핑 규칙을 만듭니다 |
| create_map_remote | 요청을 한 URL에서 다른 URL로 리디렉션하는 원격 매핑 규칙을 만듭니다 |
| create_blacklist | URL 패턴과 일치하는 요청을 차단하는 블랙리스트 규칙을 만듭니다 |
| create_scripting_rule | 요청/응답을 수정하는 사용자 지정 JavaScript가 포함된 스크립팅 규칙을 만듭니다 |
| enable_ssl_proxying | HTTPS 트래픽을 해독하기 위해 특정 도메인에 SSL 프록시를 활성화합니다 |
| 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 소스 명령을 가져옵니다 |
| 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 | 브라우저 또는 Android 에뮬레이터용 Proxyman에서 원클릭 자동화를 실행합니다 |
| list_reverse_proxies | 구성된 리버스 프록시 항목을 나열합니다 |
| create_reverse_proxy | localhost 또는 사용자 지정 로컬 포트 라우팅을 위한 리버스 프록시 항목을 만듭니다 |
| generate_code | 캡처된 HTTP 흐름에서 18개 이상의 언어/프레임워크로 코드를 생성합니다 |
| create_dns_spoofing | 호스트 이름을 다른 IP 주소로 리디렉션하는 DNS 스푸핑 규칙을 만듭니다 |
| list_dns_spoofing | 모든 DNS 스푸핑 규칙과 활성화 상태를 나열합니다 |
| update_dns_spoofing | 기존 DNS 스푸핑 규칙을 업데이트합니다 |
| get_external_proxy | 현재 외부 프록시(업스트림 프록시) 구성을 가져옵니다 |
| set_external_proxy | 특정 프로토콜 종류에 대한 외부 프록시 설정을 구성합니다 |
| toggle_no_caching | 캐시 없음 기능(캐시 관련 헤더 제거)을 켜거나 끕니다 |
| inject_electron | Proxyman 프록시 구성이 주입된 Electron 앱을 실행합니다 |
| open_proxyman | Proxyman macOS 애플리케이션을 실행합니다 |
| quit_proxyman | Proxyman macOS 애플리케이션을 종료합니다 |
MCP v2 (Proxyman ≥ v6.7.0)
- iOS, Android, 브라우저, 터미널, VPN, localhost 및 타사 라이브러리를 다루는 내장 지식 베이스
- 새로운 명령: answer_setup_question, search_docs, list_setup_workflows, open_proxyman_screen, run_guided_setup, create_reverse_proxy
- 채팅 클라이언트를 위한 MCP 리소스 및 프롬프트 템플릿
- 리버스 프록시 생성/목록 지원
보안
- 서버는
127.0.0.1에만 바인딩됩니다(네트워크 노출 없음) - 세션별 암호화 토큰이
~/Library/Application Support/com.proxyman.NSProxy/mcp-handshake.json에 저장됩니다 - 핸드셰이크 파일에는
0600권한이 있습니다(소유자 전용 접근) - 민감한 데이터(인증 토큰, 비밀번호, API 키)는 응답에서 자동으로 가려집니다