Token导航 LogoToken导航TokenDH.com
Vscode MCP Debugger logo
开发工具未说明官方级别未说明来源级核验

Vscode MCP Debugger

MCP Server

一款支持多种编程语言的AI驱动调试工具,集成VS Code和GitHub Copilot,提供智能断点、性能分析和挂起检测功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
性能分析TypeScriptVS CodeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Digital-Defiance

提供方

Digital-Defiance

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

VS代码的MCP调试器

支持多语言的VS Code人工智能调试。通过模型上下文协议与GitHub Copilot和AI代理集成。通过调试适配器协议调试JavaScript、TypeScript、Python、Java、C/C++、Go、Rust、PHP、Ruby等。

注: VS Code扩展通过调试适配器协议支持所有语言。独立的MCP服务器(用于VS Code之外的AI代理)仅通过Chrome DevTools协议支持Node.js/JavaScript。

🔗 仓库

此包现在保存在自己的存储库中: ****

此存储库是 AI 能力套件 在GitHub上。

特性

🐛 高级调试

  • VS代码扩展:通过调试适配器协议提供多语言支持(JavaScript、TypeScript、Python、C/C++、Java、Go、Rust、PHP、Ruby等)
  • 独立MCP服务器:通过Chrome DevTools协议进行Node.js/JavaScript调试
  • 智能断点:AI根据代码分析建议断点位置
  • 条件断点:仅在满足特定条件时中断
  • 挂起检测:自动检测无限循环和挂起进程(仅限Node.js)
  • 源地图支持:使用完整的源代码映射集成调试TypeScript和其他编译语言
  • 代码透镜:函数、循环和错误处理程序中的内联断点建议

📊 性能分析

  • CPU性能分析:识别性能瓶颈
  • 内存配置文件:拍摄堆快照并检测内存泄漏
  • 绩效时间表:跟踪执行事件和时间

🤖 人工智能集成

  • GitHub复制品就绪:与GitHub Copilot无缝协作
  • MCP协议:向AI代理公开调试功能
  • 聪明的建议:AI驱动的调试建议

🧪 测试框架支持

  • VS代码扩展:Jest、Mocha、Vitest(JS/TS)、pytest(Python)、JUnit(Java)、go test(go)、cargo test(Rust)等等
  • 独立MCP服务器:Jest、Mocha、Vitest(仅限Node.js)

🎨 语言服务器协议(LSP)功能

代码智能

  • 悬停信息:将鼠标悬停在变量上以查看调试说明和检查提示
  • 签名帮助:所有调试器函数的实时参数提示和文档
  • 内联提示:显示返回类型(会话id、断点id、变量类型)的内联类型注释
  • 文件符号:显示调试会话、断点、检查和挂起检测的大纲视图
  • 语义令牌:调试器函数和变量的语法突出显示

代码操作(4个功能)

  • 将console.log转换为断点:使用监视表达式将日志语句转换为适当的断点
  • 删除console.log:清理调试语句
  • 裹在试抓:围绕有风险的操作添加错误处理(例如JSON.parse)
  • 添加挂起检测:为无限循环插入挂起检测注释

导航和层次结构

  • 调用层次结构:可视化调试器函数依赖关系和调用关系
  • 类型层次:探索调试器类型关系(DebugSession、断点、StackFrame、变量)
  • 文档链接:调试器文档的快速链接
  • 转到定义:导航到调试器函数定义

代码编辑

  • 折叠范围:折叠/展开调试会话块
  • 选择范围:调试器代码的智能选择扩展
  • 链接编辑:同时编辑相关调试器标识符
  • 颜色提供者:用于诊断的视觉严重性指示器

诊断与验证

  • 无限循环检测:警告 while(true) 带有悬挂检测建议的图案
  • 缺少错误处理:建议尝试捕获JSON.parse等操作
  • Console.log提示:建议使用断点而不是console.log进行调试
  • 实时验证:键入时即时反馈

安装

来自VS代码市场

  1. 打开VS代码
  2. 转到扩展(Ctrl+Shift+X/Cmd+Shift+X)
  3. 搜索“MCP调试器”
  4. 单击安装

安装MCP调试器服务器

该扩展需要MCP调试器服务器才能运行。全局安装:

npm install -g @ai-capabilities-suite/mcp-debugger-server

或者将其安装到您的项目中:

npm install --save-dev @ai-capabilities-suite/mcp-debugger-server

