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

MCP Dap Server

MCP Server

一个基于模型上下文协议(MCP)的服务器,通过调试适配器协议(DAP)提供调试功能,使AI助手和其他MCP客户端能够与多种编程语言的调试器交互。

工具数

13

提示词数

0

GitHub Stars

84

资源数

0
调试工具GoClaude开发工具Claude

安装说明

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

作者 / 组织

go-delve

提供方

go-delve

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

MCP DAP服务器

一种模型上下文协议(MCP)服务器,通过调试适配器协议(DAP)提供调试功能。该服务器使AI助手和其他MCP客户端能够与各种编程语言的调试器进行交互。

概述

MCP DAP服务器充当MCP客户端和DAP兼容调试器之间的桥梁,允许对调试会话进行编程控制。它提供了一套全面的调试工具,可用于:

  • 启动和停止调试会话
  • 设置断点(基于行和基于函数)
  • 控制程序执行(继续、介入/退出/结束、暂停)
  • 检查程序状态(线程、堆栈跟踪、变量、作用域)
  • 评估表达式
  • 附加到正在运行的进程
  • 处理异常

演示

特性

  • 统一调试启动:单人 debug 该工具处理源代码、二进制和附加模式
  • 自动上下文:执行控制工具返回完整状态(位置、堆栈、变量)
  • 简化的API:13个工具涵盖所有调试操作
  • 断点管理:设置行和函数断点,运行到游标
  • 全面状态检查:在一次调用中堆栈跟踪、作用域和变量
  • 表达式求值:根据上下文评估和修改变量
  • 工艺附件:附加到正在运行的进程
  • 拆卸支架:查看内存地址处的反汇编代码

安装

先决条件

  • 转到1.24.4或更高版本
  • 适用于目标语言的DAP兼容调试器

从源头构建

git clone https://github.com/go-delve/mcp-dap-server
cd mcp-dap-server
go build -o bin/mcp-dap-server

用法

通过MCP连接

服务器使用stdio传输,允许AI代理按需生成它。使用二进制文件的路径配置MCP客户端。

MCP客户端配置示例

此配置适用于 Gemini CLI 以及类似的MCP客户端:

{
  "mcpServers": {
    "dap-debugger": {
      "command": "mcp-dap-server",
      "args": [],
      "env": {}
    }
  }
}

Claude代码配置

claude mcp add mcp-dap-server /path/to/mcp-dap-server

可用工具

会话管理

debug

启动调试会话。支持四种模式:

  • 来源:编译和调试Go源代码
  • 二进制:调试预编译的可执行文件
  • 核心:调试核心转储文件
  • 附加:附加到正在运行的进程

参数:

  • mode (字符串,必填):“源”、“二进制”、“核心”或“附加”之一
  • path (string):源文件或二进制文件的路径(源/二进制模式需要;GDB的核心模式可选,可以自动检测)
  • args (array):传递给程序的参数
  • coreFilePath (string):核心转储文件的路径(核心模式需要)
  • processId (数字):进程ID(附加模式所需)
  • breakpoints (数组):运行前要设置的断点(文件:行或函数名)
  • stopOnEntry (boolean):在程序入口点停止
  • port (编号):DAP服务器端口

停止时返回完整上下文(位置、堆栈跟踪、变量)。

stop

结束调试会话。终止被调试对象并停止调试器。

restart

使用可选的新参数重新启动调试会话。

  • 参数:

- arguments (数组,可选):新程序参数

断点

breakpoint

在file:行位置或函数上设置断点。

  • 参数 (其中之一):

- file (字符串)+ line (number):源文件和行号 - function (string):函数名称

clear-breakpoints

从文件中删除断点或清除所有断点。

  • 参数:

- file (字符串,可选):清除此文件中的断点 - all (布尔值,可选):清除所有断点

执行控制

continue

继续程序执行。可选择运行到特定位置。

  • 参数:

- to (对象,可选):运行到光标目标(文件+行或函数)

停止时返回完整上下文。

step

逐步执行代码。

  • 参数:

- mode (string,必填):“over”、“in”或“out”中的一个

返回新位置的完整上下文。

pause

暂停程序执行。

  • 参数:

- threadId (number):要暂停的线程ID

状态检测

context

获取完整的调试上下文,包括当前位置、堆栈跟踪和所有变量。

  • 参数:

- threadId (数字,可选):线程ID - frameId (数字,可选):堆栈帧ID

evaluate

在当前调试上下文中计算表达式。

  • 参数:

- expression (string):要计算的表达式 - frameId (数字,可选):帧上下文 - context (字符串,可选):评估上下文('watch'、'repl'、'hover')

set-variable

修改调试程序中的变量值。

  • 参数:

- variablesReference (number):从上下文引用的变量 - name (string):变量名称 - value (string):新值

项目信息

info

获取程序元数据。

  • 参数:

- type (字符串,必填):“源”或“模块”之一

disassemble

在内存地址处反汇编代码。

  • 参数:

- memoryReference (string):内存地址 - instructionOffset (数字,可选):地址偏移 - instructionCount (编号):拆卸说明编号

贡献

欢迎投稿!请随时提交拉取请求。

许可证

麻省理工学院

致谢

目录标签

目录标签

调试工具GoClaude开发工具本地部署模型上下文协议开发辅助AI助手集成程序调试

支持客户端

Claude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

13

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP