# McuBuddy MCP server

> Enables AI assistants to perform real-hardware MCU debugging, firmware analysis, and automated validation using debug probes and Keil MDK.

- Repository: https://github.com/cunjun/McuBuddy
- Page: https://hostedmcp.org/servers/cunjun/mcubuddy
- Transport: stdio
- Stars: 10
- License: MIT
- Latest version: 0.5.1

## Install

### Claude Code

```sh
claude mcp add mcubuddy -- uvx McuBuddy
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "mcubuddy": {
      "command": "uvx",
      "args": [
        "McuBuddy"
      ]
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "mcubuddy": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "McuBuddy"
      ]
    }
  }
}
```

### VS Code CLI

```sh
code --add-mcp '{"name":"mcubuddy","type":"stdio","command":"uvx","args":["McuBuddy"]}'
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "mcubuddy": {
      "command": "uvx",
      "args": [
        "McuBuddy"
      ]
    }
  }
}
```

### Codex

```sh
codex mcp add mcubuddy -- uvx McuBuddy
```

### Codex config.toml (`~/.codex/config.toml`)

```toml
[mcp_servers.mcubuddy]
command = "uvx"
args = ["McuBuddy"]
```

### Gemini CLI

```sh
gemini mcp add -s user mcubuddy uvx -- McuBuddy
```

### Gemini settings.json (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "mcubuddy": {
      "command": "uvx",
      "args": [
        "McuBuddy"
      ]
    }
  }
}
```

## FAQ

### What hardware probes does McuBuddy support?

It supports ST-Link, J-Link, CMSIS-DAP, and other probes through backends like pyOCD and probe-rs.

### Does McuBuddy require Windows for Keil integration?

Yes, Keil build and download features require Windows with Keil MDK installed to invoke µVision through UV4.exe.

### Can McuBuddy inspect RTOS states?

Yes, it can inspect FreeRTOS tasks, task contexts, and stack usage using ELF/AXF symbols.

### Is the server a network-accessible service?

No, it is a local-only MCP backend that uses stdio for communication and does not expose HTTP or WebSockets.
