crosspad-mcp について
crosspad-mcpは、CrossPadファームウェアの開発やシミュレーター、ハードウェア操作に使うMCPサーバーです。ビルド、テスト、デバイス、音声、クラッシュ診断、コード検索をツールセットにまとめ、書き込み時の確認と読み取り専用モードを備えます。
主な機能
- 01ファームウェアのビルドと書き込み
- 02シミュレーター実行と画面確認
- 03パッド操作と音声収録
- 04クラッシュ診断と変数トレース
- 05シンボルと実装箇所の検索
- 06タスク別ツールセットの構成
活用シーン
- 01書き込み前に確認してファームウェアをビルド
- 02シミュレーターの画面と入力を確認
- 03パッドの音声を録音して分析
- 04クラッシュ原因やコード実装を特定
MCP 対応
Claude CodeなどのMCPクライアントにCrossPad開発ツールを提供します。必要に応じてツールセットを有効化でき、書き込み操作には確認が必要です。読み取り専用モードでは書き込みツールが除外されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
crosspad-mcp
CrossPad に話しかければ、ツールチェーンは Claude に任せられます。
crosspad-mcp は、Claude Code(または任意の MCP クライアント)に CrossPad パッドコントローラー向けの開発方法を教える MCP サーバーです。「新しいビルドを書き込んで、起動するか確認して」と頼むと、ESP-IDF のビルドを実行し、書き込みの確認を求め、コンソールを開いてスモークシナリオを実行し、結果を知らせてくれます。ハードウェア特有の注意点も組み込まれているので、ポートを開いたときに基板が再起動するシリアルポートを覚えておく必要はありません。
できること
各カードは実際のプロンプトです。下に記載されたツールが実行されるため、自分で呼び出す必要はありません。
| こう言うと… | …こうなります |
|---|---|
| 「ファームウェアをビルドして、OTA で書き込んで。」 | crosspad_build platform=idf がビルドの出力を逐次表示し、crosspad_flash transport=ota が確認を求めてから、アップロードの出力を逐次表示します。新しいアプリディレクトリは自動検出され、fullclean も自動で実行されます。 |
| 「シミュレーターの画面を見せて。」 | crosspad_run が PC シミュレーターを起動し、crosspad_screenshot が Claude に実際に確認できる LCD 画像を返します。その後、「パッド 5 を押して」「エンコーダーを左に 2 回回して」と指示できます。crosspad_input が実行します。 |
| 「パッドでドラムパターンを演奏して、出力を録音して。」 | crosspad_stimulus が実際のタイミングでパッドを叩き、crosspad_capture が基板専用の USB オーディオエンドポイント経由で録音し、crosspad_analyze が判定結果(オンセット、クリック音、無音、ベロシティカーブ)を返します。 |
| 「なぜクラッシュしたの?」 | crosspad_diagnose_crash がリセット理由、レジスター、実際に書き込まれている ELF に基づいてデコードしたバックトレース、再起動後のヒープを調べます。1 回の呼び出しで完了します。 |
| 「ケーブルをつなぐ間、バッテリー充電器のステートマシンを監視して。」 | crosspad_trace がコアを停止させずに ST-Link 経由で STM32 の変数をリアルタイムにポーリングし、グラフ化します。 |
| 「サンプラーアプリをインストールして、再ビルドして。」 | crosspad_apps_install app_name=sampler が crosspad-apps レジストリからサブモジュールを追加し、クリーンビルドを実行します。 |
「IPadLogicHandler はどこに実装されている?」 | エコシステム内の全リポジトリを対象にする crosspad_interface_implementations、または clangd による高精度な定義と呼び出し階層を確認できる crosspad_symbol を使います。 |
| 「基板はちゃんと接続されている?」 | crosspad_devices と crosspad_doctor で、現在の USB モード、基板に対応するポート、ホスト側で不足しているもの、およびそれぞれの解決方法を確認できます。 |
クイックスタート
claude mcp add crosspad -- npx -y crosspad-mcp-server
Claude Code を再起動してから、次のように尋ねてください。
CrossPad は接続されていますか? ツールチェーンはセットアップされていますか?
これにより crosspad_doctor が実行されます。チェックに失敗するたびに fix が表示されます。このサーバーは、リポジトリが ~/GIT/ の下に並べて配置されていることを前提としています。そうでない場合は、
パスを設定してください。
同梱の crosspad スキルをインストールすると、Claude はエコシステムの構成、役割ごとのガイド、ハードウェア特有の注意点をあらかじめ把握できます。
/plugin marketplace add CrossPad/crosspad-mcp
/plugin install crosspad@crosspad
構成
サーバーの起動時に表示されるのは core ツールセットのみなので、ツールの一覧は小さく保たれます。会話のニーズに応じて Claude がほかのツールセットを有効にします。または、--toolsets device,sim を指定してサーバーを起動できます。
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
デバイスまたはホストに書き込む操作には、すべて段階的な制限があります。フラッシュ、DFU、SWD への書き込みは、まず 確認が必要 として返されます。--read-only を指定すると、書き込みツールがすべて一覧から除外されます。ビルド、フラッシュ、シナリオなどの時間のかかる操作はタスクとして実行され、状態の確認、完了待ち、キャンセルができます。
対象ユーザー
- CrossPad ファームウェアをビルドして操作する方 — 主にシミュレーターを使い、場合によってはボードも使います。ユーザーガイドから始めてください。
- ファームウェア自体を開発する方 — フラッシュ、コンソール、HIL シナリオ、クラッシュ診断、SWD を扱います。ファームウェア開発者ガイドとHIL テストをお読みください。
- このサーバーを拡張したい方 — コントリビューターガイドと開発セクションをご覧ください。
詳細情報
- 使い方のリファレンス — すべてのインストール方法、ツールとツールセット、リソースとプロンプト、設定、HTTP トランスポート、v10 への移行表。
- FAQ — 解決に午後いっぱいかかることもある質問をまとめています。
- CHANGELOG
ライセンス
GPL-3.0-or-later — LICENSEをご覧ください。CrossPad プロジェクトの一部です。 バージョン 10.3.0 までのリリースは MIT のもとで公開されていました。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。