VSCode调试MCP
 
使MCP客户端能够使用断点、表达式求值和程序启动交互式调试代码。
这是一个 主控程序 服务器和VS代码扩展,通过模型上下文协议公开调试功能。它与语言无关——它适用于任何具有有效调试器的调试器 launch.json 在VS代码中。
工具
| 工具 | 操作 | 描述 |
|---|---|---|
debug_execute | 启动、停止、继续、stepOver、stepIn、stepOut | 调试期间控制程序执行 |
debug_breakpoints | 设置、删除、列出 | 管理断点,支持条件、点击数和日志消息 |
debug_inspect | evaluate,stackTrace | 在断点处暂停时检查程序状态 |
入门指南
- 从下载扩展 发布
- 安装扩展
- 如果使用 .vsix 直接转到VS Code中“扩展”中的三个点,然后选择“从VSIX安装…”
- 安装后,您将在调试选项卡中看到一个“MCP调试服务器”面板,显示服务器状态、stdio路径和SSE地址。
克劳德代码
- 使用调试选项卡的MCP调试服务器面板中的“复制克劳德代码设置命令”按钮,或通过VS代码命令调色板(“VSCode Debug MCP:复制克劳德代码安装命令”)复制准备粘贴的设置命令。
- 粘贴并在终端中运行它:
claude mcp add --transport stdio vscode-debug -- node /path/to/mcp-debug.js或者将其添加到您的项目中 .mcp.json:
{
"mcpServers": {
"vscode-debug": {
"command": "node",
"args": ["/path/to/mcp-debug.js"]
}
}
}GitHub Copilot
- 使用VS Code命令“将MCP调试服务器stdio路径复制到剪贴板”将stdio服务器路径复制到您的剪贴板
- 打开VS Code命令面板,运行“MCP:打开工作区文件夹配置”进行编辑
.vscode/mcp.json,然后添加:
{
"servers": {
"vscode-debug": {
"type": "stdio",
"command": "node",
"args": ["/path/to/mcp-debug.js"]
}
}
}配置
mcpDebug.port--服务器端口(默认值:4711)mcpDebug.autostart--激活时自动启动服务器(默认值:true)
当打开多个VS Code窗口时,该扩展处理MCP服务器在窗口之间的优雅切换。
建筑
graph LR
subgraph MCP Clients
A[Claude Code / stdio client]
B[Cursor / SSE client]
end
subgraph Stdio Bridge
C[mcp-debug.js]
end
subgraph VS Code Extension
D[DebugServer]
E[VS Code Debug API]
end
F[Any Debugger
Python, Node.js, C++, Go, ...]
A -- stdio --> C
C -- HTTP POST /tcp --> D
B -- SSE /sse --> D
D --> E
E --> F该扩展为MCP客户端提供了两种连接方式:
- 工作室 --一个独立的Node.js桥接进程(
mcp-debug.js)通过stdio接收MCP请求,并通过HTTP将其转发到扩展的调试服务器。Claude Code和其他基于stdio的客户端使用。 - 上海证券交易所 --客户端直接连接到扩展的SSE端点。由Cursor和其他支持SSE的客户端使用。
两个路径都在后台使用VS Code Debug API,这意味着扩展可以与支持的任何语言/调试器一起使用 launch.json 配置(Python、Node.js、C++、Go等)。
开发中
- 在VS Code中克隆并打开此仓库
- 安装依赖项:
npm install && cd mcp && npm install && cd .. - 构建:
npm run compile - 按F5在新的VS Code窗口中启动扩展
- 更改后重建:
npm run compile
包装
vsce package发布过程
提交消息
所有提交都应遵循常规提交格式:
fix:--Bug修复(补丁版本碰撞)feat:--新功能(小版本凹凸)feat!:/fix!:/refactor!:--重大变化(主要版本碰撞)chore:,docs:,refactor:,test:--无版本冲突
PR测试
每个pull请求都会自动构建一个 .vsix 通过CI下载工件。在合并之前,从GitHub操作“工件”部分下载PR检查,以在本地安装和测试扩展。
释放
当常规提交被推送到 main,release请自动打开(或更新)带有版本升级和更改日志条目的release PR。合并该PR将创建GitHub版本并构建最终版本 .vsix,上传到发布资产。
