Skip to main content
Glama

delve-mcp

MCP server for Delve debugger integration

This is a TypeScript-based MCP server that provides a complete interface to the Delve debugger for Go programs. It implements all major Delve commands and capabilities through MCP tools.

Features

Resources

  • List and access debug sessions via delve:// URIs

  • Each session has metadata about its type, target, and port

  • JSON representation for session details and state

Tools

Debug, trace, and analyze Go programs with:

  • Debug commands (debug, attach, exec, test)

  • Core dump analysis

  • Program tracing

  • Replay debugging with rr

  • DAP server support

  • Breakpoint management with conditions

  • Execution control (continue, step, next)

  • Variable inspection and evaluation

  • Backend selection (native, lldb, rr)

  • Logging configuration

  • Session management

Environment Setup

The server requires:

  • Go installed with Delve (go install github.com/go-delve/delve/cmd/dlv@latest)

  • For replay functionality: Mozilla rr (https://github.com/mozilla/rr)

  • Node.js and npm

Related MCP server: MCP Server Playground

Installation

To install Delve MCP server:

npm install @dwisiswant0/delve-mcp

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Configuration

To use with Claude Desktop, add the server config:

  • On Linux: ~/.config/Claude/claude_desktop_config.json.

  • On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json.

  • On Windows: %APPDATA%/Claude/claude_desktop_config.json.

{
  "mcpServers": {
    "delve-mcp": {
      "command": "/path/to/delve-mcp/build/index.js"
    }
  }
}

Available Tools

Debug Commands

  • debug - Debug a Go package in current directory or specified package

  • attach - Attach to a running process by PID

  • exec - Execute and debug a precompiled binary

  • test - Debug tests in current package or specified package

  • core - Examine a core dump file with associated executable

  • dap - Start a Debug Adapter Protocol (DAP) server

  • replay - Replay an rr trace recording

  • trace - Trace program execution with function matching

Control Commands

  • setBreakpoint - Set a breakpoint with optional condition

  • removeBreakpoint - Remove an existing breakpoint

  • continue - Continue program execution

  • next - Step over to next line

  • step - Step into function call

  • stepout - Step out of current function

  • variables - List local variables in current scope

  • evaluate - Evaluate expression in current scope

Configuration Commands

  • version - Get Delve version information

  • setBackend - Configure debug backend (native, lldb, rr)

  • configureLogging - Configure debug logging components

Usage Examples

Starting a Debug Session

// Debug current package
{ name: "debug" }

// Debug with specific package and build flags
{
  name: "debug",
  arguments: {
    package: "./cmd/myapp",
    buildFlags: "-tags=integration"
  }
}

Managing Breakpoints

// Set a breakpoint
{
  name: "setBreakpoint",
  arguments: {
    sessionId: "abc123",
    file: "main.go",
    line: 42,
    condition: "count > 5"
  }
}

Inspecting State

// List variables
{
  name: "variables",
  arguments: {
    sessionId: "abc123"
  }
}

// Evaluate expression
{
  name: "evaluate",
  arguments: {
    sessionId: "abc123",
    expr: "myVar.Field"
  }
}

License

MIT.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dwisiswant0/delve-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server