Program, run and inspect STM32 targets over ST-LINK; every result verified, unverified or failed.
Connect Runs on your machine
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
{
"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>"
}
}
}
}
{
"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>"
}
}
}
}
{
"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
| Name | Description |
|---|---|
STLINK_MCP_CLT_ROOTOptional | STM32CubeCLT (or STM32CubeIDE) install directory, when it is not in a standard place |
STLINK_MCP_BOARDSOptional | TOML file describing boards this project has not characterised; defaults to ~/.config/stlink-mcp/boards.toml if it exists |
STLINK_MCP_NO_VENDOR_SEEDOptional | Set to anything to run on measured and user-stated data only, with no seeding from ST's device databases |
STLINK_MCP_CONSOLEOptional | Serial console per probe, SERIAL=/dev/ttyUSB0, comma-separated for several; for a console that is not the probe's own |
STLINK_MCP_CONSOLE_BAUDOptional | Console baud rate |
STLINK_MCP_GDB_PORTOptional | First GDB server port; each probe's server takes this port and the next |
Details
| Package | [email protected] (PYPI, stdio) |
| First published | 8 Nov 2026 |
| Last updated | 8 Nov 2026 |
| Registry name | io.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.
