mcpField
F
FL Studio Agent

FL Studio Agent

Local
github.com/origami-researchMedia & Design1Updated 1d ago

About FL Studio Agent

FL Studio Agent is an MCP server, Python SDK, and native Bridge plugin for controlling FL Studio from an AI agent. It supports live musical edits, sound checks, WAV rendering, and deterministic WAV analysis in the user's FL Studio.

Key features

  1. 01Write and clear notes
  2. 02Set tempo, levels, and parameters
  3. 03Read scene and note details
  4. 04Check channel sound and mixer peaks
  5. 05Render arrangements to WAV
  6. 06Analyze WAV files

Use cases

  1. 01Create or edit a musical passage in FL Studio
  2. 02Check which channels sound during playback
  3. 03Render an arrangement to a WAV mix
  4. 04Analyze a rendered WAV

MCP support

The MCP server exposes five tools for controlling and inspecting FL Studio, checking playback, rendering, and analyzing WAV files. It connects to the local FL Studio setup through its Bridge plugin and MIDI controller script.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"origami-research-fl-studio-agent": {
"command": "uvx",
"args": [
"fl-studio-agent"
],
"env": {
"FLMCP_FL_LICENSE": "<FLMCP_FL_LICENSE>"
}
}
}
}
Run commanduvx fl-studio-agent
Environment variables to set
FLMCP_FL_LICENSESet to 'trial' when FL Studio runs as the unregistered trial (it cannot reopen saved projects); 'licensed' otherwise.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypifl-studio-agent0.1.6

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

FL Studio Agent

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

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

Claude Code:

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 install loopMIDI and add two ports named exactly FLMCP Req and FLMCP Res (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):

    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 for live writes 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. Add the server to your client with a button above or a config below, open FL Studio, and ask for "a 4-bar chord loop in A minor".

Claude Code
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 into FL.

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

{
  "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:

{
  "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):

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):

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

Troubleshooting

Run the doctor while FL Studio is open:

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, and the agent project, with a fix for anything not connected. The usual fixes: open FL Studio before your client starts the server; 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, because the trial cannot reopen saved projects. 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.

Development

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

scripts/gate.sh

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

Documentation

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.