ClaudeCodeMod

All shelves / MCP servers

AbletonMCP Server

ahujasid/ableton-mcp · 2.6k stars · Python · MIT

MCP server Control Ableton Live with any LLM: create tracks, arrange clips & compose music via MCP

Install

In your shell
uvx ableton-mcp

These repos do not share one command. When an entry shows a command, it was copied as published. Check the repo's README before you run it.

Open the repo

Files

README.md

Ableton MCP

Connect Ableton Live to Claude AI

Prompt-assisted music production, end-to-end track creation, and Live session and arrangement manipulation — driven by AI.

Setup Video · Discord · Issues

Quickstart

Three steps: install uv, point your MCP client at the server, install the Ableton Remote Script.

1. Install uv

# macOS
brew install uv

Otherwise, install from uv's official website.

Warning: Do not proceed before installing uv.

2. Add the MCP server to your client

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

Paste this as a command:

uvx ableton-mcp

Warning: Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both.

3. Install the Ableton Remote Script

uvx --from ableton-mcp ableton-mcp-install-script
uvx --from ableton-mcp ableton-mcp-install-script --list-targets   # preview target folders first

4. Connect

  1. Launch Ableton Live
  2. Go to Settings/Preferences → Link, Tempo & MIDI
  3. In the Control Surface dropdown, select AbletonMCP
  4. Set Input and Output to None

That's it — ask Claude to build something.

Table of Contents

  • Quickstart
  • Features
  • Components
  • Installation
  • Prerequisites
  • Claude for Desktop Integration
  • Cursor Integration
  • Installing the Ableton Remote Script
  • Usage
  • Starting the Connection
  • Using with Claude
  • Capabilities
  • Example Commands
  • Troubleshooting
  • Technical Details
  • Limitations & Security Considerations
  • Telemetry
  • Join the Community
  • Contributing
  • Disclaimer

Features

Components

The system consists of two main components:

  1. Ableton Remote Script (Ableton_Remote_Script/__init__.py) — a MIDI Remote Script for Ableton Live that creates a socket server to receive and execute commands
  2. MCP Server (server.py) — a Python server that implements the Model Context Protocol and connects to the Ableton Remote Script

Installation

Prerequisites

  • Ableton Live 10 or newer
  • Python 3.8 or newer
  • uv package manager

If you're on Mac, please install uv as:

brew install uv

Otherwise, install from uv's official website

Warning: Do not proceed before installing uv.

Claude for Desktop Integration

Follow along with the setup instructions video

Go to Claude → Settings → Developer → Edit Config → claude_desktop_config.json to include the following:

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

Cursor Integration

Run ableton-mcp without installing it permanently through uvx. Go to Cursor Settings → MCP and paste this as a command:

uvx ableton-mcp

Warning: Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both.

Claude Code Integration

In the terminal, run:

claude mcp add AbletonMCP uvx ableton-mcp

Installing the Ableton Remote Script

Follow along with the setup instructions video

Install the Remote Script with:

uvx --from ableton-mcp ableton-mcp-install-script
uvx --from ableton-mcp ableton-mcp-install-script --list-targets   # preview target folders first

If you installed the package with pip or pipx, the command is on your PATH directly — just run ableton-mcp-install-script.

This copies the matching Remote Script into your Ableton User Library's Remote Scripts folder — the location Live (10.1.13+) scans for third-party control surface scripts. The installer reads the User Library location from Live's Library.cfg, falling back to the default (~/Music/Ableton/User Library on macOS, Documents\Ableton\User Library on Windows). If a different version of the script is already there, the existing file is backed up to __init__.py.bak before being replaced.

If your User Library lives somewhere non-standard and isn't detected, point the installer at it directly:

uvx --from ableton-mcp ableton-mcp-install-script --target "/path/to/User Library/Remote Scripts"

The legacy Preferences/User Remote Scripts folder (used for instant-mapping configs, not Python control surfaces) is no longer targeted by default; pass --legacy if you need it for an old Live version.

Then restart Ableton (or re-select the AbletonMCP control surface) so Live loads it. Re-run the command after upgrading the package — the server logs a warning when the loaded script version doesn't match what it expects.

Note: The server does not install the script on startup. Writing into Ableton's preferences directory is an explicit action, not a side effect of launching a server.

First-time Ableton setup:

  1. Run uvx --from ableton-mcp ableton-mcp-install-script
  2. Launch Ableton Live
  3. Go to Settings/Preferences → Link, Tempo & MIDI
  4. In the Control Surface dropdown, select AbletonMCP
  5. Set Input and Output to None
  • macOS: ~/Music/Ableton/User Library/Remote Scripts/AbletonMCP/
  • Windows: C:\Users\[Username]\Documents\Ableton\User Library\Remote Scripts\AbletonMCP\

If you've moved your User Library, use its actual location (shown in Live under Preferences → Library → Location of User Library), and create the Remote Scripts folder inside it if it doesn't exist yet.

The MCP server and Remote Script share a version handshake (get_remote_script_info). If they diverge, newer tools degrade gracefully until Live is restarted.

Usage

Starting the Connection

  1. Ensure the Ableton Remote Script is loaded in Ableton Live
  2. Make sure the MCP server is configured in Claude Desktop or Cursor
  3. The connection should be established automatically when you interact with Claude

Using with Claude

Once the config file has been set on Claude, and the remote script is running in Ableton, you will see a hammer icon with tools for the Ableton MCP.

Capabilities

  • Get session and track information
  • Create and modify MIDI and audio tracks
  • Create full song arrangements from start to finish in Arrangement View
  • Create, edit, and trigger clips
  • Control playback
  • Load instruments and effects from Ableton's browser
  • Add notes to MIDI clips
  • Change tempo and other session parameters

Example Commands

Here are some examples of what you can ask Claude to do:

Facts

Kind
MCP server
Repo
ahujasid/ableton-mcp
Group
Uncategorized
Stars
2.6k
License
MIT
Language
Python
Last push
2026-09-22
Forks
427
Topics
ableton, ai, claude, daw, generative-ai, llm, mcp, model-context-protocol, music, python

More on this shelf

  1. 1Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  2. 2Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k
  3. 3Gitmodelcontextprotocol/serversA Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.85.8k
  4. 4Memorymodelcontextprotocol/serversA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.85.8k
  5. 5Sequential Thinkingmodelcontextprotocol/serversAn MCP server implementation that provides a tool for dynamic and reflective problem-solving through a structured thinking process.85.8k
  6. 6Timemodelcontextprotocol/serversA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.85.8k