Go Delve Debugger MCP Server - MCP服务,MCP服务器,MCP教程

基本能力

产品定位

dlv-mcp 是一个调试工具,专门用于 Go 应用程序的调试,通过与 Delve 调试器的集成,提供强大的调试功能。

核心功能

  • 启动 Go 程序的调试会话
  • 在代码中设置断点
  • 单步执行代码(下一步、步入、步出)
  • 在调试会话上下文中评估表达式
  • 检查变量和堆栈跟踪
  • 管理多个调试会话

适用场景

  • Go 开发者在开发过程中需要调试应用程序
  • AI 助手需要与调试器交互以帮助开发者解决问题
  • 需要自动化调试流程的场景

工具列表

Debug Session Management
  • start_debug: 启动一个新的调试会话
  • terminate_debug: 终止一个调试会话
  • list_debug_sessions: 列出活动的调试会话
Breakpoint Management
  • set_breakpoint: 在调试会话中设置断点
Execution Control
  • continue: 继续执行调试会话
  • next: 单步执行当前行
  • step_in: 步入函数
  • step_out: 步出函数
Inspection
  • evaluate: 在调试会话中评估表达式

常见问题解答

无明确常见问题解答内容。

使用教程

使用依赖

  • Go 1.21 或更高版本
  • 安装 Delve 调试器

sh
go install github.com/go-delve/delve/cmd/dlv@latest

安装教程

sh
go install github.com/xhd2015/dlv-mcp/cmd/dlv-mcp@latest

调试方式

启动 MCP 服务器:

sh
dlv-mcp --listen :9097

然后配置 MCP 服务器地址为 http://localhost:9097/sse,在 Cursor 或任何 MCP 客户端中使用。

检查 MCP 服务器:

sh
bunx @modelcontextprotocol/inspector dlv-mcp

示例工作流程

  1. 启动调试会话:
    start_debug program=/path/to/program.go

  2. 设置断点:
    set_breakpoint session_id=session-123456 file=/path/to/program.go line=15

  3. 继续到断点:
    continue session_id=session-123456

  4. 评估表达式:
    evaluate session_id=session-123456 expression="myVariable"

  5. 单步执行一行:
    next session_id=session-123456

  6. 终止会话:
    terminate_debug session_id=session-123456

架构

服务器由以下组件构建:

  • MCP Server Layer: 使用 mark3labs/mcp-go 实现 Model Context Protocol
  • DAP Client Layer: 与 Delve 的 DAP 服务器通信
  • Session Management: 维护和管理调试会话

使用演示客户端

运行演示:

sh
go run ./demo/main.go

演示客户端展示了如何:
- 使用 JSON-RPC 启动并与 MCP 服务器通信
- 使用正确的格式发送工具调用
- 解析和处理响应
- 优雅地处理错误

查看 demo/main.godemo/README.md 获取更多实现细节。

点击访问

搜索工具

mcp-server-python - MCP服务,MCP服务器,MCP教程

2025-4-29 16:29:19

搜索工具

arxiv-latex MCP Server - MCP服务,MCP服务器,MCP教程

2025-4-29 16:29:41

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索