MCP Hub
Back to servers

mcp-svd

An MCP server that provides AI coding assistants with access to official ARM CMSIS SVD hardware register definitions for microcontrollers. It enables precise querying of register names, bit positions, and addresses to prevent hallucinations during embedded systems development.

glama
Updated
Mar 10, 2026

mcp-svd

An MCP (Model Context Protocol) server that exposes ARM CMSIS SVD hardware register definitions to AI coding assistants. Instead of hallucinating register names, bit positions, and addresses, your AI assistant can query the exact definitions straight from the official SVD file for your microcontroller.

Install

From GitHub (no npm needed):

npm install github:pkt-lab/mcp-svd

Or clone and build manually:

git clone https://github.com/pkt-lab/mcp-svd
cd mcp-svd
npm install && npm run build

Claude Desktop configuration

If installed via npm (GitHub):

{
  "mcpServers": {
    "mcp-svd": {
      "command": "node",
      "args": ["./node_modules/mcp-svd/dist/index.js"]
    }
  }
}

If cloned locally:

{
  "mcpServers": {
    "mcp-svd": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-svd/dist/index.js"]
    }
  }
}

Config file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Restart Claude Desktop after editing.

MCP tools

list_peripherals

{ "svd_file": "svd/STM32F411.svd" }

lookup_register

{ "svd_file": "svd/STM32F411.svd", "peripheral": "USART1", "register": "CR1" }

describe_field

{ "svd_file": "svd/STM32F411.svd", "peripheral": "GPIOA", "register": "MODER", "field": "MODE0" }

search_registers

{ "svd_file": "svd/rp2040.svd", "query": "uart" }

Returns up to 10 peripheral+register matches (case-insensitive substring).

REST API

REST_PORT=3000 node dist/index.js

# List peripherals
curl "http://localhost:3000/api/v1/peripherals?svd=svd/STM32F411.svd"

# List registers
curl "http://localhost:3000/api/v1/registers/GPIOA?svd=svd/STM32F411.svd"

# Describe a field
curl "http://localhost:3000/api/v1/field/GPIOA/MODER/MODE0?svd=svd/STM32F411.svd"

Using your own SVD file

Download from cmsis-svd-data or your chip vendor, then pass the path:

{ "svd_file": "/path/to/your/device.svd", "peripheral": "SPI0", "register": "CR" }

Bundled SVD files

FileDevice
svd/STM32F411.svdSTM32F411
svd/nRF52840_xxAA.svdNordic nRF52840
svd/rp2040.svdRaspberry Pi RP2040

License

MIT

Reviews

No reviews yet

Sign in to write a review