Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

Explore

  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Tags index
  • Submit a server
  • Pricing

Learn

  • Guides hub
  • What is MCP?
  • Install guide
  • Troubleshooting
  • Security
  • Blog
  • Blog RSS

Tools

  • All tools
  • Config generator
  • Config validator
  • MCP playground
  • OpenAPI β†’ MCP
  • Badge generator

For agents

  • API docs
  • Trust & traffic
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
  • Remote MCP β†— (opens in a new tab)

Company

  • About
  • Contact
  • X (@AllMCPs) β†— (opens in a new tab)
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on Buildlist
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ“‚ Browser Automation
  3. Crosspad Mcp
C
Health: ActiveRecent health check succeeded.Last checked 8/10/2026, 11:55:16 PM

Crosspad Mcp

Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository

Development workflow server for CrossPad β€” build, test, run, screenshot, and navigate code

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Not yet automatically verified

We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β€” we're steadily working through the catalog.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Install Config Generator

Choose your client
claude_desktop_config.json
{
  "mcpServers": {
    "crosspad-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "crosspad-mcp-server"
      ]
    }
  }
}

πŸ’‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

Install Tool Schemas (8) Directory Badge Claim listing AlternativesπŸ“‚ More in Browser Automation

Capabilities & Tool Schemas (8) ~140 tokensApproximate context cost of this server’s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server β€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Crosspad Mcp.

crosspad_build

Build for `platform: pc\

crosspad_run

Launch built simulator (`platform: pc`), return PID + post-spawn TCP readiness probe

crosspad_kill

Stop running simulator (`platform: pc`, SIGTERM by exe name match)

crosspad_check

Health check (`platform: pc`): stale exe, new sources, submodule drift

crosspad_flash

Flash firmware to device (`transport: uart\

crosspad_log

Capture logs (`target`: pc=spawn binary / idf=read serial)

Documentation Overview

crosspad-mcp-server

MCP (Model Context Protocol) server that gives Claude Code full control over the CrossPad development workflow β€” build, test, manage app packages, interact with the simulator, search code across repos. All from natural language.

Install

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

Or with custom repo paths:

Terminal
claude mcp add crosspad \
  --env CROSSPAD_IDF_ROOT=/path/to/platform-idf \
  --env CROSSPAD_PC_ROOT=/path/to/crosspad-pc \
  -- npx -y crosspad-mcp-server

That's it. Restart Claude Code and the tools are available.

Alternative: .mcp.json in your project

Add to your repo root β€” Claude Code picks it up automatically:

config.json
{
  "mcpServers": {
    "crosspad": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "crosspad-mcp-server"],
      "env": {
        "CROSSPAD_IDF_ROOT": "/path/to/platform-idf",
        "CROSSPAD_PC_ROOT": "/path/to/crosspad-pc"
      }
    }
  }
}

Alternative: Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

config.json
{
  "mcpServers": {
    "crosspad": {
      "command": "npx",
      "args": ["-y", "crosspad-mcp-server"],
      "env": {
        "CROSSPAD_IDF_ROOT": "/path/to/platform-idf"
      }
    }
  }
}

Skills (start here)

This package ships two Claude Code skills (bundled in the crosspad plugin):

  • crosspad β€” the entry point. An ecosystem map, install/config guide, per-role guides (user / firmware dev / server contributor), a tool cheat-sheet, and an FAQ. A fresh agent should read this first. Lives at skills/crosspad/SKILL.md; run bash skills/crosspad/scripts/doctor.sh to check your environment.
  • swd-tracer β€” real-time SWD variable tracing for CrossPad r20 (STM32G0B1) over ST-Link (see the SWD tracing section below).

Install both as a plugin:

Code
/plugin marketplace add CrossPad/crosspad-mcp     # or a local path to this repo
/plugin install crosspad@crosspad

Tools (28) + resources

v8 unifies platform-axis tools: build/run/kill/check/flash now take platform (or transport) as an arg instead of being split per-platform. Migration table at the bottom of this file.

Each tool is focused on a single action. Strict schema validation (ranges on MIDI/pad values, enums on platforms/repos) catches bad inputs before execution.

Build & flash

ToolPurpose
crosspad_buildBuild for platform: pc|idf (mode: incremental/clean/reconfigure for PC, incremental/clean/fullclean for IDF; build_type for PC)
crosspad_runLaunch built simulator (platform: pc), return PID + post-spawn TCP readiness probe
crosspad_killStop running simulator (platform: pc, SIGTERM by exe name match)
crosspad_checkHealth check (platform: pc): stale exe, new sources, submodule drift
crosspad_flashFlash firmware to device (transport: uart|ota, port?, firmware_path? ota-only)
crosspad_logCapture logs (target: pc=spawn binary / idf=read serial)
crosspad_devicesList USB serial devices, flag CrossPads
crosspad_traceReal-time SWD variable trace over ST-Link (non-halting RAM polling)

