0.Instro
まともに鍵盤が弾けない僕ですがTranceっぽいものを作ろうと週末FL Stduioに向かって励んでいます。
弾ける人ならフレーズとか鍵盤触りながら構想練っていくのでしょうが、僕のように弾けないとMIDIデータやアルペジエーターなどデータや機能に大きく頼ってしまいます。
そういう中でAIにmidiデータ作ってもらっては?と思って色々試してみたこともありました。
一応midiデータを作ってくれることもあるのですが、どうもパッとしませんし、使い勝手がそもそも良くない。
(でもSE的なwavは割と使えるものが出てきたりしました)
そんな中でこのようなもの見つけました。
flstudio-mcp
Claudeに作ってもらってFL Studioに入れてもらうというまさに僕のためにあるようなMCPです。
ただインストールには少し苦戦したので記録として残しておきます。
僕の環境はWindwos11 Proです。
基本的にREADM.mdの手順に加筆する感じで説明進めます。
Step 1: Download the Files
こちらの
Place the Test Controller folder in Image-Line/FL Studio/Settings/Hardware (Don't change the name of this file or folder)
と記載があるのですが、現時点での正確なパスは
%USERPROFILE%\Documents\Image-Line\FL Studio\Settings\Hardware
です。
※この手順を抜かすとMIDIは送信されますが、FL Studioと協調できないので結果まともな曲になりません。
Step 2: Set up MCP for Claude
uv使うということは仮想環境を作成すると思います。後ほど色々パッケージ入れることになりますし。
仮想環境を構築する場合、コマンドラインで実行時に仮想環境を指定して立ち上げるというのは(調べた限り)ないです。
ですので仮想環境を作らなければREADM.mdの記載方法でいいのですか、仮想環境をを作るのなら、いろいろ試行錯誤したのですが、結局
"mcpServers": {
"midigenerator": {
"command": "C:\\Users\\(ユーザー名)\\(仮想環境名)\\Scripts\\python.exe",
"args": [
"C:\\Users\\(ユーザー名)\\flstudio-mcp-main\\trigger.py"
]
}
},
とあまりカッコよくないですが直指定が無難かなと思いました。
(MCPごとに仮想環境構築したいというニーズ割とありそうなのですが、この辺きれいな解決方法無いものでしょうか)
Step 3: Set Up Virtual MIDI Ports
READM.mdのままでOKです
Step 4: Setup MIDI Controller
READM.mdのままでOKです
「Step 1: Download the Files」で正しくTest Controllerをインストール出来ていればcontroller typeの一覧に出てきているはずです。
Step 5: Download Packages
素直に考えると
uv pip install -r requirements.txt
としたくなりますが、そうではないのですね。それでは足りません。
またpython-rtmidiをインストールするときにビルド環境が求められます。
ここの
https://visualstudio.microsoft.com/ja/downloads/#build-tools-for-visual-studio-2026
これでいきました。

構成は

のみで大丈夫です。
こちらをインストールしてから作成した仮想環境で
uv pip install httpx mido python-rtmidi typing fastmcp FL-Studio-API-Stubs
を実行してください。
Step 6: Verify MCP Connection
ここまできてたら基本的にClaudeとMCPサーバーが通信できるはずです。
しかしすんなりとはやはりいきません。
エラー場合、以下の点を確認することで解決出来そうです。
ただREADM.mdのようにはならず、通信も厳しい時もあるかと思います。
[デバイス名]
uvで作成した仮想環境に切り替えて
python -c "import mido; print(mido.get_output_names())"
でデバイス名を確認するというのも手です。
そのデバイス名にREADM.mdにあるように
trigger.py
の10行の名前を書き換えるとClaude側も認識してくれるようになります。
[Windows MIDI サービス]
そもそも一覧にloopMIDI Port がいないケースがあります(僕も最初そうでした)。
その時はFL Studio側でloopMIDI Port が認識されていません。
これの原因はWindows11がMIDI2.0に対応する当たりMIDI関連を刷新しました。その余波で2026年3月時点では不具合が多発しております。これかと思います。
その時は管理者権限で
net stop midisrv
net start midisrv
とMIDIサービスの再起動を行うと解決するかと思います。
Outro
ここまで出来たらREADM.mdにあるようにClaude Desktopから利用可能なポート一覧を確認でき、かつloopMIDI Port も存在していると思います。
その状態でFL StudioでloopMIDI Port に割り当てたポートを指定したVSTを用意。
Claudeにメロディーやイメージする曲を作成するように指示を出すとFL Studioでレコーディングが始まってその時にアクティブなパータンのピアノロールにClaudeが生成した演奏が記録されます。
もちろんなかなか期待通りには出来ませんがw
でも新しい可能性を感じられますね!いろいろ探っていきたいと思います!
追記
動いたからとすんなり使えるものではなかったです。
まずアウトプットの拍子がずれてたりとか。。。その辺を補正するために色々claudeと対話して調整しました。それを最終的にskillにして今はきちんとしたデータを生成してくれるようになりました。ですのでこのMCP(というかMCPは大体そういうのものかもしれませんが)動作が安定してきたらそれをスキルかしておいた方がいいかと思います。
以下に今のスキルの一部を貼っておきます。ご参考に。
説明
FL StudioにMIDIフレーズを送信するスキル。midigenerator MCPツールを使ってFL StudioにMIDIノートを送信する。トランスリード、メロディ、ベースラインなどのフレーズ作成・送信を行う場合に必ず使用すること。BPM・KEY・拍子・小節数などの情報をもとにMIDIデータを生成しFL Studioのピアノロールに書き込む。ユーザーがFL Studio、MIDI送信、フレーズ作成、トランスリード、ピアノロールなどに言及した場合は必ずこのスキルを参照すること。
FL Studio MIDI Generator Skill
概要
midigenerator MCPツールを使ってFL StudioにMIDIノートを送信するスキル。
前提条件・環境設定
必要なもの
loopMIDI(仮想MIDIポート)がインストール・起動済みであること
FL Studio が起動済みであること
FL Studio の MIDI設定でloopMIDI Portが有効になっていること
FL Studio MIDI設定確認手順
FL Studio メニュー → Options → MIDI Settings
Input欄に loopMIDI Port が表示されていることを確認
チェックが入っていれば有効(入っていなければクリックして有効化)
利用可能なツール
ツール 用途
list_midi_ports 接続中のMIDIポート一覧を確認
play FL Studioの再生開始
stop FL Studioの再生停止
send_midi_note 単音送信(※現状エラーが出るため非推奨)
send_melody 複数ノートのシーケンス送信(主力ツール)
send_melody の正しい使い方
フォーマット
ノート番号,ベロシティ,長さ(beat),開始位置(beat)
ノート番号: 必ず整数(MIDIノート番号)で指定。音名文字列("A3"等)は不可。
長さ・位置の単位はbeat(拍)。秒ではない。
各ノートは改行で区切る
動作確認済みフォーマット例
57,100,0.25,0.00
76,112,0.25,0.00
57,100,0.25,0.50
72,108,0.25,0.50
❌ 動作しないフォーマット(注意)
A3,100,0.10,0.00 # 音名文字列はNG → "No valid notes found"エラー
✅ 確定済み動作ルール(実機検証済み)
positionの単位はbeat(拍)
音符 beat値
4分音符 1.00
8分音符 0.50
16分音符 0.25
1小節(4/4拍子) 4.00
小節とbeat位置の対応表(4/4拍子)
小節 開始beat 終了beat
小節1 0.00 3.75
小節2 4.00 7.75
小節3 8.00 11.75
小節4 12.00 15.75
小節5 16.00 19.75
小節6 20.00 23.75
小節7 24.00 27.75
小節8 28.00 31.75
重要ルール
positionはパターン先頭からの絶対beat値。FL Studioのカーソル位置は無関係。
低音と上物は必ず同じ送信にまとめる。別々に送るとパターンが上書きされる。
同じpositionに低音と上物を重ねて配置するとグリッドに正確に合う。
送信は32〜48ノート以内に抑えると安定する(FL Studioのフリーズ防止)。
正しい送信パターン例(低音A3+上音を同時配置)
57,100,0.25,0.00 ← 低音
76,112,0.25,0.00 ← 上音(同じposition)
57,100,0.25,0.50
72,108,0.25,0.50
57,100,0.25,1.00
74,110,0.25,1.00
Aマイナースケール MIDIノート番号対応表
音名 MIDI番号
A3 57
B3 59
C4 60
D4 62
E4 64
F4 65
G4 67
A4 69
B4 71
C5 72
D5 74
E5 76
F5 77
G5 79
✅ トランスリードの確定パターン(実機検証済み)
リズム構造(1拍 = 16分音符4つ)
1拍の中の16分音符位置:
1つ目(0.00, 1.00, 2.00...) → ベース+上物 必ず配置
2つ目(0.25, 1.25, 2.25...) → 上物のみ 時々配置
3つ目(0.50, 1.50, 2.50...) → ベース+上物 必ず配置
4つ目(0.75, 1.75, 2.75...) → 上物のみ 時々配置
ポイント
ベースは1つ目・3つ目のみ(2つ目・4つ目にベースを入れない)
上物は1つ目・3つ目に必ず、2つ目・4つ目に時々入れることで揺れが生まれる
2つ目・4つ目の上物は前後の音と自然につながるスケール音を選ぶ
送信フォーマット例(小節1、Aマイナー)
57,100,0.25,0.00 ← ベース+上物(1つ目)
76,112,0.25,0.00
74,110,0.25,0.25 ← 上物のみ(2つ目・時々)
57,100,0.25,0.50 ← ベース+上物(3つ目)
72,108,0.25,0.50
57,100,0.25,1.00 ← ベース+上物(1つ目)
74,110,0.25,1.00
57,100,0.25,1.50 ← ベース+上物(3つ目)
76,114,0.25,1.50
71,107,0.25,1.75 ← 上物のみ(4つ目・時々)
トラブルシューティング
エラー 原因 対処
No valid notes found 音名文字列で指定している MIDIノート番号(整数)に変更
data byte must be int send_midi_noteの仕様問題 send_melodyを使う
音が出ない FL StudioのMIDI設定 loopMIDI Portが有効か確認
グリッドがずれる 位置単位の誤り beat単位(0.25刻み)で指定しているか確認
前のノートが消える 別々に送信している 低音と上物を同じ送信にまとめる
FL Studioが固まる 一度に送りすぎ 2小節(32〜48ノート)ずつに分けて送信