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/에 설치)로, 더 높은 수준의 워크플로우(디버깅 시작 시점, 조사 방법, 언어별 팁)를 포함합니다.

작동 원리(개요)

  1. 서버 시작 – 확장 프로그램이 활성화되거나(또는 CLI가 실행될 때) 루프백 인터페이스에 바인딩된 HTTP MCP 서버가 시작됩니다.
  2. 도구 등록 – 서버는 일련의 도구(예: start_debugging, add_breakpoint, evaluate_expression)를 광고합니다. 각 도구에는 필요한 매개변수를 설명하는 JSON 스키마가 있습니다.
  3. 에이전트 호출 – MCP를 지원하는 AI 어시스턴트가 {"tool":"add_breakpoint","params":{"fileFullPath":"/src/app.py","line":42}}와 같은 요청을 보냅니다.
  4. 작업 실행 – DebugMCP는 요청을 VS Code의 내장 Debug Adapter(또는 CLI 사용 시 독립형 DAP 어댑터)로 전달하고 결과를 에이전트에게 반환합니다.
  5. 스킬 가이드 – 에이전트가 선택적 debug-live 스킬을 호출하여 단계별 디버깅 계획을 얻음으로써 체계적인 근본 원인 분석을 보장할 수 있습니다.

빠른 시작 (VS Code)

  1. VS Code Marketplace에서 DebugMCP를 설치합니다(또는 vscode: 링크 사용).
  2. 프로젝트를 열고 명령 팔레트에서 **DebugMCP: Show Agent Selection Popup**을 실행합니다.
  3. 활성화할 AI 어시스턴트(예: Copilot, Claude Code)를 선택합니다.
  4. 어시스턴트에게 파일이나 테스트를 디버깅하도록 요청하면 자동으로 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 어시스턴트를 등록하여 모델이 사람처럼 코드를 디버깅하게 하세요.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트