SWD tracing (crosspad_trace)

Non-halting real-time trace of STM32G0B1 firmware variables via ST-Link β€” the same technique as ST-Studio/CubeMonitor but driven directly from the LLM session.

Recommended: the swd-tracer skill. This repo ships a Claude Code skill (skills/swd-tracer/) + plugin manifest so a fresh agent automatically understands the tracer and can walk you through configuring every environment (pyOCD venv, config paths, udev rules, the Debug ELF) and the doctor→symbols→start→read→ui→stop workflow. Install it as a plugin:

Code
/plugin marketplace add CrossPad/crosspad-mcp     # or a local path to this repo
/plugin install crosspad@crosspad

The plugin bundles BOTH this MCP server and the skill, so a new machine gets the tracer end-to-end in one install. (Already running the server? The skill alone also lives at skills/swd-tracer/SKILL.md.)

Prerequisites (the skill's scripts/setup-venv.sh automates this)

Install pyocd and pyelftools into a Python venv (system Python is usually PEP-668 locked, so a venv is required):

bash
bash skills/swd-tracer/scripts/setup-venv.sh
# or manually:
python3 -m venv ~/.local/share/crosspad-mcp/venv
~/.local/share/crosspad-mcp/venv/bin/pip install "pyocd>=0.44" pyelftools

Point the server at that venv via config_set (or set it directly in ~/.config/crosspad-mcp/config.json):

Code
action=config_set  key=pyocd_python  value=~/.local/share/crosspad-mcp/venv/bin/python
action=config_set  key=stm_elf_path  value=/path/to/CrossPad_STM32_r20.elf

Linux udev note: without a udev rule the ST-Link probe requires root. Run bash skills/swd-tracer/scripts/install-udev-rules.sh (writes /etc/udev/rules.d/49-stlink.rules, then replug the probe), or add the official rules from pyocd / ST so your user can open the device without sudo.

Actions

ActionDescription
doctorEnvironment precheck β€” run this first. Returns issues[] with severity and suggested_fix for each problem.
config_setPersist a key/value to ~/.config/crosspad-mcp/config.json. Keys: stm_elf_path, pyocd_python, probe_serial, trace_dir.
symbolsList or search traceable variables resolved from the Debug ELF (query for substring filter). Returns rich metadata (kind/dims/count/members).
startBegin a background trace session (signals[], rate_hz). Returns file_path of the on-disk .cptrace file + the UI url.
stopEnd the active trace; returns final sample_count and file_path.
add / removeEdit the watched signal set on a live trace (signals[]) without restarting; returns the post-reconcile set.
statusPoll device_state, sample_count, actual_fs, signals without blocking.
readDownsampled time-series + per-signal stats (min/max/avg/slope). Safe to call frequently β€” max 200 points per signal by default.
saveExport the in-memory buffer to CSV (file_path returned).
device_stateDeep STOP/low-power register dump (PWR/RCC/SCB/DBGMCU), decoded SLEEPDEEP/LPMS β€” does not halt the core.
uiReturns the localhost dashboard URL (live table + zoom/pan plots).

Signal names accept array indexing, struct members, and whole-array/slice expansion: s_inputs[0], s_adc_raw[3], hpcd.Init.speed, s_adc_raw[*], s_inputs[0:8] (out-of-bounds indices are rejected against the DWARF length).

Example β€” trace ADC rail and pad inputs

Code
action=doctor
# resolve any blocking issues...
action=symbols  query=s_vbat
action=start    signals=["s_vbat_mv","s_inputs[0]"]  rate_hz=100
action=status
action=read     max_points=500
action=save
action=stop

Tests

ToolPurpose
crosspad_test_runBuild + run Catch2 suite (filter, list_only)

Simulator interaction

ToolPurpose
crosspad_screenshotPNG screenshot (file_path by default; return_inline for base64)
crosspad_inputAll input events: pad_press/release, encoder_*, click, key (action field)
crosspad_midiAll MIDI events: note_on/off, cc, program_change (type field)
crosspad_statsRuntime state: pads, capabilities, heap, apps
crosspad_settings_get / crosspad_settings_setRead/write settings

Git / repos

ToolPurpose
crosspad_repo_statusStatus across all detected repos
crosspad_repo_diffSubmodule drift in crosspad-pc / platform-idf
crosspad_submodule_updateUpdate submodule to origin/<branch> and stage
crosspad_commitCommit staged changes (refuses on conflicts; never pushes)

Code search & scaffolding

ToolPurpose
crosspad_search_symbolsFind class/function/macro/enum/typedef definitions
crosspad_list_interfacesList crosspad-core interfaces
crosspad_interface_implementationsFind implementations of a given interface
crosspad_capabilitiesCapability flags + per-platform sets
crosspad_list_apps_sourceApps registered via REGISTER_APP() macro

App package manager (crosspad-apps registry)

ToolPurpose
crosspad_apps_listApps from registry + where installed (no Python needed)
crosspad_apps_installInstall app as submodule (platform, app_name, ref, force)
crosspad_apps_removeRemove installed app submodule
crosspad_apps_updateUpdate one (app_name) or all (update_all) apps
crosspad_apps_syncRebuild manifest from disk state

Resources

URIPurpose
crosspad://workspaceJSON snapshot: detected repos, branches, HEADs, dirty counts, PC simulator running status. Loadable without a tool call β€” clients (e.g. Claude Code) can pin it as session context.
crosspad://apps/registry/<platform>Raw app-registry.json per detected platform (pc / idf / esp32-s3).
crosspad://apps/installed/<platform>Raw apps.json (installed manifest) per detected platform.
crosspad://symbols/{repo}/{symbol}Resource template β€” resolves a single symbol's definitions in <repo> (or all). MCP-native alternative to crosspad_search_symbols for known symbol+repo pairs.

Migration: v7 β†’ v8

Platform/transport now flows as an arg, not as part of the tool name. Net: 30 β†’ 28 tools.

Old (v7)New (v8)
crosspad_build_pccrosspad_build with platform: pc
crosspad_build_idfcrosspad_build with platform: idf
crosspad_run_pccrosspad_run with platform: pc
crosspad_kill_pccrosspad_kill with platform: pc
crosspad_check_pccrosspad_check with platform: pc
crosspad_flash_uartcrosspad_flash with transport: uart
crosspad_flash_otacrosspad_flash with transport: ota

Run/kill/check are PC-only today (the platform arg is reserved for future symmetry β€” IDF firmware doesn't run on the host). Build modes are validated per-platform: reconfigure is PC-only; fullclean is IDF-only.

Migration: v6 β†’ v7

Tools removed (logic moved to docs): crosspad_scaffold_app, crosspad_test_scaffold. Tools consolidated:

Old (v6)New (v7)
crosspad_pad_press, crosspad_pad_release, crosspad_encoder_rotate, crosspad_encoder_press, crosspad_encoder_release, crosspad_click, crosspad_keycrosspad_input with action field
crosspad_midi_note_on, crosspad_midi_note_off, crosspad_midi_cc, crosspad_midi_program_changecrosspad_midi with type field
crosspad_log_pc, crosspad_log_idfcrosspad_log with target field

Net: 42 tools β†’ 30 tools + 1 resource (v7). Subsequent unification in v8 β†’ 28 tools (see above).

All tools return a uniform envelope: { "success": boolean, ...data, "error"?: string }. On failure the result also has the MCP-protocol isError: true flag set so clients can route errors distinctly from successful calls.

Each tool carries MCP annotations (readOnlyHint, destructiveHint, openWorldHint) β€” clients use these for confirmation prompts. Read-only tools (status, search, list) skip the prompt; destructive tools (commit, flash, build_idf clean, apps_install) trigger one.

Configuration

Each repo path is individually configurable via env vars. If not set, falls back to $CROSSPAD_GIT_DIR/<repo-name> (flat layout).

VariableDefaultDescription
CROSSPAD_GIT_DIR~/GITBase directory (flat layout fallback)
CROSSPAD_PC_ROOT$GIT_DIR/crosspad-pcPC simulator repo
CROSSPAD_IDF_ROOT$GIT_DIR/platform-idfESP-IDF platform repo
CROSSPAD_ARDUINO_ROOT$GIT_DIR/ESP32-S3Arduino platform repo
CROSSPAD_CORE_ROOT$GIT_DIR/crosspad-corecrosspad-core (standalone)
CROSSPAD_GUI_ROOT$GIT_DIR/crosspad-guicrosspad-gui (standalone)
IDF_PATHauto-detected (~/esp/esp-idf)ESP-IDF SDK path
VCPKG_ROOT~/vcpkg (Linux) / C:/vcpkg (Win)vcpkg installation
VCVARSALLVS2022 defaultMSVC vcvarsall.bat (Windows only)
CROSSPAD_REMOTE_PORT19840TCP port for simulator remote control
CROSSPAD_REMOTE_HOST127.0.0.1TCP host for simulator remote control

Repos are discovered dynamically β€” only repos that exist on disk appear in tool results. No flat directory structure is assumed when env vars are set.

Transport

stdio (default) β€” npx crosspad-mcp-server. Standard MCP transport for Claude Code / Claude Desktop / IDE plugins.

HTTP (--http <port>) β€” npx crosspad-mcp-server --http 3000. Exposes a Streamable HTTP endpoint at http://localhost:<port>/mcp for remote dev boxes or browser-based MCP clients. Stateful sessions (Mcp-Session-Id header echoed after initialize). One transport, multi-session multiplexed internally.

bash
# Minimal HTTP smoke test:
npx crosspad-mcp-server --http 3000
curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"x","version":"0"}}}'

