🎵 MIDIファイル MCP
📖 はじめに
これは、Tone.jsと@tonejs/midiライブラリをベースにしたMIDIファイルの解析・操作ツールで、MCP(Model Context Protocol)サービスを通じて機能を提供します。このツールを使えば、MIDIファイル形式の複雑な部分を理解せずに、MIDIファイルを簡単に読み込み、解析、変更することができます。
Related MCP server: MCP Claude Code
✨ 特徴
MIDIファイル情報を読み取る
トラック、ノート、コントロールチェンジ、ピッチベンド情報を取得および変更します
MIDIファイルのテンポ(BPM)を設定する
特定のトラックに新しいノート、コントロール変更、ピッチベンドを追加します
新しいトラックを追加する
包括的なエラー処理
📥 前提条件
Node.jsをインストールします。npxコマンドが正常に実行されることを確認します。Node.jsの公式サイトから最新の安定バージョンをインストールすることをお勧めします。
🔧 使用方法
MCP クライアントで使用します。サポートされるクライアントには以下のものが含まれますが、これらに限定されません。
カーソル設定例
カーソルでmidi-file-mcpを設定します。
🎹 MIDIパーサーMCPを絶対パスで使用する
MIDI Parser MCP のすべての操作には、MIDI ファイルへの絶対パスが必要です。これにより、現在の作業ディレクトリに関係なく、ツールが MIDI ファイルを正しく検索して操作できるようになります。
プロンプトの例
AI アシスタントで使用できるプロンプトの例を次に示します。
MIDIファイル情報を取得:
Can you show me information about the MIDI file at D:\path\to\your\file.mid?トラックの分析:
Please analyze all tracks in D:\path\to\your\file.mid and tell me how many notes are in each track.テンポの設定:
Change the tempo of D:\path\to\your\file.mid to 120 BPM.ノートの操作:
Show me all notes in track 1 of D:\path\to\your\file.mid.メモの追加:
Add a C4 note at position 0 with a duration of 1 beat to track 0 in D:\path\to\your\file.mid.
利用可能な操作
手術 | 説明 | パラメータ |
get_midi_info | 一般的なMIDIファイル情報を取得する | ファイルパス |
テンポを設定する | MIDIファイルのテンポ(BPM)を設定する | ファイルパス、bpm |
トラック情報を取得する | すべてのトラックの情報を取得する | ファイルパス |
インデックスによるトラック情報の取得 | 特定のトラックの情報を取得する | ファイルパス、トラックインデックス |
インデックスでノートを取得する | 特定のトラックからすべてのノートを取得する | ファイルパス、トラックインデックス |
get_pitchbends_by_index | 特定のトラックからすべてのピッチベンドを取得する | ファイルパス、トラックインデックス |
インデックスによるコントロール変更の取得 | 特定のトラックからすべてのコントロール変更を取得する | ファイルパス、トラックインデックス |
インデックスでノートを追加 | 特定のトラックにノートを追加する | ファイルパス、トラックインデックス、メモ |
インデックスによるコントロール変更の追加 | 特定のトラックにコントロール変更を追加する | ファイルパス、トラックインデックス、コントロール変更 |
インデックスによるピッチベンドの追加 | 特定のトラックにピッチベンドを追加する | ファイルパス、トラックインデックス、ピッチベンド |
トラックを追加 | MIDIファイルに新しいトラックを追加する | ファイルパス |
注意: エラーを回避するために、Windows パスを操作するときは、ファイル パスに必ず二重のバックスラッシュ ( \\ ) またはスラッシュ ( / ) を使用してください。
📄 ライセンス
このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。
🙏 謝辞
以下のプロジェクトとライブラリに感謝します。これらがなければ、このツールは実現できませんでした。
Tone.js - Webオーディオフレームワーク
@tonejs/midi - MIDIファイルの解析と操作ライブラリ
MCP(モデルコンテキストプロトコル) - AIアシスタントへのツール統合を可能にする