
Flstudio Mcp
io.github.rosasynthesizPublished by GitHub account rosasynthesizv1.0.0Updated Oct 24, 2026
Control FL Studio with Claude: in-DAW mixing, diagnosis, routing, and composition.
Overview
An MCP server that lets an assistant drive FL Studio 2025 on a desktop: mixing diagnosis, plugin parameter control, routing, and composition via MIDI.
- What you can do
- Diagnose and repair mixes: scan for clipping, headroom, level imbalance and EQ overlap, with approved, reversible fixes and gain staging or reference matching against a track. Read and set plugin parameters by name, suggest chains and presets from the installed library, and solo, mute or color tracks and groups. Compose in the piano roll: write notes and chords, quantize, build multi-pattern arrangements, and export multi-track MIDI. Analyze audio: estimate tempo and key, and transcribe melody to MIDI. Read live project, mixer, transport, channel and pattern state.
- When to use it
- Useful for producers working in FL Studio who want to ask in plain language for a mix check, a vocal chain, a chord progression in a given scale, or a full arrangement, and have the assistant carry it out inside the DAW.
- Requirements
- Local process on Windows 10/11 or macOS (Linux unsupported), with FL Studio 2025 or newer, Claude Desktop or another MCP client, and Python 3.10+. Two virtual MIDI ports named exactly FLStudioMCP RX and FLStudioMCP TX (loopMIDI on Windows, IAC Driver on macOS), the controller script installed and registered in FL's MIDI settings, and the bridge daemon running. Optional ffmpeg for MP3 analysis; macOS needs Accessibility permission.
Installation
In SourceWeft
- Open Flstudio Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
flstudio-mcp
Control FL Studio with Claude: AI mixing, composition, and mix diagnosis through natural language.
[version] [status] [license] [python] [platform] [FL Studio]
[Claude diagnosing and fixing a mix in FL Studio]
Claude diagnosing and fixing a mix in FL Studio through natural language.
Overview
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.
Quickstart
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.
Capabilities
Mixing & diagnosis
- Mix Doctor — scans the whole mix and reports concrete problems (clipping, low headroom, level imbalance, missing high-pass, ungrouped related tracks, overlapping EQ boosts), each with the exact evidence and a proposed fix. Fixes are applied one at a time, only on approval, through a snapshot → write → readback → rollback safety layer. Master clipping is resolved by trimming the contributing source tracks rather than pulling the master.
- Full-song peak watch — holds a running peak per track across playback, so level decisions are based on the loudest moment of the actual song, not a single instant.
- Calibrated processing intents — musical EQ, compression, reverb, and delay moves mapped to real plugin parameters (native and third-party), each applied as one reversible change.
- Level-aware compression — sets thresholds relative to a track's measured level during playback.
- Gain staging — proposes per-track trims toward a healthy level with proper master headroom.
- Reference match — compares your mix's level and tonal balance against a reference track.
- Bulk track control — solo or mute a whole group (drums, vocals, …) in one step, with a one-call reset.
- Track & channel coloring — color a track, a channel, or a whole group (drums, vocals, …) by color name or hex, reversible like every other change.
Plugin & preset control
- Read and set plugin parameters by name, on native and third-party plugins (the parameter list is resolved live).
- Chain suggestions and preset recommendations drawn from your actual installed library — read directly from FL's plugin database and preset folders on disk, so recommendations are limited to what you own.
Composition
- Multi-track MIDI export — generate a complete arrangement as a standard MIDI file to import.
- Multi-pattern arrangement — create, name, clone, and mark sections.
- Note and chord writing into the piano roll, with quantize to a grid (for new notes and existing ones).
- Composition in any scale or mode — Western modes, pentatonic, ragas, maqam, and beyond — through the scale composer, where Claude supplies the notes for the requested scale.
Audio analysis
- Tempo and key estimation from an audio file.
- Melody-to-MIDI transcription (CREPE pitch tracking, with a lighter fallback).
The server exposes 67 tools across 14 categories, plus 6 live resources (project, mixer, transport, channels, patterns, status) that Claude can read directly.
What sets it apart
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.
Limitations
These are properties of FL Studio's scripting API, stated plainly:
- Plugins, audio files, and rendering are UI-only. FL's API cannot load a plugin, load an audio file, or render audio. The plugin and preset tools therefore suggest — you load the chosen plugin or preset, and Claude then configures it. Audio export is done manually (File > Export); Claude can analyze the rendered file afterward.
- Note writing is armed once per session. A generated pyscript writes notes into the piano roll; FL exposes no API to run a pyscript, so you run "MCP_Apply" once from the piano roll's scripting menu at the start of a session.
- Micro-tonal and gamaka-heavy music is approximated. Scales with intervals smaller than a semitone (e.g. Arabic maqam) are rounded to the nearest semitone, and traditions built on gamaka/ornamentation (e.g. Carnatic) get the scale framework — the correct swaras and intervals — not gamaka or micro-tonal rendering. That's a limit of 12-tone MIDI, not of the tools.
Requirements
- Windows 10/11 (tested on Windows 11) or macOS
- FL Studio 2025 or newer
- Claude Desktop (or any MCP client)
- Python 3.10+
- Virtual MIDI ports:
- Windows: loopMIDI (download)
- macOS: the built-in IAC Driver
- Optional: ffmpeg on PATH (for MP3 analysis)
Linux is not yet supported — contributions welcome.
Setup
-
Create two virtual MIDI ports, named exactly
FLStudioMCP RXandFLStudioMCP TX.Windows: create both ports in loopMIDI.
macOS:
- Open Audio MIDI Setup.
- Choose Window > Show MIDI Studio.
- Double-click IAC Driver.
- Enable Device is online.
- Create or rename two ports exactly:
FLStudioMCP RXFLStudioMCP TX
-
Install the controller script and server:
Windows:
macOS:
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: -
Configure FL Studio — Options > MIDI Settings:
- Enable
FLStudioMCP RXas an input, set its controller type to FLStudioMCP, and give it a port number. - Enable
FLStudioMCP TXas an output with the same port number. - View > Script output should show
[FLStudioMCP] Ready.
- Enable
-
Start the bridge daemon (recommended) so the MIDI port is held by a stable process:
-
Register the server with Claude Desktop:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsontcproutes 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.
Troubleshooting
Usage examples
Plain-language prompts:
- "Scan my mix and tell me what's wrong."
- "Set up a vocal chain on the lead vocal using my plugins."
- "Suggest a vintage bass preset from my Serum library."
- "Compose an 8-bar melody in D Dorian and write it to the selected channel."
- "Export this arrangement to a MIDI file."
- "What tempo and key is this track?" (on an audio file)
Architecture
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/.
License
MIT — see LICENSE.
Status & contributing
Beta — the public 1.0 release. Windows and macOS are supported; Linux contributions are welcome. Issues and pull requests: github.com/rosasynthesiz/flstudio-mcp.
Source: README.md at commit ba94a6d
Tools
0Version history
1- v1.0.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts