Connects Claude to FL Studio 2025's scripting API for natural language control over mixing, routing, and composition. Exposes 67 tools across mixer diagnostics, plugin parameter control, MIDI note writing, and multi-track arrangement. The mix doctor scans for concrete problems like clipping and level imbalance with evidence and reversible fixes. Reads your actual plugin and preset library from disk so recommendations match what you own. Routes through loopMIDI virtual ports and includes a controller script plus note bridge for piano roll access. Windows only, requires manual plugin loading and one-time script arming per session due to FL API constraints. Useful when you want Claude to diagnose a mix, build processing chains, or generate arrangements without leaving the DAW.
Control FL Studio with Claude: AI mixing, composition, and mix diagnosis through natural language.

Claude diagnosing and fixing a mix in FL Studio through natural language.
flstudio-mcp is a Model Context Protocol (MCP) server that lets Claude Desktop drive FL Studio 2025 directly — the mixer, plugins, piano roll, routing, and project — from plain-language requests. Ask for a mix diagnosis, a vocal chain, a chord progression in a particular scale, or a full arrangement, and Claude carries it out through FL's scripting API and a set of calibrated, safety-checked tools.
It is genre- and producer-agnostic: nothing about it assumes a particular style of music.
scripts\install_windows.bat :: controller + server + note bridge
fl-studio-mcp-daemon :: start the bridge, keep it running
./scripts/install_macos.sh # macOS: controller + server + note bridge
fl-studio-mcp-daemon # start the bridge, keep it running
Wire the two virtual MIDI ports in FL (loopMIDI on Windows, IAC Driver on
macOS), arm MCP_Apply once in the piano roll, then ask Claude in plain
language:
"Scan my mix and tell me what's wrong." — "Set up a vocal chain from my plugins." — "Export this arrangement to MIDI."
Full setup is below.
The server exposes 67 tools across 14 categories, plus 6 live resources (project, mixer, transport, channels, patterns, status) that Claude can read directly.
flstudio-mcp is built as a mixing and production assistant, not only a note sender. It diagnoses and repairs a whole mix, makes decisions from real measured levels rather than guesswork, and is aware of your actual plugin and preset library when it makes suggestions. Every change that touches the project is shown before it is applied, logged, and reversible.
These are properties of FL Studio's scripting API, stated plainly:
Linux is not yet supported — contributions welcome.
Create two virtual MIDI ports, named exactly FLStudioMCP RX and
FLStudioMCP TX.
Windows: create both ports in loopMIDI.
macOS:
FLStudioMCP RXFLStudioMCP TXInstall the controller script and server:
Windows:
git clone https://github.com/rosasynthesiz/flstudio-mcp
cd flstudio-mcp
scripts\install_windows.bat
macOS:
git clone https://github.com/rosasynthesiz/flstudio-mcp
cd flstudio-mcp
chmod +x scripts/install_macos.sh
./scripts/install_macos.sh
This copies the controller script, seeds the note-bridge pyscript
(MCP_Apply), installs the server, and checks that your virtual MIDI ports
exist. For audio features, add the optional extras:
pip install -e ".[audio]"
pip install -e ".[audio,audio-accurate]"
Configure FL Studio — Options > MIDI Settings:
FLStudioMCP RX as an input, set its controller type to FLStudioMCP, and give it a port number.FLStudioMCP TX as an output with the same port number.[FLStudioMCP] Ready.Start the bridge daemon (recommended) so the MIDI port is held by a stable process:
fl-studio-mcp-daemon
Register the server with Claude Desktop:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"fl-studio": {
"command": "fl-studio-mcp",
"env": { "FLSTUDIO_MCP_TRANSPORT": "tcp" }
}
}
}
tcp routes through the daemon, which works regardless of how Claude Desktop launches the server. Omit the env var to let the server open the MIDI ports directly instead.
Arm the note bridge (per session) — open the piano roll and run MCP_Apply once from its scripting menu, so note-writing works.
On macOS, the note bridge re-triggers the armed script with Cmd+Opt+Y.
Grant Accessibility permission to the app running the MCP server or daemon,
for example Terminal, iTerm, Claude Desktop, or Cursor:
System Settings > Privacy & Security > Accessibility.
Verify the connection by asking Claude to call fl_ping.
| Symptom | Fix |
|---|---|
| Virtual MIDI ports not found / not detected | The two ports must be named exactly FLStudioMCP RX and FLStudioMCP TX. Recreate them in loopMIDI (Windows) or IAC Driver (macOS), then re-run the installer. |
No [FLStudioMCP] Ready in FL's Script output | The controller isn't registered: set the FLStudioMCP RX input's Controller type to FLStudioMCP in MIDI Settings, confirm device_FLStudioMCP.py is in Settings\Hardware\FLStudioMCP\, then fully restart FL Studio. |
Claude can't reach FL / fl_ping fails | Make sure the daemon is running (fl-studio-mcp-daemon); check the transport matches (FLSTUDIO_MCP_TRANSPORT=tcp uses the daemon, unset uses direct MIDI); restart Claude Desktop after editing its config. |
| Note-writing does nothing | Run MCP_Apply once from the piano roll's scripting menu this session — it arms the note bridge. |
| macOS note-trigger fails | Grant Accessibility permission to the app running the MCP server or daemon, then click the FL Piano roll and try Cmd+Opt+Y. |
| Audio tools error or are unavailable | Install the optional extras: pip install -e ".[audio]" (or ".[audio,audio-accurate]"). |
Plain-language prompts:
A thin controller script runs inside FL Studio and returns only cheap, raw data; all judgement — diagnosis, calibration, planning — happens server-side. A standalone daemon owns the MIDI port so the server works regardless of how the MCP client is launched. Note authoring uses a generated pyscript bridge: the daemon re-triggers the armed MCP_Apply script with the platform run-last-script shortcut after a brief window force-focus. Every project-modifying tool routes through a snapshot → write → readback → rollback safety layer backed by a persisted change log.
Design notes and findings are in docs/.
MIT — see LICENSE.
Beta — the public 1.0 release. Windows and macOS are supported; Linux contributions are welcome. Issues and pull requests: github.com/rosasynthesiz/flstudio-mcp.