MCP Directory

Embedded Debugger MCP Server

Debug embedded systems (ARM Cortex-M, RISC-V) from AI assistants via probe-rs.

Unverified
stdio (local)
No auth
Stale
Rust

Add to your client

Copy the config for your MCP client and paste it into its config file.

Install / run
git clone https://github.com/adancurusul/embedded-debugger-mcp.git && cd embedded-debugger-mcp && cargo build --release

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "embedded-debugger-mcp-server": {
      "command": "/path/to/debugger-mcp-rs/target/release/embedded-debugger-mcp",
      "args": [],
      "env": {
        "RUST_LOG": "info"
      }
    }
  }
}

Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf

Before you start

  • Rust 1.70+ to build from source
  • A probe-rs compatible debug probe (ST-Link V2/V3, J-Link, or DAPLink) with drivers installed
  • A supported target board (e.g. STM32 microcontroller)
  • USB connection to the probe and target board

About Embedded Debugger MCP Server

An MCP server that bridges AI assistants to embedded debug hardware through probe-rs. It provides 22 tools for probe discovery and connection, memory operations, debug control, breakpoints, flash programming, RTT communication, and session management. Supports ARM Cortex-M (M0/M0+/M3/M4/M7/M23/M33), RISC-V cores, and basic ARM Cortex-A, across J-Link, ST-Link, DAPLink, Black Magic Probe, and FTDI probes. Tested end-to-end with an STM32G431CBTx board and ST-Link V2.

Tools & capabilities (22)

list_probes

Discover available debug probes on the system.

connect

Connect to a probe and target chip.

probe_info

Get detailed session information.

read_memory

Read flash/RAM with multiple data formats.

write_memory

Write to target memory.

halt

Stop target execution.

run

Resume target execution.

reset

Perform a hardware or software reset.

step

Single instruction stepping.

set_breakpoint

Set hardware or software breakpoints.

clear_breakpoint

Remove breakpoints.

flash_erase

Erase flash memory sectors or the whole chip.

flash_program

Program ELF/HEX/BIN files to flash.

flash_verify

Verify flash contents.

rtt_attach

Connect to RTT communication.

rtt_detach

Disconnect RTT.

rtt_channels

List available RTT channels.

rtt_read

Read from RTT up channels.

rtt_write

Write to RTT down channels.

run_firmware

Complete deployment plus RTT communication.

get_status

Get the current debug status.

disconnect

Cleanly terminate the session.

When to use it

  • Flashing firmware to an STM32 or other microcontroller and verifying the program from an AI assistant.
  • Inspecting and modifying target memory (flash/RAM) during debugging.
  • Controlling execution with halt/run/reset/step and managing breakpoints interactively.
  • Interactive bidirectional RTT communication — streaming live data and sending control commands to firmware.
  • Systematically testing debug workflows across probe management, memory, breakpoints, flash, and RTT.

Security notes

Runs as a local stdio process and controls real debug hardware (flash erase/program, memory write, target reset). Only connect it to probes and target boards you intend to expose to the AI assistant.

Embedded Debugger MCP Server FAQ

Which debug probes are supported?

J-Link (all variants), ST-Link V2/V3, ARM DAPLink-compatible probes, Black Magic Probe, and FTDI-based debug probes.

Which target architectures work?

ARM Cortex-M (M0, M0+, M3, M4, M7, M23, M33) and various RISC-V cores, with basic support for ARM Cortex-A.

Is there a prebuilt package?

No. The README documents building from source with cargo build --release; there is no npm or other registry package listed.

How does it connect to an MCP client?

Over stdio. You point the client (e.g. Claude Desktop) at the compiled embedded-debugger-mcp binary via a command entry in the mcpServers config.

Alternatives to Embedded Debugger MCP Server

Compare all alternatives →

Microsoft's official browser-automation MCP using Playwright's accessibility tree (no vision model).

Featured
Verified
stdio (local)
No auth
TypeScript
12 tools
Updated 13 days agoRepo

Up-to-date, version-specific library documentation injected into your coding agent.

Verified
stdio (local)
API key
TypeScript
2 tools
Updated 17 days agoRepo

LSP-powered coding agent toolkit: semantic symbol search, references and structural edits.

Verified
stdio (local)
No auth
Python
11 tools
Updated 15 days agoRepo