proxy-doctor
AI 코딩 도구를 망가뜨리는 프록시 설정 오류를 진단합니다.
브라우저는 정상 작동하는데 Cursor / VS Code / Windsurf AI 기능이 동작하지 않을 때 — proxy-doctor가 정확한 원인과 해결 방법을 알려줍니다.
문제
AI 코딩 도구(Cursor, Copilot이 포함된 VS Code, Windsurf)는 장기 연결 스트리밍(SSE/HTTP2)에 의존하며, 다음과 같은 경우에 문제가 발생합니다:
시스템 프록시가 수신 대기 중인 프로세스가 없는 localhost 포트를 가리키는 경우
VPN/프록시 앱이 종료되었지만 해당 설정이 macOS 시스템 환경설정에 남아 있는 경우
에디터가
launchctl로부터 오래된 프록시 환경 변수를 상속받은 경우프록시가 실행 중이지만 스트리밍 응답을 버퍼링하여 AI 완성 기능이 끊기는 경우
결과는 “브라우저는 되는데 AI 에디터는 안 된다” — 가장 흔하고 좌절스러운 개발자 경험입니다.
Related MCP server: Inksnow MCP Proxy
확인 항목
proxy-doctor는 macOS 프록시 설정의 5개 계층을 검사합니다:
계층 | 내용 | 방법 |
1. 시스템 프록시 | 모든 네트워크 서비스의 Web/HTTPS/SOCKS 프록시 |
|
2. 잔여 값 | 비활성화되었지만 오래된 localhost 주소가 남아 있는 프록시 | 비활성화되었지만 설정된 항목 파싱 |
3. 포트 상태 | 참조된 프록시 포트가 실제로 수신 대기 중인지 여부 |
|
4. 에디터 설정 |
| 파일 읽기 + 패턴 매칭 |
5. GUI 환경 | GUI 앱 컨텍스트의 |
|
빠른 시작
CLI
# Install
pip install proxy-doctor
# Run diagnosis (JSON output — default, optimized for AI agents)
proxy-doctor check
# Run diagnosis (human-readable output)
proxy-doctor check --human
# Show recommended fixes
proxy-doctor fix
# Check a different editor
proxy-doctor check --editor vscodeMCP 도구로 사용하기 (AI 에이전트용)
proxy-doctor는 AI 에이전트가 직접 호출할 수 있는 MCP 서버로 제공됩니다:
# Install with MCP support
pip install proxy-doctor[mcp]
# Run MCP server
python -m proxy_doctor.mcp_serverMCP 설정에 추가하세요 (예: Cursor ~/.cursor/mcp.json):
{
"mcpServers": {
"proxy-doctor": {
"command": "python3",
"args": ["-m", "proxy_doctor.mcp_server"]
}
}
}참고:
"command"는proxy-doctor[mcp]가 설치된 Python을 가리켜야 합니다.python3이 작동하지 않으면 전체 경로를 사용하세요 (which python3또는python3 -c "import sys; print(sys.executable)"를 실행하여 찾을 수 있습니다).
그러면 AI 에이전트가 다음을 호출할 수 있습니다:
diagnose_proxy(editor="cursor")— 전체 5개 계층 진단과 증거 제공list_fixes(editor="cursor")— 실행 가능한 명령이 포함된 권장 수정 사항supported_editors()— 지원되는 에디터 목록
AI 에이전트용: 빠른 설치
한 줄 설치 (AI 에이전트에 붙여넣으세요):
proxy-doctor를 설치하고 (
pip install proxy-doctor[mcp]) MCP 설정에python -m proxy_doctor.mcp_server명령으로 추가하세요. 그런 다음diagnose_proxy도구를 사용하여 프록시 상태를 확인하세요.
사용자를 위해 proxy-doctor를 설정하는 AI 에이전트라면:
# 1. Install
pip install proxy-doctor[mcp]
# 2. Find the Python path
python3 -c "import sys; print(sys.executable)"
# 3. Add to ~/.cursor/mcp.json (use the path from step 2)
# {
# "mcpServers": {
# "proxy-doctor": {
# "command": "<python-path-from-step-2>",
# "args": ["-m", "proxy_doctor.mcp_server"]
# }
# }
# }
# 4. If MCP is not available, use CLI directly (zero dependencies):
proxy-doctor check # JSON output
proxy-doctor check --human # human-readable
proxy-doctor fix # show fixes (read-only)
proxy-doctor fix --apply # apply fixes (asks for confirmation)데몬 모드 (v0.2+)
proxy-doctor를 자동 상태 모니터링이 포함된 상주 백그라운드 서비스로 실행합니다:
# Start daemon (installs as macOS launchd service)
proxy-doctor daemon start
# Check daemon status
proxy-doctor daemon status
# Stop daemon
proxy-doctor daemon stop
# Check for updates
proxy-doctor update데몬은 5분마다 실행되어 이전 검사와 결과를 비교하고, 상태가 변경되면(예: 정상 → 비정상) macOS 알림을 보냅니다.
메뉴바 (SwiftBar)
# If SwiftBar is installed
cp plugins/swiftbar/proxy-doctor.5m.sh ~/Library/Application\ Support/SwiftBar/Plugins/
chmod +x ~/Library/Application\ Support/SwiftBar/Plugins/proxy-doctor.5m.sh메뉴바에 녹색/빨간색/주황색 표시등을 표시하고 클릭 한 번으로 진단을 실행합니다.
출력 예시
비정상 (사례 A: 프록시 포트가 죽은 경우)
{
"status": "unhealthy",
"diagnosis": {
"case": "A",
"root_cause": "Editor is configured to use proxy at 127.0.0.1:10903, but no process is listening on that port.",
"confidence": "high",
"source": "system proxy (Wi-Fi (http))",
"browser_explanation": "Browser may use a different proxy path (e.g. browser-only mode) or fall back to a direct connection."
},
"fixes": [
{
"fix_id": "clear-system-http-wi-fi",
"description": "Disable http proxy on Wi-Fi",
"command": "networksetup -setwebproxystate \"Wi-Fi\" off",
"risk": "low"
}
]
}정상
proxy-doctor v0.2.0
Editor: cursor | Platform: Darwin
Status: HEALTHY
No proxy contamination detected.지원되는 에디터
에디터 | 설정 감지 | 로그 스캔 | 상태 |
Cursor | 예 | 예 | 지원됨 |
VS Code | 예 | 예 | 지원됨 |
Windsurf | 예 | 예 | 지원됨 |
Claude Desktop | 계획됨 | — | 향후 |
Zed | 계획됨 | 계획됨 | 향후 |
작동 원리
proxy-doctor는 세 가지 실패 패턴을 식별합니다:
사례 A — 프록시 포트가 죽은 경우 (신뢰도 높음): 시스템이나 에디터가 127.0.0.1:port를 가리키지만 수신 대기 중인 프로세스가 없습니다. VPN/프록시 앱이 종료되었지만 해당 설정이 남아 있을 때 발생합니다.
사례 B — 스트리밍 중단 (신뢰도 중간): 프록시가 실행 중이지만 AI 에디터가 의존하는 SSE/스트리밍 연결을 버퍼링합니다. 브라우저 전용 프록시 모드에서 흔합니다.
사례 C — 경로 불일치 (신뢰도 중간): 브라우저와 에디터가 서로 다른 프록시 경로를 사용합니다. 브라우저는 전용 프록시 경로로 작동하지만, 에디터는 오래되었거나 호환되지 않는 경로를 상속받습니다.
플랫폼 지원
macOS: 완전 지원 (시스템 프록시, launchctl, networksetup)
Linux: 부분 지원 (에디터 설정 + 환경 변수, networksetup 없음)
Windows: 아직 미지원
신뢰 및 권한
proxy-doctor는 기본적으로 읽기 전용 설계를 따릅니다. 명시적으로 동의하지 않으면 시스템 변경이 이루어지지 않습니다.
기본 동작 (읽기 전용)
접근 | 내용 | 이유 |
읽기 | 시스템 프록시 설정, 에디터 설정 파일, launchctl 환경 변수, 로컬 포트 상태 | 핵심 진단 기능 |
쓰기 |
| 데몬 상태 유지 |
네트워크 |
| 자동 업데이트 기능 |
하지 않음 | 프록시 설정 수정, 에디터 설정 변경, 원격 분석 전송, 자격 증명 접근 | 설계상 |
선택적 수정 적용
proxy-doctor fix는 권장 명령을 표시하지만 실행하지는 않습니다.
수정을 적용하려면 proxy-doctor fix --apply를 사용하세요:
각 수정 사항은 명령과 위험 수준과 함께 표시됩니다.
각 수정 사항에 대해 개별적으로 확인 메시지가 표시됩니다 (
[y/N]).기본값은 No —
y를 입력하지 않는 한 아무것도 실행되지 않습니다.언제든지 Ctrl+C로 중단할 수 있습니다.
이 2단계 모델을 통해 AI 에이전트는 MCP로 list_fixes()를 안전하게 호출하여 무엇을 수정해야 하는지 확인한 다음, 사용자의 승인을 위해 명령을 제시할 수 있습니다.
피드백
버그를 발견하셨나요? 제안이 있으신가요? 진단이 도움이 되지 않았나요?
GitHub Issues: https://github.com/Jiansen/proxy-doctor/issues/new
AI 에이전트용: JSON 출력에는
feedback.report_issueURL이 포함되어 있습니다. 이슈를 등록할 때 전체 JSON을 포함하세요.
프로그램 방식으로 피드백을 제공하는 AI 에이전트용 (의존성 없음):
# Create a GitHub issue via CLI (requires gh)
proxy-doctor check | gh issue create --repo Jiansen/proxy-doctor \
--title "Diagnosis report: [describe issue]" --body-file -
# Or simply: copy the JSON output into a new issue at
# https://github.com/Jiansen/proxy-doctor/issues/new개발
git clone https://github.com/Jiansen/proxy-doctor.git
cd proxy-doctor
# Install in development mode
pip install -e ".[dev,mcp]"
# Run tests
make test
# Run linter
make lintproxy-doctor가 프록시 문제를 해결하는 데 도움이 되었다면 GitHub에서 별표를 눌러 주세요. 다른 사람들이 이 도구를 발견하는 데 도움이 됩니다.
라이선스
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityBmaintenanceProfessional local context management and system diagnostic tools for AI IDEs (Cursor, Trae, Antigravity, Windsurf).36771MIT
- Alicense-qualityDmaintenanceProxies MCP requests from Cursor IDE to a custom HTTP server, enabling custom tool integrations.121ISC
- AlicenseAqualityAmaintenanceDiagnose connectivity and inspect tunnels locally from your AI assistant.1912MIT
- AlicenseAqualityDmaintenanceNetwork diagnostics tool for AI agents that provides DNS lookup, IP geolocation, SSL certificate inspection, WHOIS queries, and HTTP latency testing.5361MIT
Related MCP Connectors
Find your AI agent's likely failure mode, get runtime settings, and clarify ambiguous prompts.
Lints + auto-fixes how AI coding agents discover any new product. 24 rules, 6 tools, score 0-100.
Bug translation for vibe coders: plain-English diagnosis + paste-ready fix in your AI coding agent
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Jiansen/proxy-doctor'
If you have feedback or need assistance with the MCP directory API, please join our Discord server