← 返回目录
D

DebugMCP

官方
让你的 VS Code AI 代理拥有真正的调试器:断点、单步执行、变量检查。
GitHub 源仓库 ↗
★ 498 Stars 分类 · 开发工具 非常热门
62FMRS · C

DebugMCP 是微软维护的 VS Code 扩展兼 MCP 服务器,把真实的调试器能力(断点、单步、变量检查、表达式求值)交给 AI 编码代理,完全本地运行、开箱即用,并支持主流 MCP 客户端与多种语言。它提供 16 个调试工具,并通过仅回环绑定、Host/Origin 校验、最小权限变量读取和凭据脱敏来收敛安全面。适合在 VS Code 中使用 AI 代理做交互式调试的开发者;不适合非 VS Code 环境、需要网络共享调试端点或期望云端托管服务的场景。

可靠性
9/20
安全与权限
13/20
维护活跃度
12/20
文档质量
15/20
安装易用性
13/20
查看 FMRS 评分方法 →

DebugMCP 是微软维护的 VS Code 扩展,同时作为 MCP 服务器运行,让 AI 编码代理直接控制 VS Code 调试器。代理可以自主设置断点、启动调试会话、逐行单步执行、查看变量值并求值表达式,就像人类开发者一样。它完全在本地运行,默认无需额外配置,支持任何兼容 MCP 的 AI 助手,并支持 VS Code 所支持的各类编程语言(Python、JavaScript/TypeScript、Java、C/C++、Go、Rust、PHP、Ruby、C#/.NET)。服务器通过 Streamable HTTP 在本地回环地址上监听(默认端口 3001),自动检测并提示注册到 GitHub Copilot、GitHub Copilot CLI、Cline、Cursor、Codex、Windsurf、Roo Code、Antigravity 等客户端,也可手动配置。安全方面采用仅回环绑定、Host/Origin 头校验、最小权限变量检查以及凭据脱敏,全部调试数据不出本机。调试流程指导由配套的 debug-live Agent Skill 提供,会被安装到标准 skills 目录中。

工具能力

start_debugging
为某个源代码文件启动调试会话(可指定工作目录、测试名、配置名)
stop_debugging
停止当前调试会话
step_over
执行下一行代码(跳过函数调用)
step_into
步入函数调用内部
step_out
从当前函数中步出
continue_execution
继续执行直到下一个断点
pause_execution
中断自由运行的程序并停在当前位置(无需断点)
restart_debugging
重启当前调试会话
add_breakpoint
在指定行添加断点(可选条件断点)
add_logpoint
添加日志点:执行到该行时输出日志消息而不暂停(支持 {expr} 插值)
remove_breakpoint
移除指定行的断点
clear_all_breakpoints
一次性清除所有断点
list_breakpoints
列出所有活动断点
list_variable_names
列出当前作用域中变量的名称和类型,不读取值
get_variables_values
获取当前执行点指定名称变量的值(最多 50 个,不支持通配符)
evaluate_expression
在调试上下文中求值表达式;可展开的子项仅列出名称和类型

安装接入

  1. 在 VS Code 中安装 DebugMCP 扩展:可通过 VS Code Marketplace 搜索 "DebugMCP",或使用直链 vscode:extension/ozzafar.debugmcpextension,或在扩展面板中安装。2. 安装后扩展会自动激活并在本地端口 3001 上启动 MCP 服务器。3. 扩展会弹窗提示自动注册到你的 AI 助手;也可通过命令面板运行 "DebugMCP: Show Agent Selection Popup" 手动触发。4. 若需手动配置,在 AI 助手的 MCP 设置中添加 Streamable HTTP 服务器,URL 为 http://localhost:3001/mcp(不同客户端的配置格式见 README)。5. 建议为所有 debugmcp 工具启用自动批准以获得流畅的调试工作流。6. 确保已安装目标语言的 VS Code 调试扩展(如 Python 扩展、C# 扩展等)。
claude_desktop_config.json
{
  "mcpServers": {
    "debugmcp": {
      "type": "streamableHttp",
      "url": "http://localhost:3001/mcp",
      "description": "DebugMCP - Debugging tools for AI assistants"
    }
  }
}

选型与风险

适合谁

  • 在 VS Code 中使用 AI 编码代理并希望其具备真实调试能力的开发者
  • 需要自动化根因分析而非仅阅读日志的调试场景
  • 使用 VS Code Remote SSH / Codespaces / WSL 等远程环境的用户
  • 需要覆盖多种编程语言的统一调试工具的团队

不适合谁

  • 不使用 VS Code 或任何兼容 MCP 的 AI 助手的用户
  • 需要将调试服务暴露给网络中其他机器的场景(默认仅回环绑定,修改绑定会带来未认证风险)
  • 不安装对应语言 VS Code 调试扩展就想调试该语言的用户
  • 期望外部托管或云端调试服务的用户(本扩展仅本地运行)

所需权限

  • 在本地回环地址(127.0.0.1 与 ::1)上监听 HTTP 端口,默认 3001(可通过 debugmcp.serverPort 修改)
  • 读取被调试源代码文件及项目中的 .vscode/launch.json 配置
  • 调用 VS Code 调试 API 启动/停止调试会话、设置断点、单步执行
  • 读取调试上下文中的变量值并求值表达式(含凭据脱敏)
  • 在标准 skills 目录(~/.agents/skills/,若存在则 ~/.copilot/skills/)安装 debug-live 技能文件

风险与副作用

  • MCP 端点默认无认证,任何能访问该回环端口的本地进程都可能调用强大的调试原语,例如 evaluate_expression
  • 若将 debugmcp.bindHost 改为 0.0.0.0 或局域网地址,未认证的调试器将暴露给能路由到该地址的任何主机
  • 通过调试器求值表达式可能产生副作用(取决于被调试程序),代理的自动批准会减少人工确认环节
  • 变量脱敏基于名称与凭据形态匹配,可能存在漏报;Null 类值刻意不脱敏,极端情况下仍可能泄露敏感信息
  • 扩展会自动修改 AI 助手的 MCP 注册配置(尽管是提示式)

常见排障

  1. AI 助手无法连接:检查端口 3001 是否被占用,可改用其他端口并同步更新客户端配置;重启 VS Code 并确认扩展已激活
  2. 断点不生效:确认调试的文件正确、行号正确,并已安装对应语言的 VS Code 调试扩展
  3. 多个 VS Code 窗口时被调试窗口抢焦点:在设置中关闭 debug.focusWindowOnBreak 与 debug.focusEditorOnBreak
  4. 扩展未提示注册:从命令面板运行 "DebugMCP: Show Agent Selection Popup",或按 README 手动添加 MCP 配置
  5. 从旧版 SSE 迁移:扩展会在激活时自动将配置迁移为 Streamable HTTP 传输

使用场景

让 AI 代理自动设置断点并单步执行以定位运行时缺陷
在不加日志的情况下检查运行时变量值和表达式
调试单元测试:通过 testName 参数在具体测试用例中命中断点
调试自由运行的程序(如忙循环、嵌入式目标)时暂停并检查状态
多语言项目中的交互式调试(Python、JS/TS、Java、C/C++、Go、Rust、PHP、Ruby、C#/.NET)

支持客户端

GitHub Copilot完整支持
GitHub Copilot CLI完整支持
Cline完整支持
Cursor完整支持
Codex完整支持
Windsurf完整支持
Roo Code完整支持
Antigravity完整支持