How it works

Static tools (build, repos, code, apps) work without the simulator β€” they operate on the filesystem, git, and Python package manager.

Interactive tools (sim) communicate with the running PC simulator via TCP on localhost:19840 using newline-delimited JSON.

Streaming β€” long-running tools (build, test, log) emit output line-by-line via MCP logging, so Claude sees progress in real-time.

App manager β€” reads registry JSON directly for listing (aggregated across all repos). Mutations delegate to app_manager.py (at tools/ for IDF, scripts/ for PC/Arduino) from crosspad-apps.

Development

bash
git clone https://github.com/CrossPad/crosspad-mcp.git
cd crosspad-mcp
npm install
npm run dev      # watch mode
npm run build    # one-shot build
npm test         # run unit tests
npm run test:watch  # tests in watch mode
Code
src/
  index.ts              β€” 41 focused tool registrations (one tool per action)
  config.ts             β€” per-repo env vars, dynamic discovery, IDF/MSVC paths
  config.test.ts        β€” config unit tests (fs mocking)
  utils/
    exec.ts             β€” platform-aware command execution (MSVC/IDF/shell)
    git.ts              β€” repo status, submodule pins
    remote-client.ts    β€” TCP client for simulator (localhost:19840)
  tools/
    app-manager.ts      β€” crosspad_apps: multi-platform registry + Python subprocess
    architecture.ts     β€” interfaces, REGISTER_APP scan
    build.ts            β€” PC build + run
    build-check.ts      β€” build health check
    diff-core.ts        β€” submodule drift analysis
    idf-build.ts        β€” ESP-IDF build
    input.ts            β€” simulator input events
    log.ts              β€” exe log capture
    repos.ts            β€” multi-repo git status
    scaffold.ts         β€” app boilerplate generation
    screenshot.ts       β€” simulator screenshots
    settings.ts         β€” simulator settings R/W
    stats.ts            β€” simulator runtime stats
    symbols.ts          β€” cross-repo symbol search
    test.ts             β€” Catch2 test runner
    *.test.ts           β€” unit tests for each module

