Crosspad Mcp

io.github.CrossPadPublished by GitHub account CrossPadv4.0.1Updated Oct 24, 2026

Development workflow server for CrossPad — build, test, run, screenshot, and navigate code

VerifiedSTDIODesktop onlyDeveloper ToolsAI & ML

Overview

AI-generated overview

Local MCP server that lets an assistant build, flash, simulate, test and diagnose CrossPad pad-controller firmware through the ESP-IDF and STM32 toolchain.

What you can do
Build, flash and install firmware and apps, including OTA uploads and submodule installs from the crosspad-apps registry, with long operations run as checkable tasks. Run the PC simulator, take screenshots of the LCD, send pad and encoder input, and drive MIDI and settings. Work with the board over USB: console, CDC commands, UI driving, USB mode and device checks. Run hardware-in-the-loop scenarios, pad stimulus, USB-audio capture and analysis, and BLE tests. Diagnose crashes and trace STM32 variables live over ST-Link without halting the core. Look up symbols, interface implementations and docs across the ecosystem, and check submodule drift and commits.
When to use it
Worth adding if you develop CrossPad firmware or apps and want an assistant to run builds, flashes, simulator sessions, HIL tests and crash diagnosis instead of doing them by hand. Also useful for navigating the CrossPad codebase across repositories.
Requirements
Runs locally via npx as the crosspad-mcp-server npm package over stdio; desktop only. Needs the CrossPad toolchain (ESP-IDF, STM32/ST-Link, clangd) and a connected board for hardware tools. Repositories are assumed to sit side by side under ~/GIT/ unless paths are configured. No API keys or environment variables are declared.
Before you install
Tools write to the device and host: flashing, DFU and SWD writes require confirmation first, and a read-only mode removes all writing tools. Builds, flashes and scenarios can change firmware and repositories, and app installs add submodules. Hardware tools need a physically connected board.

Installation

In SourceWeft

  1. Open Crosspad Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

crosspad-mcp

[npm] [M8ven Live Monitored] [CI] [node] [license: GPL-3.0-or-later]

Talk to your CrossPad. Let Claude do the toolchain.

crosspad-mcp is an MCP server that teaches Claude Code (or any MCP client) how to develop for the CrossPad pad controller. You say "flash the new build and check that it boots"; it runs the ESP-IDF build, asks you to confirm the flash, opens the console, runs the smoke scenario and tells you what happened — with the hardware traps already built in, so you don't have to remember which serial port reboots the board when you open it.

[You prompt Claude Code, Claude Code talks MCP to crosspad-mcp, crosspad-mcp drives the PC simulator over TCP, the CrossPad board over USB and the STM32 co-processor over ST-Link]

What you can do with it

Every card is a real prompt. The tools named underneath are what runs — you never have to call them yourself.

Say this……and this happens
"Build the firmware and flash it over OTA."crosspad_build platform=idf streams the build, crosspad_flash transport=ota asks for confirmation, then streams the upload. New app directories are detected and the fullclean is done for you.
"Show me what's on the simulator screen."crosspad_run launches the PC sim, crosspad_screenshot returns the LCD as an image Claude can actually look at. Then "press pad 5", "turn the encoder left twice" — crosspad_input.
"Play a drum pattern on the pads and record what comes out."crosspad_stimulus hits the pads with real timings, crosspad_capture records the board through its own USB-audio endpoint, crosspad_analyze gives a verdict (onsets, clicks, silence, velocity curve).
"Why did it crash?"crosspad_diagnose_crash — reset reason, registers, backtrace decoded against the ELF that is actually flashed, heap after restart. One call.
"Watch the battery charger state machine while I plug the cable in."crosspad_trace polls STM32 variables live over ST-Link without halting the core, and plots them.
"Install the sampler app and rebuild."crosspad_apps_install app_name=sampler adds the submodule from the crosspad-apps registry, then a clean build.
"Where is IPadLogicHandler implemented?"crosspad_interface_implementations across every repo of the ecosystem, or crosspad_symbol for clangd-precise definitions and call hierarchies.
"Is my board even connected?"crosspad_devices and crosspad_doctor — which USB mode it is in, which ports belong to it, what is missing on the host, and how to fix each thing.

Quick start

bash
claude mcp add crosspad -- npx -y crosspad-mcp-server

Restart Claude Code, then ask:

is my CrossPad connected, and is the toolchain set up?

That runs crosspad_doctor. Every failed check comes with a fix. The server assumes your repos live side by side under ~/GIT/ — if they don't, set the paths once.

Installing the bundled crosspad skill gives Claude the ecosystem map, the per-role guides and the hardware traps up front:

/plugin marketplace add CrossPad/crosspad-mcp/plugin install crosspad@crosspad

How it is organised

Only the core toolset is visible when the server starts, so the tool list stays small. Claude enables the others as the conversation needs them — or you start the server with --toolsets device,sim.

mermaid
flowchart LR    core["core · always on<br/>devices · doctor · snapshot<br/>build · flash · repo status · tasks<br/>bench lease"]    sim["sim<br/>PC simulator: run, screenshot,<br/>input, MIDI, settings, tests"]    device["device<br/>the board over USB: console,<br/>CDC verbs, UI driving, USB mode"]    hil["hil<br/>scenarios, pad stimulus,<br/>audio capture + analysis, BLE"]    code["code<br/>symbols, interfaces,<br/>docs search"]    git["git<br/>submodule drift,<br/>update, commit"]    apps["apps<br/>crosspad-apps registry"]    trace["trace<br/>SWD live variables"]    core --> sim & device & code & git & apps    device --> hil    core --> trace

Anything that writes to a device or your host is tiered. Flashing, DFU and SWD writes come back as confirmation required first; --read-only removes every writing tool from the list entirely. Long operations (builds, flashes, scenarios) run as tasks you can check on, wait for or cancel.

Who is it for

Going deeper

  • Usage reference — every install path, every tool and toolset, resources and prompts, configuration, HTTP transport, the v10 migration table.
  • FAQ — the questions that cost people an afternoon.
  • CHANGELOG

License

GPL-3.0-or-later — see LICENSE. Part of the CrossPad project. Releases up to 10.3.0 were published under MIT.

Source: README.md at commit 50e2263

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v4.0.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts