Back to all posts

Ableton MCP Server: Complete Guide (2026)

The Ableton MCP server lets Claude drive Ableton Live — create tracks, write MIDI clips, load instruments, and arrange full songs from a prompt. It works by running a tiny socket server inside Live and a Python MCP server your AI client launches. This guide covers the two-part install, the MIDI Remote Script step everyone trips on, what it can genuinely build, and the honest limits (timeouts, third-party plugins, no audio export) before you point an agent at your session.

Updated June 2026 ~13 min read3,000 words
Editorial illustration: a central luminous teal waveform-and-MIDI-clip glyph at the geometric center, its grid of glowing note blocks linked by a softly pulsing socket-connection arc to a single small generic AI-client glyph, set against a deep midnight navy backdrop with faint mixing-console fader shapes.

TL;DR + what you actually need

Ableton MCP is two programs that talk over a socket, not one. Get both running and Claude can control Live; miss either and nothing happens. The fast path:

  • Register the MCP server. In Claude Desktop or Cursor, the command is uvx ableton-mcp. You need the uv package manager and Python 3.8+ first.
  • Install the Remote Script in Live. Copy the project’s __init__.py into a folder named AbletonMCP inside Ableton’s MIDI Remote Scripts directory, then pick “AbletonMCP” as a Control Surface in Live’s MIDI settings.
  • Run only one client. Claude Desktop or Cursor, not both — two MCP servers fighting over the same socket is the README’s explicit warning.

Three facts to set expectations:

  • It’s free and MIT-licensed. Maintained by Siddharth Ahuja at ahujasid/ableton-mcp. You still need a paid copy of Ableton Live (10 or newer).
  • It’s desktop-only. The server reaches Live over a local socket, so a desktop client is required. The Claude.ai website can’t do it.
  • It controls Live; it doesn’t render audio. Think “an assistant clicking around your session,” not “a model that generates a finished WAV.”

The rest of this guide explains the socket architecture, walks the full install including the Remote Script step that trips most people, shows real prompts, and ends with the troubleshooting that bites first.

What Ableton MCP actually does

Ableton Live is a digital audio workstation (DAW) — the software producers use to record, sequence, and mix music. Ableton MCP gives an AI agent a set of verbs for driving it: make a MIDI track, drop a synth on it, write a four-bar bassline, load a reverb, set the tempo, hit play. MCP (Model Context Protocol — the open standard that lets an AI client call external tools) is the wire that carries those verbs from Claude into Live.

Concretely, you type a request in Claude — “make an 80s synthwave track” — and the agent issues a sequence of tool calls that create tracks, pick instruments from Live’s own browser, add MIDI notes, and apply effects. The maintainer’s launch demo built exactly that “lush 80s synthwave track in just two prompts,” and the README ships a list of one-line commands like “Create a Metro Boomin style hip-hop beat” and “Load a 808 drum rack into the selected track.”

The honest framing: this is a control layer, not a generative audio model. Claude isn’t synthesising sound — it’s deciding which of Live’s existing instruments and patterns to assemble, then operating Live to do it. The musicality comes from Live’s devices plus the model’s sense of arrangement, not from any audio generation. That distinction matters when you judge the output.

How it works: two halves and a socket

This is the part most guides gloss, and it explains every quirk you’ll hit. Ableton MCP is two separate components that communicate over a TCP socket on your local machine:

Inside Ableton

MIDI Remote Script

A small Python script (__init__.py) you drop into Live’s Remote Scripts folder. It spins up a socket server inside Live and executes the commands it receives — creating tracks, firing clips, loading devices.

Outside Ableton

MCP server (server.py)

A Python server your AI client launches via uvx ableton-mcp. It speaks MCP to Claude on one side and the JSON-over-socket protocol to the Remote Script on the other.

The protocol between them is deliberately simple: commands go out as JSON objects with a type and optional params; responses come back as JSON with a status and a result or message, all over plain TCP. That two-way, socket-based design is what lets a request flow Claude → MCP server → socket → Live, and the answer flow back.

One consequence worth holding in your head: because the link is a localhost socket, both ends must be on the same computer, and a desktop app has to own the connection. That single fact is why the Claude.ai website can’t drive Live and why “is the Remote Script actually running?” is the first question to ask whenever it goes quiet.

Install (both halves)

Prerequisites first: Ableton Live 10 or newer, Python 3.8 or newer, and the uv package manager. On macOS, install uv with:

brew install uv

On other platforms, grab it from uv’s installation page. The README is blunt about this: do not proceed before installing uv, because uvx is what runs the server.

Claude Desktop

Open Claude → Settings → Developer → Edit Config and add the server to claude_desktop_config.json:

{
  "mcpServers": {
    "AbletonMCP": {
      "command": "uvx",
      "args": ["ableton-mcp"]
    }
  }
}

Cursor

Open Cursor Settings → MCP and paste this as the command — uvx runs it without a permanent install:

uvx ableton-mcp

Whichever you pick, run only one instance — Claude Desktop or Cursor, not both at once. Two MCP servers contending for Live’s socket is the README’s explicit caution. If you want to disable the anonymous telemetry while you’re here, add an env block:

{
  "mcpServers": {
    "AbletonMCP": {
      "command": "uvx",
      "args": ["ableton-mcp"],
      "env": { "ABLETON_MCP_DISABLE_TELEMETRY": "true" }
    }
  }
}

The catalog entry and one-click panel for this server live on its detail page. The embed below pulls install configs straight from our catalog when they’re available; if a client row is empty, the uvx ableton-mcp command above is the canonical path from the maintainer’s README. For each client’s exact config-file location, see Claude Desktop and Cursor on mcp.directory.

One-line install · Ableton Live

Open server page

Install

The Remote Script step (where everyone trips)

Registering the MCP server is only half the job. Live won’t accept commands until its Remote Script is installed and selected. This is the step that generates the most “it doesn’t work” threads, so do it carefully.

  1. Download AbletonMCP_Remote_Script/__init__.py from the repo.
  2. Find Live’s MIDI Remote Scripts directory. The location differs by OS and Live version — on macOS it’s often inside the app bundle (Show Package Contents → Contents/App-Resources/MIDI Remote Scripts/) or under ~/Library/Preferences/Ableton/Live XX/User Remote Scripts; on Windows it’s typically under \AppData\Roaming\Ableton\Live x.x.x\Preferences\User Remote Scripts. Replace XX with your version (10, 11, 12).
  3. Create a folder named exactly AbletonMCP in that directory and place the downloaded __init__.py inside it.
  4. Launch (or fully restart) Ableton Live — it only scans Remote Scripts at startup.
  5. Go to Settings/Preferences → Link, Tempo & MIDI, and in the Control Surface dropdown select “AbletonMCP”. Set its Input and Output to None.

When both halves are live, a hammer/tools icon for the Ableton MCP shows up in your client and the agent can start issuing commands. The two failure modes here are the folder being in the wrong Remote Scripts path (so “AbletonMCP” never appears in the dropdown) and forgetting to restart Live after copying. Both are covered in troubleshooting below.

What it can build

From the README’s capability list, the verbs the agent actually has:

  • Read session and track info, and change session parameters like tempo.
  • Create and modify MIDI and audio tracks; create, edit, and trigger clips; add notes to MIDI clips.
  • Load instruments and effects from Ableton’s browser onto a track.
  • Control playback — start, stop, fire clips — across both Session and Arrangement View.
  • Build full song arrangements end to end in Arrangement View, with sections like intro, buildup, drop, breakdown, and outro.

That last one is the headline capability and the one that surprised people: the agent doesn’t just sketch a loop, it can lay out a whole song structure autonomously in the Arrangement View. The opinionated read: it’s strongest as a fast scaffolder — it gets a track skeleton and instrument choices on screen in seconds, and then you, the producer, take over for the parts that are actually art.

Recipes

Four prompts that show the range, drawn from the README’s own examples and how producers describe using it. Each assumes both halves are running and a Live set is open.

Recipe 1 — Genre starter in two prompts

Open an empty set and ask: “Create an 80s synthwave track.” The agent makes the tracks, loads synths and a drum rack from Live’s browser, writes melodic and bass MIDI, and adds reverb and distortion. Follow with “Add a wider pad in the chorus and bump the tempo to 118.” You’ve gone from blank session to a sketch you can produce against, without touching the mouse.

Recipe 2 — Beat in a named style

“Create a Metro Boomin style hip-hop beat, then add a jazz chord progression to the clip in track 1.” The agent loads an 808 drum rack, programs the pattern, and writes chords into the named clip. Style prompts work because the model maps the reference to instrument and pattern choices — the output is a starting point in that idiom, not a clone of any specific song.

Recipe 3 — Full arrangement scaffold

“Create a full arrangement with an intro, buildup, drop, breakdown, and outro.” This drives the Arrangement View end to end. It’s also the prompt most likely to hit a timeout on a complex set — if it stalls, ask for one section at a time (“now build the breakdown”) instead of the whole song in one shot.

Recipe 4 — Targeted edits while you work

Keep it open as a hands-free assistant during a session: “Add reverb to my drums,” “Load a 808 drum rack into the selected track,” “Set the tempo to 120 BPM,” “Play the clip in track 2.” The small, specific commands are where it’s most reliable — the bigger and vaguer the ask, the more likely it needs breaking down.

What we got wrong the first time

Two assumptions cost time, and both come from treating this like a normal cloud MCP server instead of the two-process socket bridge it is.

We registered the MCP server and expected it to just work. Adding uvx ableton-mcp to the client and seeing no errors felt like success — but nothing happened, because the Remote Script wasn’t installed yet. The server had no socket to talk to. The fix is obvious in hindsight: both halves are mandatory, and the client side gives you no warning that the Live side is missing. Install the Remote Script first, confirm “AbletonMCP” is selected as a Control Surface, then test.

We asked for an entire song in one prompt and got a timeout. A “build me a full 3-minute track with five sections” request packs a huge number of socket round-trips into one turn, and on a busy set it stalls. The README says it plainly — complex arrangements may need to be broken into smaller steps. Prompting section by section turned a flaky experience into a dependable one. Treat it like pair-producing, not one-shot generation.

What it can’t do (read before you rely on it)

The boundaries are real and worth knowing up front, so you point it at the right jobs:

  • Third-party devices are hit or miss. It’s designed around Ableton’s default devices and browser items. Loading specific VST3 presets or unusual racks can fail — a real, reported issue, not a theoretical one.
  • No audio export. There’s no render-to-WAV tool. It builds and controls the set; you export from Live yourself.
  • Reading MIDI back out is weak. Pulling the notes out of an existing clip is a requested-but-missing capability, so don’t build a workflow that depends on the agent inspecting what’s already there.
  • Complex asks need chunking. Big arrangements time out; break them into steps.
  • It’s third-party. Not made by Ableton, and it tracks Live’s scripting surface on a best-effort basis — a new Live version can shift Remote Script paths or behaviour.

Troubleshooting

“AbletonMCP” isn’t in the Control Surface dropdown

The folder is in the wrong place or Live wasn’t restarted. The __init__.py must sit in a folder named exactly AbletonMCP inside your Live version’s MIDI Remote Scripts (or User Remote Scripts) directory, then Live must be relaunched. Live 12 on Windows is the most-reported variant — double-check the path for your exact version.

“Could not connect to Ableton” / server disconnected

The Remote Script isn’t running, so the MCP server has no socket to reach. Confirm “AbletonMCP” is selected as a Control Surface in Live, that Live is open, and that you’re running only one client. Then restart both Claude (or Cursor) and Live.

Timeout errors on a request

The ask is too big for one turn. Simplify it or break it into smaller steps — one track or one section per prompt — instead of asking for a whole arrangement at once.

An instrument or effect won’t load

It works against Ableton’s default devices and browser items. Third-party VST3 presets and exotic racks can fail to load — ask for a stock Live device instead, or load the plugin yourself and have the agent operate around it.

Nothing happens, and there’s no error at all

Classic “only one half is running.” The README’s own first move: have you tried turning it off and on again? Restart both Claude/Cursor and Ableton, and verify the Control Surface selection survived the restart.

Who it’s for, and who it isn’t

Use it if: you already produce in Ableton Live, you want a hands-free assistant to scaffold sketches and run small edits by voice or prompt, and you’re comfortable with a one-time Remote Script install and the fact that it’s a desktop-only, two-process setup. It’s a genuinely fun, fast way to get a session started and to learn what an agent can do inside a DAW.

Skip it if: you expected a model that generates finished, mastered audio (this controls Live, it doesn’t render sound), you work primarily with third-party VST chains it can’t reliably load, or you can’t run Claude Desktop / Cursor on the same machine as Live. And if you object on principle to giving an agent control of your DAW and files, that’s a fair line — see the community section.

Community signal

The launch landed loudly. The maintainer’s own demo of building an 80s synthwave track “in just two prompts” (embedded near the top of this post) drew thousands of likes, and producers showed up fast to push it. In r/ClaudeAI, one of the most-shared experiments was simply handing it a brief and letting it run:

Ok I have a job for you. You have an Ableton MCP tool. Your goal is to create, record and complete a full song ~2 mins 30 seconds in length. Make sure to introduce different melodies/sounds at different points.

r/ClaudeAI (Built with Claude) · Reddit

r/ClaudeAI — a popular prompt-and-let-it-run demo of the Ableton MCP

Source

In r/ableton, the maintainer’s announcement thread drew the usual mix of “super cool, been playing with it” enthusiasm and concrete friction — the most common reply being some version of “I added the script to my MIDI remote scripts directory but can’t see it,” which is exactly the Control Surface path issue covered above. The pattern across threads is consistent: people love what it does once it’s connected, and the hard part is always the two-part connection, never the music commands.

The contrarian voice is worth taking seriously, because it’s not really about the tool working. In r/beatmakers, a thread titled “Claude AI can control Ableton through MCP (is this the end?)” drew both a security objection and a values one:

Giving agentic AI access to your system, your DAW, all of your files etc is incredibly silly.

u/SuccessfulSpeed333 · Reddit

r/beatmakers — "Claude AI can control Ableton through MCP (is this the end?)"

Source
no because AI can't art. it can only 'replace us' if we use it and if we let it.

u/TallAsMountains · Reddit

r/beatmakers — the values objection from a working producer

Source

Both points are fair and worth holding. The security one is real: this gives an agent control of your DAW, so run it on a project you’d be fine resetting, and save before extensive experimentation (the README’s own advice). The “AI can’t art” point is a taste call, and it lines up with where the tool is actually strong — as a scaffolder and assistant for the mechanical parts (track setup, gain staging, renaming, sketching), leaving the creative decisions to you. Even the skeptic in that thread landed on roughly that: useful for “making things easier,” not for making the art.

The verdict

Our take

Ableton MCP is the most fun you can have wiring an agent into a creative app, and a genuinely useful scaffolder for producers who live in Live. Use it if you want hands-free track setup, small edits by prompt, and a fast way to get a session moving — and you’re fine with the desktop-only, two-process install. Skip it if you wanted finished generated audio, depend on third-party VST chains it can’t load, or can’t run a desktop client next to Live. Go in knowing it’s a control bridge over a local socket — that one fact explains both its reach and every gotcha in this guide.

FAQ

What is the Ableton MCP server?

Ableton MCP (the ahujasid/ableton-mcp project) is an open-source MCP server that lets Claude control Ableton Live. It has two parts: a MIDI Remote Script that runs a socket server inside Live, and a Python MCP server your AI client launches. Together they let an agent create tracks, write MIDI clips, load instruments, and build full arrangements by prompt.

How do I install the Ableton MCP server?

Two steps. First register the MCP server in your client — for Claude Desktop or Cursor the command is `uvx ableton-mcp` (you need the uv package manager and Python 3.8+). Second, copy the project's `__init__.py` into Ableton's MIDI Remote Scripts folder, restart Live, and select "AbletonMCP" in Settings → Link, Tempo & MIDI → Control Surface. Both halves must be running.

Is the Ableton MCP server free?

Yes. ahujasid/ableton-mcp is MIT-licensed and free. There is no API key and no paid tier. You do need a paid copy of Ableton Live (10 or newer) since the server controls your existing install — the MCP layer is free, the DAW is not. It is a third-party integration, not made by Ableton.

Does Ableton MCP work with the Claude website or only Claude Desktop?

It needs a client that runs on the same machine as Ableton and can launch a local (stdio) MCP server — Claude Desktop or Cursor. The Claude.ai website can't reach a socket on your computer, so it won't work there. The server talks to Live over a localhost TCP socket, which only a desktop app can open.

Why isn't AbletonMCP showing up in the Control Surface dropdown?

Almost always a wrong install path. The `__init__.py` must sit inside a folder named exactly `AbletonMCP` in Live's MIDI Remote Scripts directory, and that directory differs by OS and Live version. After copying, fully restart Live — it only scans Remote Scripts at launch. Live 12 on Windows is the most reported variant; double-check the User Remote Scripts path for your version.

What can Ableton MCP not do?

It works through Live's default devices and browser items, so third-party VST presets and exotic racks can fail to load. It has no audio-export tool, complex arrangements often need to be broken into smaller prompts to avoid timeouts, and it can't reliably read notes back out of existing MIDI clips. It controls Live; it does not render or mix audio for you.

Does Ableton MCP send my music anywhere?

No audio or project content leaves your machine. The server collects anonymous telemetry (which tools are used, error rates, active-user counts) by default, and explicitly states no personal info, project names, or audio is collected. Disable it by setting `ABLETON_MCP_DISABLE_TELEMETRY=true` in the server's environment.

Sources

Found an issue?

If something here is out of date — a renamed tool, a new install path, a Live version that shifts the Remote Script folder — email [email protected] or read more on our about page. We keep these guides current.