microsoft/DebugMCP
Gift your VS Code agent a real debugger: breakpoints, stepping, inspection.
DebugMCP – AI 에이전트가 VS Code 디버거를 제어하도록 설정
개요 – DebugMCP는 Microsoft가 관리하는 VS Code 확장 프로그램(및 보조 CLI)으로, 로컬에서 소규모 MCP (Multi-Chat-Protocol) 서버를 실행합니다. 이 서버는 VS Code의 모든 디버깅 작업(시작/중지, 단계별 실행, 중단점, 변수 검사, 식 평가 등)을 MCP 도구로 노출합니다. MCP를 이해하는 모든 AI 코딩 어시스턴트(예: GitHub Copilot, Claude Code, Codex, Cursor, Cline 등)는 이러한 도구를 호출하여, 사용자가 로그를 파싱하는 프롬프트를 작성할 필요 없이 사람이 하는 것과 정확히 같은 방식으로 프로그램을 디버깅할 수 있습니다.
중요성 – 최신 AI 페어 프로그래머는 수정 사항을 제안할 수 있지만, 실행 중인 디버거에 직접 액세스할 수 있는 기능은 부족합니다. DebugMCP는 이러한 격차를 해소하여 에이전트에게 다음과 같은 능력을 제공합니다:
- 파일 또는 테스트에 대한 디버그 세션 시작
- 중단점(조건부 포함) 및 로그 포인트 설정
- 실행 중인 프로세스를 즉시 일시 중지
- 단계별 건너뛰기/진입/탈출, 계속, 재시작 및 중지
- 변수 이름 및 값 쿼리
- 현재 디버그 컨텍스트에서 임의의 식 평가
이 모든 작업은 로컬에서 이루어지며, 네트워크 트래픽이나 자격 증명이 필요하지 않아 강력한 디버거 기본 요소를 안전하게 유지합니다.
주요 구성 요소
| 구성 요소 | 기능 |
|---|---|
| VS Code 확장 프로그램 | http://localhost:3001/mcp에서 MCP 서버를 시작하고, 도구를 등록하며, 지원되는 AI 어시스턴트에 자동으로 등록합니다. |
| DebugMCP CLI (npm 패키지) | VS Code 없이 동일한 MCP 서버를 제공합니다. stdio를 통해 통신하는 모든 Debug Adapter Protocol (DAP) 어댑터와 직접 통신하므로 헤드리스 CI나 원격 컨테이너에서 사용할 수 있습니다. |
debug-live 에이전트 스킬 |
재사용 가능한 스킬 패키지(~/.agents/skills/ 또는 ~/.copilot/skills/에 설치)로, 더 높은 수준의 워크플로우(디버깅 시작 시점, 조사 방법, 언어별 팁)를 포함합니다. |
작동 원리(개요)
- 서버 시작 – 확장 프로그램이 활성화되거나(또는 CLI가 실행될 때) 루프백 인터페이스에 바인딩된 HTTP MCP 서버가 시작됩니다.
- 도구 등록 – 서버는 일련의 도구(예:
start_debugging,add_breakpoint,evaluate_expression)를 광고합니다. 각 도구에는 필요한 매개변수를 설명하는 JSON 스키마가 있습니다. - 에이전트 호출 – MCP를 지원하는 AI 어시스턴트가
{"tool":"add_breakpoint","params":{"fileFullPath":"/src/app.py","line":42}}와 같은 요청을 보냅니다. - 작업 실행 – DebugMCP는 요청을 VS Code의 내장 Debug Adapter(또는 CLI 사용 시 독립형 DAP 어댑터)로 전달하고 결과를 에이전트에게 반환합니다.
- 스킬 가이드 – 에이전트가 선택적
debug-live스킬을 호출하여 단계별 디버깅 계획을 얻음으로써 체계적인 근본 원인 분석을 보장할 수 있습니다.
빠른 시작 (VS Code)
- VS Code Marketplace에서 DebugMCP를 설치합니다(또는
vscode:링크 사용). - 프로젝트를 열고 명령 팔레트에서 **
DebugMCP: Show Agent Selection Popup**을 실행합니다. - 활성화할 AI 어시스턴트(예: Copilot, Claude Code)를 선택합니다.
- 어시스턴트에게 파일이나 테스트를 디버깅하도록 요청하면 자동으로 MCP 도구가 호출됩니다.
빠른 시작 (CLI)
npm install --global debugmcp # CLI 설치
debugmcp configure --agent copilot-cli # 사용할 에이전트 등록
# 서버 시작(백그라운드에서 실행)
debugmcp start
이제 MCP 호환 에이전트가 http://localhost:3001/mcp와 통신할 수 있습니다.
지원되는 언어 및 어댑터
이 확장 프로그램은 VS Code Debug Adapter Protocol 구현이 있는 모든 언어에서 작동합니다. 기본적으로 Python, JavaScript/TypeScript, Java, C/C++, Go, Rust, PHP, Ruby, C#/.NET을 지원합니다. CLI는 stdio를 통해 통신하는 모든 DAP 어댑터(예: Python용 debugpy, C/C++용 lldb-vscode, Java용 java-debug)를 가리킬 수 있습니다.
보안 모델
- 서버는 기본적으로
127.0.0.1및::1에만 바인딩됩니다. 인증되지 않았지만 네트워크에서 접근할 수 없습니다. debugmcp.bindHost를 루프백이 아닌 주소로 변경할 수 있지만(컨테이너 포워딩에 유용), 해당 주소에 접근할 수 있는 모든 사람에게 디버거가 노출됩니다.- 모든 요청은 검증되며, 형식이 잘못되었거나 범위를 벗어난 작업은 거부됩니다.
권장 사용자
- AI 페어 프로그래머에 의존하며 어시스턴트가 실제로 코드를 단계별로 디버깅하기를 원하는 개발자.
- 결정론적 디버깅 기능이 필요한 맞춤형 AI 에이전트를 구축하는 팀.
- 자율 코드 수정 또는 자체 디버깅 LLM을 연구하는 연구원.
추가 정보
- GitHub 저장소 – https://github.com/microsoft/DebugMCP (이슈, 소스 코드, 기여 가이드)
- VS Code Marketplace – VS Code에서 직접 설치.
- npm 패키지 –
npm install -g debugmcp(CLI용) - 데모 GIF – AI 어시스턴트가 중단점을 설정하고 변수를 검사하는 모습.
요약
DebugMCP는 VS Code 디버거를 AI 에이전트가 프로그래밍 방식으로 호출할 수 있는 MCP 노출 서비스로 변환합니다. VS Code 확장 프로그램 및 헤드리스 CLI로 모두 작동하며, DAP 어댑터가 있는 모든 주요 언어를 지원하고, 에이전트가 체계적인 디버깅을 수행하도록 안내하는 재사용 가능한 debug-live 스킬이 포함되어 있습니다. 설치하고 AI 어시스턴트를 등록하여 모델이 사람처럼 코드를 디버깅하게 하세요.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트