NestDaddy

stlink-mcp

io.github.dii/stlink-mcp · v0.9.0

Program, run and inspect STM32 targets over ST-LINK; every result verified, unverified or failed.

Connect Runs on your machine

Terminal
claude mcp add stlink-mcp -e STLINK_MCP_CLT_ROOT=<STLINK_MCP_CLT_ROOT> -e STLINK_MCP_BOARDS=<STLINK_MCP_BOARDS> -e STLINK_MCP_NO_VENDOR_SEED=<STLINK_MCP_NO_VENDOR_SEED> -e STLINK_MCP_CONSOLE=<STLINK_MCP_CONSOLE> -e STLINK_MCP_CONSOLE_BAUD=<STLINK_MCP_CONSOLE_BAUD> -e STLINK_MCP_GDB_PORT=<STLINK_MCP_GDB_PORT> -- uvx stlink-mcp==0.9.0
claude_desktop_config.json
{
  "mcpServers": {
    "stlink-mcp": {
      "command": "uvx",
      "args": [
        "stlink-mcp==0.9.0"
      ],
      "env": {
        "STLINK_MCP_CLT_ROOT": "<STLINK_MCP_CLT_ROOT>",
        "STLINK_MCP_BOARDS": "<STLINK_MCP_BOARDS>",
        "STLINK_MCP_NO_VENDOR_SEED": "<STLINK_MCP_NO_VENDOR_SEED>",
        "STLINK_MCP_CONSOLE": "<STLINK_MCP_CONSOLE>",
        "STLINK_MCP_CONSOLE_BAUD": "<STLINK_MCP_CONSOLE_BAUD>",
        "STLINK_MCP_GDB_PORT": "<STLINK_MCP_GDB_PORT>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "stlink-mcp": {
      "command": "uvx",
      "args": [
        "stlink-mcp==0.9.0"
      ],
      "env": {
        "STLINK_MCP_CLT_ROOT": "<STLINK_MCP_CLT_ROOT>",
        "STLINK_MCP_BOARDS": "<STLINK_MCP_BOARDS>",
        "STLINK_MCP_NO_VENDOR_SEED": "<STLINK_MCP_NO_VENDOR_SEED>",
        "STLINK_MCP_CONSOLE": "<STLINK_MCP_CONSOLE>",
        "STLINK_MCP_CONSOLE_BAUD": "<STLINK_MCP_CONSOLE_BAUD>",
        "STLINK_MCP_GDB_PORT": "<STLINK_MCP_GDB_PORT>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "stlink-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "stlink-mcp==0.9.0"
      ],
      "env": {
        "STLINK_MCP_CLT_ROOT": "<STLINK_MCP_CLT_ROOT>",
        "STLINK_MCP_BOARDS": "<STLINK_MCP_BOARDS>",
        "STLINK_MCP_NO_VENDOR_SEED": "<STLINK_MCP_NO_VENDOR_SEED>",
        "STLINK_MCP_CONSOLE": "<STLINK_MCP_CONSOLE>",
        "STLINK_MCP_CONSOLE_BAUD": "<STLINK_MCP_CONSOLE_BAUD>",
        "STLINK_MCP_GDB_PORT": "<STLINK_MCP_GDB_PORT>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
STLINK_MCP_CLT_ROOT
Optional
STM32CubeCLT (or STM32CubeIDE) install directory, when it is not in a standard place
STLINK_MCP_BOARDS
Optional
TOML file describing boards this project has not characterised; defaults to ~/.config/stlink-mcp/boards.toml if it exists
STLINK_MCP_NO_VENDOR_SEED
Optional
Set to anything to run on measured and user-stated data only, with no seeding from ST's device databases
STLINK_MCP_CONSOLE
Optional
Serial console per probe, SERIAL=/dev/ttyUSB0, comma-separated for several; for a console that is not the probe's own
STLINK_MCP_CONSOLE_BAUD
Optional
Console baud rate
STLINK_MCP_GDB_PORT
Optional
First GDB server port; each probe's server takes this port and the next

Details

Package[email protected] (PYPI, stdio)
First published8 Nov 2026
Last updated8 Nov 2026
Registry nameio.github.dii/stlink-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.