从VSIX文件

code --install-extension ts-mcp-debugger-1.0.0.vsix

快速开始

1.开始调试

选项A:使用命令选项板

  1. 打开任何源代码文件(JavaScript、TypeScript、Python、Java等)
  2. Ctrl+Shift+P (Mac上的Cmd+Shift+P)
  3. 键入“MCP调试器:启动调试会话”
  4. 按Enter键

选项B:使用调试配置

  1. 打开调试视图(Ctrl+Shift+D/Cmd+Shift+D)
  2. 点击“创建launch.json文件”
  3. 选择“MCP Node.js调试器”
  4. 按F5开始调试

2.检测悬挂

  1. 打开一个可能有无限循环的文件
  2. Ctrl+Shift+P (Mac上的Cmd+Shift+P)
  3. 类型“MCP调试器:检测挂起进程”
  4. 查看挂起检测结果

3.设置智能断点

  1. 将光标放在一条线上
  2. 右键单击并选择“MCP调试器:设置智能断点”
  3. 从AI建议的断点位置中选择

配置

设置

在VS代码设置中配置扩展(Ctrl+, / Cmd+,):

{
  "mcp-debugger.serverPath": "",
  "mcp-debugger.autoStart": true,
  "mcp-debugger.defaultTimeout": 30000,
  "mcp-debugger.enableHangDetection": true,
  "mcp-debugger.hangDetectionTimeout": 5000,
  "mcp-debugger.enableProfiling": false,
  "mcp-debugger.logLevel": "info"
}

启动配置

添加到 .vscode/launch.json:

调试当前文件

{
  "type": "mcp-node",
  "request": "launch",
  "name": "MCP Debug Current File",
  "program": "${file}",
  "cwd": "${workspaceFolder}",
  "enableHangDetection": true
}

使用分析进行调试

{
  "type": "mcp-node",
  "request": "launch",
  "name": "MCP Debug with Profiling",
  "program": "${workspaceFolder}/index.js",
  "cwd": "${workspaceFolder}",
  "enableProfiling": true,
  "enableHangDetection": true
}

调试Jest测试

{
  "type": "mcp-node",
  "request": "launch",
  "name": "MCP Debug Jest",
  "program": "${workspaceFolder}/node_modules/.bin/jest",
  "args": ["--runInBand"],
  "cwd": "${workspaceFolder}",
  "enableHangDetection": true
}

命令

命令描述快捷方式
MCP Debugger: Start Debug Session开始调试当前文件-
MCP Debugger: Detect Hanging Process检测无限循环-
MCP Debugger: Set Smart Breakpoint设置AI建议断点-
MCP Debugger: Start CPU Profiling启动CPU分析器-
MCP Debugger: Take Heap Snapshot拍摄内存快照-

LSP命令(可通过MCP协议获得)

命令描述
mcp.debugger.start通过MCP启动调试会话
mcp.debugger.setBreakpoint通过MCP设置断点
mcp.debugger.continue恢复执行
mcp.debugger.stepOver跨过当前线路
mcp.debugger.stepInto进入功能
mcp.debugger.stepOut退出功能
mcp.debugger.pause暂停执行
mcp.debugger.inspect检查变量
mcp.debugger.getStack获取调用堆栈
mcp.debugger.detectHang检测悬挂过程
mcp.debugger.profileCPU启动CPU性能分析
mcp.debugger.profileMemory获取内存快照

LSP功能正在发挥作用

代码镜头断点建议

扩展程序会自动在战略位置建议断点:

function processData(items) {  // 🔴 Set Breakpoint
  for (let i = 0; i < items.length; i++) {  // 🔍 Debug Loop
    try {
      const result = transform(items[i]);
      results.push(result);
    } catch (error) {  // ⚠️ Debug Error Handler
      console.error(error);
    }
  }
}

签名帮助

键入时获取实时参数提示:

debugger_start(
  // ↓ Shows: command: string, args?: string[], cwd?: string, timeout?: number
  'node',
  ['app.js'],
  '/path/to/project',
  30000
);

内联提示

请参阅内联返回类型:

const session = debugger_start('node', ['test.js']);  // → session-id
const bp = debugger_set_breakpoint(session, 'test.js', 10);  // → breakpoint-id
const value = debugger_inspect(session, 'user.age');  // → number

代码操作

快速修复程序会自动出现:

