FL Studio Agent

io.github.origami-researchPublished by GitHub account origami-researchv0.1.6Updated Oct 29, 2026

Drive FL Studio from an AI agent: write notes, set tempo and levels, check what sounds, render.

VerifiedSTDIODesktop onlyDeveloper ToolsMedia & Design

Overview

AI-generated overview

Lets an AI assistant write notes, set tempo and levels, check what sounds, and render the mix inside your own FL Studio project.

What you can do
  • Write and clear notes, tempo, levels and plugin parameters by running Python against the FL SDK
  • Read the current musical scene, including notes by channel and pattern
  • Play a few bars and read mixer meters to see which channels sounded and why one is silent
  • Render the live arrangement once to a WAV file
  • Analyze a rendered WAV deterministically
When to use it
For music producers who want an assistant to build or tweak parts in a real FL Studio session and verify the result by listening to meters and rendering a mix, rather than editing project files offline.
Requirements
A local process started with uvx (Python 3.12) on macOS or Windows, with FL Studio 2026 installed. A one-time setup command installs the controller scripts and a native Bridge plugin, and the agent project FLMCP Agent.flp must be open in FL Studio. On Windows, loopMIDI with two ports named FLMCP Req and FLMCP Res is required. The environment variable FLMCP_FL_LICENSE must be set to trial or licensed.
Before you install
The run tool executes model-written Python; it is sandboxed to a workspace folder but can reach the public internet, and on macOS it does not block other machines on the local network. The engine, FL Studio and the Bridge are not sandboxed. Setup downloads a prebuilt plugin and installs files into FL's folders, and on Windows needs an administrator terminal. The trial license cannot reopen saved projects, so the agent project must not be saved.

Installation

In SourceWeft

  1. Open FL Studio Agent in the dashboard and add it to a workspace.
  2. 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

FL Studio Agent

[Claude writes a lo-fi beat in FL Studio and plays it to check the mixer meters before it renders]

fl-studio-agent lets an AI agent work in your own FL Studio. It writes notes, sets tempo, levels and plugin parameters, checks which channels sound, and renders the mix. It is an MCP server, a Python SDK, and a native Bridge plugin.

[Install in Cursor] [Install in VS Code] [Claude Desktop bundle] [PyPI] [License: MIT]

Claude Code:

bash
claude mcp add --scope user fl-studio -- uvx --python 3.12 fl-studio-agent

Quick start