License

MIT β€” Part of the CrossPad project.

Related MCP Servers

View all in Browser Automation View all alternatives
  • Browser Use logoBrowser Use

    Control a real Chrome browser to complete any task: fill forms, extract data, book flights.

    πŸ“‚ Browser Automation0 views
    Compare vs Browser Use β†’
  • Playwright Plus Python Mcp logoPlaywright Plus Python Mcp

    An MCP python server using Playwright for browser automation,more suitable for llm

    πŸ“‚ Browser Automation3 views
    Compare vs Playwright Plus Python Mcp β†’
  • Ios Simulator Mcp logoIos Simulator Mcp

    A Model Context Protocol (MCP) server for interacting with iOS simulators. This server allows you to interact with iOS simulators by getting information about them, controlling UI interactions, and inspecting UI elements.

    πŸ“‚ Browser Automation2 views
    Compare vs Ios Simulator Mcp β†’
  • Yutu logoYutu

    A fully functional MCP server and CLI for YouTube to automate YouTube operation

    πŸ“‚ Browser Automation4 views
    Compare vs Yutu β†’

Frequently Asked Questions about Crosspad Mcp

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "crosspad-mcp": { "command": "npx", "args": ["-y", "crosspad-mcp"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewCrosspad Mcp AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/crosspad-mcp?style=directory)](https://allmcps.com/mcp/crosspad-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/crosspad-mcp"><img src="https://allmcps.com/api/badge/crosspad-mcp?style=directory" alt="Crosspad Mcp on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ“‚Browser Automation
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
4/4 checks healthy over the last 6h
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars0
GitHub Star CountTotal stargazers on GitHub representing community popularity (0 stars).
Last commit1mo ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Jul 1, 2026
49Quality signal: Fair Β· 49/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools25/30
Adoption & activity2/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedAllMCPs Server logo

AllMCPs Server

The official MCP server for AllMCPs.com - submit and manage tools directly from your AI. The open directory for MCP servers. Connect Claude, Cursor, Windsurf, and AI agents to databases, tools, files, and APIs. Explore 3,181+ servers. AllMCPs is the premier, open directory for discovering, evaluating, and installing Model Context Protocol (MCP) servers to equip AI agents and LLMs with real-world superpowers.

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Free dofollow backlink: after claiming, verify your product site and place a dofollow AllMCPs badge β€” we recheck it stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ“‚ Browser Automation β†’Best MCP servers for Browser Automation β†’Alternatives to Crosspad Mcp β†’Install in Claude DesktopInstall in CursorInstall in VS Code