// Before: console.log statement with hint
console.log(user.name);  // 💡 Consider using breakpoints instead

// Quick Fix 1: Convert to breakpoint
// Watch: user.name
debugger; // Breakpoint - inspect user.name

// Quick Fix 2: Remove console.log
// (statement removed)

诊断

实时警告和建议:

// ⚠️ Warning: Potential infinite loop detected
while (true) {
  // Consider using hang detection
}

// ℹ️ Info: Consider wrapping in try-catch
const data = JSON.parse(input);

调用层次结构

可视化函数依赖关系:

debugger_continue
  ↓ depends on
  debugger_set_breakpoint
    ↓ depends on
    debugger_start

类型层次

探索类型关系:

Object
  ├── Breakpoint
  ├── StackFrame
  └── Variable

EventEmitter
  └── DebugSession

使用示例

示例1:调试Node.js应用程序

// app.js
function calculateSum(numbers) {
  let sum = 0;
  for (let i = 0; i < numbers.length; i++) {
    sum += numbers[i];
  }
  return sum;
}

const result = calculateSum([1, 2, 3, 4, 5]);
console.log(result);
  1. 打开 app.js
  2. 在第3行(循环内部)设置断点
  3. 按F5开始调试
  4. 使用F10单步执行代码(Step Over)
  5. 检查调试侧栏中的变量

示例2:检测无限循环

// hang.js
function infiniteLoop() {
  let i = 0;
  while (true) {
    i++;
    // This will hang forever
  }
}

infiniteLoop();
  1. 打开 hang.js
  2. 运行“MCP调试器:检测挂起进程”
  3. 查看显示无限循环位置的挂起检测结果

示例3:配置文件性能

// slow.js
function slowFunction() {
  let result = 0;
  for (let i = 0; i < 1000000; i++) {
    result += Math.sqrt(i);
  }
  return result;
}

slowFunction();
  1. 打开 slow.js
  2. 在启用分析的情况下开始调试
  3. 运行“MCP调试器:启动CPU分析”
  4. 让代码执行
  5. 查看CPU配置文件以识别瓶颈

GitHub复制集成

MCP调试器与GitHub Copilot无缝协作,用于人工智能辅助调试:

  1. 调试上下文:副驾驶可以访问调试信息
  2. 聪明的建议:获取基于AI的调试建议
  3. 断点建议:副驾驶建议最佳断点位置
  4. 错误分析:Copilot有助于分析错误和异常
  5. 自主调试:Copilot可以自动调试代码

Copilot快速入门

  1. 打开副驾驶聊天(Ctrl+Shift+I/Cmd+Shift+I)
  2. 问:“调试此文件并找到错误”
  3. Copilot将自动使用MCP调试器工具

对话示例

You: "Debug this function and tell me why it returns undefined"
Copilot: [Starts debug session, sets breakpoints, inspects variables, explains issue]

You: "Check if this script has an infinite loop"
Copilot: [Uses hang detection, identifies loop location, suggests fix]

You: "Why is this function so slow?"
Copilot: [Profiles code, identifies bottlenecks, suggests optimizations]

了解更多

请参阅 副驾驶集成指南 用于:

  • 详细的设置说明
  • 完整的调试工作流程
  • 示例对话
  • 提示和最佳实践
  • 故障排除指南

AI代理的LSP功能

语言服务器协议集成使AI代理能够:

1. 理解代码上下文

  • 访问文档符号以标识调试会话和断点
  • 使用语义标记来理解调试器特定的语法
  • 导航类型层次结构以了解调试器数据结构

2. 提供智能建议

  • 使用代码镜头在最佳位置建议断点
  • 推荐常见调试模式的快速修复
  • 提供签名帮助以正确使用调试器函数

3. 验证码

  • 检测无限循环并建议挂起检测
  • 识别缺失的错误处理
  • 警告低效的调试实践(console.log)

4. 导航代码

  • 使用调用层次结构了解调试器函数依赖关系
  • 按照文档链接访问相关文档
  • 导航调试器类型的类型层次结构

示例:使用LSP功能的AI代理

// AI agent analyzes code using LSP
// 1. Gets document symbols → finds existing breakpoints
// 2. Uses call hierarchy → understands function dependencies
// 3. Checks diagnostics → identifies infinite loop warning
// 4. Suggests code action → adds hang detection
// 5. Provides signature help → shows correct parameters