You need FL Studio 2026 on macOS or Windows and uv.

  1. Install uv if you don't have it. macOS: curl -LsSf https://astral.sh/uv/install.sh | sh. Windows: powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex", then open a new terminal so uvx is on your PATH. Also on Windows, install loopMIDI, add two ports named exactly FLMCP Req and FLMCP Res, and tick Autostart loopMIDI in its tray menu so the ports come back after a restart (Windows has no virtual MIDI ports; macOS needs nothing).

  2. Set up FL Studio once. Start FL once if you never have, close it, then run (on Windows, in a terminal opened as administrator, because FL's plugin folder is under Program Files):

    bash
    uvx --python 3.12 --from fl-studio-agent fl-mcp-install

    It installs the controller and note scripts, assigns the controller's MIDI ports, creates the agent's own project (FLMCP Agent.flp; your other projects are never touched), and downloads the prebuilt Bridge plugin, the native FL effect the server requires to write notes and render, checking it against the release's SHA-256 sums. It is safe to rerun. To update later, run it with fl-studio-agent@latest in place of fl-studio-agent and restart FL and your client.

  3. Open the agent project in FL Studio: File > Open, FLMCP Agent.flp in FL's Projects folder (Documents/Image-Line/FL Studio/Projects). It carries the Bridge on its Master insert; in any other song there is no Bridge running, so notes and render are refused.

  4. Add the server to your client with a button above or a config below, and ask for "a 4-bar chord loop in A minor".

Claude Code
bash
claude mcp add --scope user fl-studio -- uvx --python 3.12 fl-studio-agent

Check it with claude mcp list.

Claude Desktop

Download fl-studio-agent.mcpb and open it (or drag it into Settings > Extensions). Claude Desktop installs the package itself; you still run step 2 once, which also installs the Bridge plugin the server requires into FL.

Or add this to claude_desktop_config.json (Settings > Developer > Edit Config):

json
{  "mcpServers": {    "fl-studio": {      "command": "uvx",      "args": [        "--python",        "3.12",        "fl-studio-agent"      ]    }  }}

If Claude Desktop reports spawn uvx ENOENT, it cannot see your shell's PATH: replace "uvx" with the full path that which uvx (macOS) or where uvx (Windows) prints.

Cursor

Use the Install in Cursor button above, or add this to ~/.cursor/mcp.json:

json
{  "mcpServers": {    "fl-studio": {      "command": "uvx",      "args": [        "--python",        "3.12",        "fl-studio-agent"      ]    }  }}
VS Code

Use the Install in VS Code button above, or run (macOS/Linux shell quoting):

bash
code --add-mcp '{"name": "fl-studio", "type": "stdio", "command": "uvx", "args": ["--python", "3.12", "fl-studio-agent"]}'
Windsurf and other clients

Add the standard entry to the client's MCP config (Windsurf: mcp_config.json, see its MCP docs):

json
{  "mcpServers": {    "fl-studio": {      "command": "uvx",      "args": [        "--python",        "3.12",        "fl-studio-agent"      ]    }  }}

Troubleshooting

Run the doctor while FL Studio is open:

bash
uvx --python 3.12 --from fl-studio-agent fl-mcp-doctor

It prints one JSON report of the control plane (controller script and MIDI ports), the note plane (the Bridge), and the agent project. Its status is ok only when all of them are connected, and not_ready otherwise, with a fix for each one that is not. The usual fixes: open FLMCP Agent.flp in FL Studio before your client starts the server (the doctor reports no running Bridge when another song is open, and rerunning step 2 when none is installed); after an upgrade rerun step 2 with fl-studio-agent@latest (a stale controller is reported); on Windows, keep loopMIDI running with both ports. Using the FL Studio trial? Set FLMCP_FL_LICENSE=trial in the server's env, and answer No when FL asks to save FLMCP Agent.flp: the trial cannot reopen a song it saved. If it was saved, delete it and rerun step 2, which creates it again. uvx --python 3.12 fl-studio-agent --version prints the installed version.

Tools

The server exposes five tools, one per job:

ToolPurpose
runExecute Python against the FL SDK: write and clear notes, tempo, levels, parameters. Its docstring is the SDK cheatsheet.
get_sceneRead what FL has now: a compact musical summary, or the notes (detail="notes", by channel and pattern).
checkPlay a few bars and read FL's mixer meters: which channels sounded, their peaks, and why a silent one is silent.
renderPlay the live arrangement once and record the mix to WAV.
analyzeAnalyze a WAV deterministically.

The working rhythm is write, check at milestones, render at the end. Every result is what FL now has, so nothing needs waiting for, saving, or re-reading. FL's transient refusals ("operation unsafe at current time", a busy control wire) are retried inside the engine; a model sees only errors it can act on. Setup diagnostics are for the operator, not the model: fl-mcp-doctor prints the same report as JSON.

How it works

Three complementary lanes: flpkit edits project files, the native Bridge plugin performs live host operations, and the MIDI controller script handles live controller operations. SETUP.md covers installing from a source checkout and building the Bridge.

Security

The Python the model writes in run, and the shell and file tools when they are on, runs in a sandbox limited to its own workspace folder, on macOS and Windows. It can read and write that folder and reach the public internet, so pip install works. It cannot read your home folder or your other files, reach services on this computer (FL's control ports included), or touch other programs. The engine itself, FL Studio and the Bridge are not sandboxed; the model's code reaches FL only through the engine. Before any model code runs, the engine checks that the sandbox holds and refuses to run the code if it does not; the MCP server reports confined=true. On macOS the sandbox does not block other computers on your local network. Details: docs/38.

Development

For a disposable live smoke session, run fl-mcp-dev-session. For the local merge gate, run:

bash
scripts/gate.sh

The gate is the authoritative test count and verification contract; see docs/gate.md for its current stages.

Documentation

Source: README.md at commit 69dc76d

Tools

0
SourceWeft started this package once in an isolated sandbox, without credentials, to list its tools. That failed: the server did not start.

Version history

2
  1. v0.1.6LatestOct 29, 2026
  2. v0.1.2Oct 23, 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