FL Studio MCP Server
FL Studio MCP Server
AIアシスタントがMIDI通信とピアノロールスクリプトを通じてFL Studioを制御できるようにするMCP(Model Context Protocol)サーバーです。
クイックデモ
音声が少し荒いのはご容赦ください。Appleがデスクトップ音声の録音を許可してくれなかったため、マイクでクリップする必要がありました(笑)
https://github.com/user-attachments/assets/d4fc668f-9fe5-4ab4-9f18-76cd661029c6
オリジナル音声
より良い音質で聴きたい場合はこちら
https://github.com/user-attachments/assets/c2b1a5e7-1640-41fa-82bc-18ca7cbae9e8
機能
トランスポート制御
再生の再生、一時停止、停止
録音の切り替え
再生位置の設定
曲の長さと位置の取得
ループモード(パターン/ソング)の制御
再生速度の調整
ミキサー制御
トラックのボリュームとパンの取得/設定
トラックのミュート/ソロ
録音用トラックの有効化(Arm)
トラック名と色の設定
ステレオセパレーションの制御
チャンネルラック制御
全チャンネルのリスト表示
チャンネルプロパティ(ボリューム、パン、名前、色)の取得/設定
チャンネルのミュート/ソロ
チャンネルのミキサートラックへのルーティング
MIDIノートのリアルタイムトリガー
ステップシーケンサー制御(グリッドビットの取得/設定)
プラグイン制御
プラグインパラメータのリスト表示
パラメータ値の取得/設定
プリセットのナビゲーション(次へ/前へ)
プラグイン情報のクエリ
ピアノロール制御
正確なタイミングでのピアノロールへのノート追加
単一コマンドでのコード追加
MIDI番号と時間による特定のノートの削除
ピアノロールからの全ノートのクリア
既存の全ノートを確認するためのピアノロール状態の読み取り
キー入力による自動トリガー(macOSではCmd+Opt+Y、WindowsではCtrl+Alt+Y)
Related MCP server: FL Studio MCP Server
重要な制限事項
プラグインの読み込み不可
FL StudioのスクリプトAPIは、新しいVST/AUプラグインの読み込みをサポートしていません。プロジェクトに既に読み込まれているプラグインのパラメータのみを制御できます。
パターンの作成不可
プログラムで新しいパターンを作成するAPIはありません。既存のパターンでのみ作業可能です。
要件
FL Studio 20.7以降(MIDIコントローラー・スクリプトAPI)
Python 3.10以降
macOS または Windows
macOS: IACドライバ(組み込み、有効化が必要)
Windows: loopMIDI
クイックインストール
最も簡単なインストール方法は、提供されているセットアップスクリプトを使用することです:
# Clone the repository
git clone https://github.com/karl-andres/fl-studio-mcp.git
cd fl-studio-mcp
# Run the one-command installer
./install.shこれにより、以下の処理が行われます:
uv が存在しない場合はインストール
Pythonの依存関係をインストール
仮想MIDIポート(Macの場合はIACドライバ)の有効化をガイド
FL Studio MIDIコントローラースクリプトをインストール
ピアノロールスクリプト(ComposeWithLLM)をインストール
Claude DesktopまたはClaude Codeを自動的に設定
手動インストール
1. Pythonの依存関係をインストール
# Using uv (recommended)
uv sync
# Or using pip
pip install -e .2. 仮想MIDIポートの有効化
macOS (IACドライバ)
Audio MIDI設定を開く(Spotlightで検索)
Cmd+2を押すか、ウィンドウ > MIDIスタジオを表示を選択
IACドライバをダブルクリック
**「デバイスはオンライン」**にチェックを入れる
適用をクリック
Windows (loopMIDI)
loopMIDI をダウンロードしてインストール
仮想ポートを作成(名前は何でもOK)
FL Studioの使用中はloopMIDIを起動したままにする
3. FL Studioスクリプトのインストール
コントローラースクリプトをFL StudioのHardwareフォルダにコピーします:
# macOS
mkdir -p ~/Documents/Image-Line/FL\ Studio/Settings/Hardware/FLStudioMCP
cp fl_controller/device_FLStudioMCP.py ~/Documents/Image-Line/FL\ Studio/Settings/Hardware/FLStudioMCP/
# Windows
mkdir "%USERPROFILE%\Documents\Image-Line\FL Studio\Settings\Hardware\FLStudioMCP"
copy fl_controller\device_FLStudioMCP.py "%USERPROFILE%\Documents\Image-Line\FL Studio\Settings\Hardware\FLStudioMCP\"ピアノロールスクリプトをコピーします:
# macOS
cp scripts/ComposeWithLLM.pyscript ~/Documents/Image-Line/FL\ Studio/Settings/Piano\ roll\ scripts/
# Windows
copy scripts\ComposeWithLLM.pyscript "%USERPROFILE%\Documents\Image-Line\FL Studio\Settings\Piano roll scripts\"4. FL Studioの設定
FL Studioを再起動(起動中の場合)
Options > MIDI Settingsを開く
Inputの下で、仮想MIDIポート(例: "IAC Driver Bus 1")を見つける
Controller typeをFLStudioMCPに設定
ポートを有効にする(クリックしてハイライト表示にする)
5. Claudeの設定
Claude Desktopの設定(macOSの場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します:
{
"mcpServers": {
"fl-studio": {
"command": "uv",
"args": ["run", "--directory", "/path/to/fl-studio-mcp", "fl-studio-mcp"]
}
}
}またはClaude Codeの場合は、MCP設定に追加してください。
使用方法
サーバーの手動実行
# Using uv
uv run fl-studio-mcp
# Or after installation
fl-studio-mcpピアノロールのワークフロー
FL Studioを開き、チャンネルを選択
ピアノロールを開く(F7またはチャンネルをダブルクリック)
初回のみ、スクリプトを手動で実行:Tools > Scripting > ComposeWithLLM
以降は、MCPツールが自動的にスクリプトをトリガーします
利用可能なツール
接続
ツール | 説明 |
| FL Studioに接続/再接続 |
| 接続状態を取得 |
トランスポート
ツール | 説明 |
| 再生を開始/一時停止 |
| 再生を停止 |
| 録音を切り替え |
| 再生/録音状態を取得 |
| 再生位置を設定 |
| 曲の長さを取得 |
| パターン/ソングモードを切り替え |
| 再生速度を調整 (0.25x-4x) |
ミキサー
ツール | 説明 |
| ミキサートラック数を取得 |
| トラックの詳細を取得 |
| 全トラックをリスト表示 |
| トラックのボリュームを設定 |
| トラックのパンを設定 |
| トラックをミュート/解除 |
| トラックをソロ/解除 |
| 録音用にトラックを有効化 |
| トラック名を変更 |
| トラックの色を設定 |
| ステレオ幅を調整 |
チャンネル
ツール | 説明 |
| チャンネル数を取得 |
| チャンネルの詳細を取得 |
| 全チャンネルをリスト表示 |
| 選択中のチャンネルを取得 |
| チャンネルを選択/解除 |
| チャンネルを単独選択 |
| MIDIノートをトリガー (リアルタイム) |
| チャンネルのボリュームを設定 |
| チャンネルのパンを設定 |
| チャンネルをミュート/解除 |
| チャンネルをソロ/解除 |
| チャンネル名を変更 |
| チャンネルの色を設定 |
| ミキサートラックへルーティング |
| ステップシーケンサーのステップを取得 |
| ステップシーケンサーのステップを設定 |
| パターン全体を取得 |
| パターン全体を設定 |
プラグイン
ツール | 説明 |
| プラグインが存在するか確認 |
| プラグイン名を取得 |
| パラメータ数を取得 |
| 全パラメータをリスト表示 |
| パラメータ値を取得 |
| パラメータ値を設定 |
| プリセット数を取得 |
| 次のプリセット |
| 前のプリセット |
| プラグインの色を取得 |
ピアノロール
ツール | 説明 |
| ピアノロールにノートを追加 |
| コードを追加 (同時に複数のノート) |
| 特定のノートを削除 |
| 全ノートをクリア |
| 現在のピアノロールのノートを読み取り |
| FL Studioスクリプトを手動でトリガー |
| ピアノロールのシステム情報を取得 |
| 保留中のキューをキャンセル |
ワークフロー例
ミックスの調整
"Set the volume of mixer track 1 to 80% and pan it slightly left"ドラムパターンの作成
"Create a basic kick pattern on channel 0 with kicks on steps 0, 4, 8, and 12"ピアノロールへのメロディ追加
"Add a C major arpeggio starting at beat 0: C4, E4, G4, C5 - each note quarter duration"コードの追加
"Add a C major chord at beat 0, then F major at beat 2, then G major at beat 4"プラグインパラメータの自動化
"List the parameters of the plugin on channel 0 and set the filter cutoff to 50%"トラブルシューティング
"Not connected to FL Studio"
FL Studioが起動していることを確認
MIDI設定でFLStudioMCPコントローラーが有効になっているか確認
Macの場合、Audio MIDI設定でIACドライバが有効か確認
Windowsの場合、loopMIDIが起動しているか確認
コントローラーを有効にした後、FL Studioを再起動
"Timeout waiting for FL Studio response"
FL Studioがアクティブ(フォーカス)であることを確認
FL Studioのスクリプト出力ウィンドウを確認 (View > Script output)
コントローラーがMIDIを受信しているか確認(MIDI設定でアクティビティを確認)
ピアノロールスクリプトがトリガーされない
初回:FL Studioで Tools > Scripting > ComposeWithLLM を手動実行
macOS:プロンプトが表示されたらアクセシビリティ権限を許可
トリガー時にFL Studioがアクティブであることを確認
手動でCmd+Opt+Y (macOS) または Ctrl+Alt+Y (Windows) を押してみる
MIDIポートが利用できない
macOS: Audio MIDI設定でIACドライバを有効化
Windows: loopMIDIをインストールして実行
アーキテクチャ
このMCPサーバーはハイブリッドアプローチを採用しています:
┌─────────────────┐ ┌─────────────────────────────────────────┐
│ MCP Client │────▶│ FastMCP Server │
│ (Claude, etc) │ │ │
└─────────────────┘ │ ┌─────────────────┐ ┌──────────────┐ │
│ │ MIDI + JSON │ │ Piano Roll │ │
│ │ Tools │ │ Tools (JSON) │ │
│ └────────┬────────┘ └──────┬───────┘ │
└───────────┼──────────────────┼──────────┘
│ │
MIDI + JSON JSON Files +
│ Keystroke
▼ ▼
┌─────────────────────────────────────────┐
│ FL Studio │
│ ┌──────────────┐ ┌──────────────────┐ │
│ │FLStudioMCP │ │ Piano Roll Script│ │
│ │(MIDI Ctrl) │ │ (ComposeWithLLM) │ │
│ └──────────────┘ └──────────────────┘ │
└─────────────────────────────────────────┘仕組み
トランスポート/ミキサー/チャンネル/プラグイン:
MCPサーバーがJSONファイルにコマンドを書き込み
FL StudioにMIDIトリガーノートを送信
FL StudioコントローラースクリプトがJSONを読み取り、APIを実行し、レスポンスを書き込み
MCPサーバーがレスポンスを読み取り
ピアノロール:
MCPサーバーがノートリクエストをJSONファイルに書き込み
キー入力(Cmd+Opt+Y)を送信してFL Studioスクリプトをトリガー
ピアノロールスクリプトがJSONを読み取り、ノートを修正
開発
前提条件
Python 3.10以降
uv (推奨)
セットアップ
# Install all dependencies including dev extras
uv sync --dev
# Or with pip
pip install -e ".[dev]"利用可能なコマンド
コマンド | 説明 |
| MCPサーバーを実行 |
| コードベースをリント |
| リントと自動修正 |
| テストを実行 |
プロジェクト構造
fl-studio-mcp/
├── fl_controller/
│ └── device_FLStudioMCP.py # FL Studio MIDI controller script (runs inside FL Studio)
├── scripts/
│ ├── setup.sh # FL Studio script installer
│ ├── install_mcp_for_claude.sh # Claude config installer
│ └── ComposeWithLLM.pyscript # Piano Roll script (runs inside FL Studio)
├── src/fl_studio_mcp/
│ ├── server.py # FastMCP server entry point
│ ├── tools/ # MCP tool implementations
│ │ ├── channels.py
│ │ ├── mixer.py
│ │ ├── piano_roll.py
│ │ ├── plugins.py
│ │ └── transport.py
│ └── utils/
│ ├── connection.py # FL Studio connection wrapper
│ ├── fl_trigger.py # Piano roll keystroke trigger
│ └── midi_connection.py # MIDI + JSON communication layer
└── install.sh # One-command installerクレジット
FL Studio API Stubs - APIドキュメント
FastMCP - MCPサーバーフレームワーク
mido - Python用MIDIライブラリ
calvinw/fl-studio-mcp - ピアノロール統合アプローチ
Image-Line - FL Studio
ライセンス
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
AI music production assistant — audio profiling, AI mixing sessions, and service inquiries.
Convert projects between Logic, Ableton, FL Studio and REAPER; generate, separate, transcribe
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
- VocunoOAuthcom.vocuno
AI music studio: song generation with vocals, covers, stems, voice conversion, mastering, editing.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that connects AI assistants to FL Studio for music production via Virtual MIDI. It enables users to control transport, manage the mixer, write notes, and manipulate plugin parameters through natural language.1MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to control FL Studio on Windows through a local MCP server without cloud dependencies. Bridges MCP clients to FL Studio's Python scripting environment via file-based IPC for project management, transport control, and UI workflow automation.-
- AlicenseAqualityCmaintenanceAI control for FL Studio via the Model Context Protocol — full in-DAW mixing (Mix Doctor diagnosis, gain staging, EQ/compression/reverb, reference matching), routing, and composition through Claude and any MCP client. 67 tools. Windows.6734MIT
- AlicenseNot gradedqualityDmaintenanceReal-time AI-assisted music production, advanced composition, mixing, and VST coordination for FL Studio via bidirectional MIDI & WebSockets, exposing over 100 tools for comprehensive DAW control.8MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/karl-andres/fl-studio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server