// AI's suggestion:
const session = debugger_start('node', ['app.js'], process.cwd(), 30000);
const result = debugger_detect_hang('node', ['app.js'], 5000, 100);
if (result.hung) {
  console.log(`Hang detected at ${result.location}`);
}

故障排除

MCP服务器未启动

问题:扩展显示“MCP调试器服务器未运行”

解决方案:

  1. 检查是否安装了Node.js: node --version
  2. 安装MCP服务器: npm install -g @ai-capabilities-suite/mcp-debugger-server
  3. 如果需要,在设置中设置自定义服务器路径
  4. 重新启动VS代码

断点不起作用

问题:未命中断点

解决方案:

  1. 确保为TypeScript启用源映射
  2. 检查文件路径是否为绝对路径
  3. 验证程序是否确实在执行代码
  4. 尝试在第一行设置断点

悬挂检测假阳性

问题:挂起检测报告挂起合法的长时间运行操作

解决方案:

  1. 增加 mcp-debugger.hangDetectionTimeout 在设置中
  2. 禁用特定调试会话的挂起检测
  3. 改用条件断点

性能问题

问题:调试速度慢

解决方案:

  1. 如果不需要,禁用分析
  2. 减少断点数量
  3. 增加超时值
  4. 关闭其他VS代码扩展

需求

  • VS Code:1.85.0或更高版本
  • 操作系统:Windows、macOS或Linux
  • 用于VS代码扩展(多语言):

- JavaScript/TypeScript:Node.js 16.x或更高版本 - python:带有debugpy扩展名的Python 3.x - Java:带有Java调试服务器扩展的JDK - C/C++:带有C/C++扩展的GDB或LLDB - :使用deep扩展的Go工具链 - :带有CodeLLDB扩展名的Rust工具链 - 其他语言:安装相应的VS Code调试扩展

  • 适用于独立MCP服务器(仅限Node.js):

- Node.js:16.x或更高 - JavaScript/TypeScript:完全支持源地图

扩展设置

此扩展有助于以下设置:

  • mcp-debugger.serverPath:MCP调试器服务器可执行文件的路径
  • mcp-debugger.autoStart:打开VS Code时自动启动MCP服务器
  • mcp-debugger.defaultTimeout:调试操作的默认超时(ms)
  • mcp-debugger.enableHangDetection:启用自动挂起检测
  • mcp-debugger.hangDetectionTimeout:挂起检测超时(ms)
  • mcp-debugger.enableProfiling:启用性能分析功能
  • mcp-debugger.logLevel:日志级别(调试、信息、警告、错误)

已知问题

  • 在慢速网络上,WebSocket连接可能会超时
  • 对于Types/transpiled语言,源映射必须内联或位于同一目录中
  • 某些Node.js本机模块可能无法调试
  • VS代码扩展:特定于语言的功能取决于安装的调试适配器
  • 独立MCP服务器:仅支持Node.js/JavaScript调试(不支持Python、Java等)
  • 悬挂检测和分析:仅Node.js(不适用于其他语言)

发布说明

1.5.0

LSP主要更新:

  • 13个新的LSP功能 用于增强代码智能
  • 代码操作:将console.log转换为断点,添加try-catch,删除日志记录
  • 签名帮助:所有调试器函数的实时参数提示
  • 内联提示:返回值的内联类型注释
  • 文件符号:调试会话和断点的大纲视图
  • 语义令牌:调试器代码的语法突出显示
  • 调用层次结构:可视化函数依赖关系
  • 类型层次:探索调试器类型关系
  • 诊断:具有无限循环检测的实时验证
  • 代码透镜:内联断点建议
  • 文档链接:快速访问文档
  • 折叠范围:折叠/展开调试块
  • 选择范围:智能选择扩展
  • 链接编辑:同步标识符编辑
  • 颜色提供者:视觉严重性指示器
  • 80+综合测试 LSP功能
  • E2E测试 适用于所有LSP功能

1.0.0

初始版本:

  • 使用MCP集成进行高级调试
  • 挂起检测
  • CPU和内存分析
  • 智能断点建议
  • GitHub Copilot集成
  • 测试框架支持(Jest、Mocha、Vitest)

贡献

发现错误或有功能请求?请打开一个问题 .

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

详细信息

______________________________________________________________________

享受AI调试! 🚀

目录标签

目录标签

性能分析TypeScriptVS CodeAI调试本地部署多语言支持VSCode扩展GitHubCopilot集成

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP