Embedded Debugger
๐ฆ ๐ - A Model Context Protocol server for embedded debugging with probe-rs - supports ARM Cortex-M, RISC-V debugging via J-Link, ST-Link, and more
What is Embedded Debugger?
Embedded Debugger is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to ๐ฆ ๐ - a model context protocol server for embedded debugging with probe-rs - supports arm cortex-m, risc-v debugging via j-link, st-link, and more
๐ฆ ๐ - A Model Context Protocol server for embedded debugging with probe-rs - supports ARM Cortex-M, RISC-V debugging via J-Link, ST-Link, and more
This server falls under the Developer Tools category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- ๐ฆ ๐ - A Model Context Protocol server for embedded debugging
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx embedded-debuggerConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Embedded Debugger
Embedded Debugger MCP is a Rust-based Model Context Protocol server that integrates AI assistants with probe-rs to provide full debug control over embedded microcontrollers. It exposes 22 tools covering probe management, memory read/write, halt/run/step/reset control, breakpoint management, flash programming, and RTT (Real-Time Transfer) communication for ARM Cortex-M and RISC-V targets via J-Link, ST-Link, DAPLink, and Black Magic Probe. Embedded engineers use it to let Claude analyze firmware behavior, read memory dumps, and control debug sessions without switching between tools.
Prerequisites
- Rust 1.70+ and Cargo installed (for building from source)
- A compatible debug probe: ST-Link V2/V3, J-Link, DAPLink, or Black Magic Probe
- probe-rs compatible USB drivers installed on your host machine
- Target microcontroller board connected via USB debug interface
- An MCP-compatible client such as Claude Desktop or Cursor
Clone and build the embedded debugger
Clone the repository and build the release binary using Cargo. The build produces a native binary that acts as the MCP server.
git clone https://github.com/Adancurusul/embedded-debugger-mcp.git
cd embedded-debugger-mcp
cargo build --releaseInstall probe-rs USB drivers
Ensure the probe-rs USB drivers are installed for your debug probe. On Windows, use Zadig to install WinUSB drivers. On Linux, install the udev rules from the probe-rs documentation.
Connect your debug probe and target
Connect your J-Link, ST-Link, or other probe to your host machine via USB, and connect the probe to your target microcontroller's debug interface (SWD or JTAG).
Configure your MCP client
Add the embedded debugger binary to your MCP client configuration. Set RUST_LOG to control logging verbosity.
{
"mcpServers": {
"embedded-debugger": {
"command": "/path/to/embedded-debugger-mcp/target/release/embedded-debugger-mcp",
"args": [],
"env": {
"RUST_LOG": "info"
}
}
}
}Restart your MCP client and list probes
Restart Claude Desktop or your MCP client. Ask Claude to list available debug probes to confirm the server is running and can detect your hardware.
Embedded Debugger Examples
Client configuration
Add Embedded Debugger MCP to Claude Desktop. Update the command path to point to your compiled binary.
{
"mcpServers": {
"embedded-debugger": {
"command": "/home/user/embedded-debugger-mcp/target/release/embedded-debugger-mcp",
"args": [],
"env": {
"RUST_LOG": "info"
}
}
}
}Prompts to try
Use natural language to control your embedded debug session and analyze firmware.
- "List all available debug probes connected to this machine"
- "Connect to my STM32G431CBTx target via the first ST-Link probe"
- "Read 64 bytes of flash memory starting at address 0x08000000 and display as hex"
- "Set a breakpoint at address 0x08001234, then run the target and wait for it to halt"
- "Attach RTT, read all pending output, then send the command 'L' to toggle the LED"Troubleshooting Embedded Debugger
list_probes returns empty list even with probe connected
USB drivers may not be installed correctly. On Linux, install the probe-rs udev rules (copy the rules file to /etc/udev/rules.d/ and run 'udevadm control --reload'). On Windows, use Zadig to install WinUSB drivers for your probe.
cargo build --release fails with linker errors
Ensure your Rust toolchain is 1.70 or later (run 'rustup update stable'). On Linux, you may need to install libusb-1.0-dev and libudev-dev packages. On macOS, install libusb via Homebrew: 'brew install libusb'.
Connect fails with 'target not found' or 'access port fault'
Verify the target chip name matches exactly what probe-rs expects (e.g., 'STM32G431CBTx'). Check that the SWD/JTAG wiring is correct and the target is powered. Some targets need to be in reset state before connecting โ try the connect-under-reset option.
Frequently Asked Questions about Embedded Debugger
What is Embedded Debugger?
Embedded Debugger is a Model Context Protocol (MCP) server that ๐ฆ ๐ - a model context protocol server for embedded debugging with probe-rs - supports arm cortex-m, risc-v debugging via j-link, st-link, and more It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Embedded Debugger?
Follow the installation instructions on the Embedded Debugger GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Embedded Debugger?
Embedded Debugger works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Embedded Debugger free to use?
Yes, Embedded Debugger is open source and available under the MIT license. You can use it freely in both personal and commercial projects.
Embedded Debugger Alternatives โ Similar Developer Tools Servers
Looking for alternatives to Embedded Debugger? Here are other popular developer tools servers you can use with Claude, Cursor, and VS Code.
Ecc
โ 188.2kThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Javaguide
โ 155.8kJava ้ข่ฏ & ๅ็ซฏ้็จ้ข่ฏๆๅ๏ผ่ฆ็่ฎก็ฎๆบๅบ็กใๆฐๆฎๅบใๅๅธๅผใ้ซๅนถๅใ็ณป็ป่ฎพ่ฎกไธ AI ๅบ็จๅผๅ
Gemini CLI
โ 104.5kA secure MCP server that wraps the Google Gemini CLI, allowing clients to query Gemini models using local OAuth sessions without requiring an API key. It provides tools for model interaction and diagnostics with built-in protection against command in
Awesome MCP Servers
โ 87.3kโญ Curated list of Model Context Protocol (MCP) servers - tools that extend Claude Desktop, Cursor, Windsurf, and other MCP clients with custom capabilities.
MCP Servers
โ 86.0kModel Context Protocol Servers
CC Switch
โ 77.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
Browse More Developer Tools MCP Servers
Explore all developer tools servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Embedded Debugger in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Embedded Debugger?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.