Dbgprobe MCP Server logo

Dbgprobe MCP Server

Connects MCP-compatible agents to J-Link probes for flashing, memory access, debugging, RTT, and target control.

Install Dbgprobe MCP Server

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "dbgprobe-mcp-server": {
      "command": "uvx",
      "args": [
        "dbgprobe-mcp-server"
      ],
      "env": {
        "DBGPROBE_BACKEND": "YOUR_VALUE_HERE",
        "DBGPROBE_JLINK_PATH": "YOUR_VALUE_HERE",
        "DBGPROBE_JLINK_GDBSERVER_PATH": "YOUR_VALUE_HERE",
        "DBGPROBE_JLINK_DEVICE": "YOUR_VALUE_HERE",
        "DBGPROBE_INTERFACE": "YOUR_VALUE_HERE",
        "DBGPROBE_SPEED_KHZ": "YOUR_VALUE_HERE",
        "DBGPROBE_MCP_LOG_LEVEL": "YOUR_VALUE_HERE",
        "DBGPROBE_MCP_TOOL_SEPARATOR": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

dbgprobe-mcp-server MCP server gives AI agents structured tools for controlling embedded targets through SEGGER J-Link probes. It runs over stdio, maintains probe sessions, and supports flashing, memory access, reset, halt, stepping, breakpoints, ELF symbols, SVD registers, RTT, plugins, and tracing. Use it when an MCP-compatible development workflow needs conversational or automated interaction with connected microcontrollers. OpenOCD and pyOCD are planned but are not currently working backends.

Use cases

  • Flash firmware and reset a connected microcontroller
  • Read and write peripheral or RAM addresses
  • Inspect ELF symbols and set breakpoints by name
  • Automate flash, reset, read, and validation sequences
  • Monitor target output through RTT

Key features

  • J-Link probe discovery and session management
  • Firmware flashing, erase, reset, halt, resume, and stepping
  • Memory access and breakpoint control
  • ELF symbol and SVD register inspection
  • RTT communication and trace tools
  • Plugin loading and multi-probe connections

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

7/7 checks healthy over the last 42d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 17h ago via OSV.dev · dbgprobe-mcp-server (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars10Stargazers on the source repository.
Last commit7mo agoMost recent push to the default branch.

How Dbgprobe MCP Server works

What dbgprobe-mcp-server MCP server does

dbgprobe-mcp-server MCP server exposes embedded debug operations through the Model Context Protocol. Its working backend is SEGGER J-Link, allowing an agent to discover attached probes, create sessions, flash or erase a target, reset it, and inspect or modify memory.

The server also provides controls for interactive debugging, including halt, resume, single-step, status checks, and breakpoint management. An ELF file can be attached to support symbol lookup and symbol-aware debugging. SVD files provide structured access to peripherals, registers, and fields, including register reads and writes.

Additional tool groups cover Segger RTT communication, plugin management, and trace inspection. Multiple probe connections can be tracked at the same time, with each connection maintaining its own session state.

How it works

The server communicates with an MCP client over standard input and output. The client invokes namespaced tools such as dbgprobe.connect or dbgprobe.mem.read, and receives structured JSON results. A typical session can list probes, connect to a selected target, flash firmware, reset or halt the device, and read memory without manually entering J-Link Commander commands.

J-Link support relies on SEGGER’s command-line software. The server looks for JLinkExe and, where needed, JLinkGDBServerCLExe on the system PATH or in common installation directories. The target device can be configured globally or supplied when a session is created. SWD is the default interface, with JTAG also supported.

Tool names use periods by default. Clients that reject periods in tool names can use an alternate separator through configuration; the README specifically documents this adjustment for Cursor.

Setup and configuration

Install Python 3.11 or newer, the package, and the SEGGER J-Link Software Pack. A packaged installation can be registered with Claude Code using dbgprobe_mcp; editable installation is also documented with pip and uv. VS Code with Copilot uses a project .vscode/mcp.json file, while Cursor uses .cursor/mcp.json.

Useful configuration variables include:

  • DBGPROBE_JLINK_PATH and DBGPROBE_JLINK_GDBSERVER_PATH for explicit SEGGER executable paths.
  • DBGPROBE_JLINK_DEVICE for a default target device such as nRF52840_xxAA.
  • DBGPROBE_INTERFACE and DBGPROBE_SPEED_KHZ for the debug connection.
  • DBGPROBE_MCP_LOG_LEVEL for server logging.
  • DBGPROBE_MCP_TOOL_SEPARATOR when a client cannot accept dotted tool names.
  • DBGPROBE_MCP_PLUGINS to enable all plugins or selected plugin names.

Tracing is enabled by default. DBGPROBE_MCP_TRACE disables it, while DBGPROBE_MCP_TRACE_PAYLOADS includes memory payloads in trace arguments and DBGPROBE_MCP_TRACE_MAX_BYTES limits their size.

Tools and capabilities

The available tool families include probe discovery and control, connection listing, ELF attachment and symbol queries, SVD inspection and register operations, RTT start/read/write/status operations, plugin listing and loading, and trace status or tail operations. Probe controls include erase, flash, reset, halt, go, step, status, memory read/write, and breakpoint set, clear, and list.

Limitations and notes

The current working backend is J-Link. OpenOCD and pyOCD are listed as planned backends, so ST-Link and other hardware supported only through those backends are not currently provided by this implementation. The server requires compatible SEGGER software and a connected supported probe for J-Link operations. It is not affiliated with or sponsored by SEGGER.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Dbgprobe MCP Server

dbgprobe-mcp-server is an MCP server that connects AI agents to SEGGER J-Link debug probes for embedded development. Its main tools list probes, connect to targets, flash and erase firmware, read and write memory, reset, halt, step, manage breakpoints, inspect ELF and SVD data, and use RTT.

Install Python 3.11 or newer, the SEGGER J-Link Software Pack, and the package with pip. Register the `dbgprobe_mcp` command with an MCP client such as Claude Code, or add its stdio configuration to VS Code or Cursor.

Yes, dbgprobe-mcp-server works with Cursor through a `.cursor/mcp.json` configuration. Set `DBGPROBE_MCP_TOOL_SEPARATOR` to `_` because Cursor does not support dots in tool names, and configure the J-Link device if you want a default target.

The working backend supports SEGGER J-Link probes, including EDU, EDU Mini, PLUS, and PRO models. OpenOCD and pyOCD support is planned, so ST-Link, CMSIS-DAP, and other probes are not current working backends through this server.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewDbgprobe MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/dbgprobe-mcp-server?style=directory)](https://allmcps.com/mcp/dbgprobe-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/dbgprobe-mcp-server"><img src="https://allmcps.com/api/badge/dbgprobe-mcp-server?style=directory" alt="Dbgprobe MCP Server on AllMCPs" /></a>