AbletonMCP
Provides a community platform for users to give feedback, get inspired, and build on top of the MCP integration for Ableton Live.
Integrates with MIDI protocol to allow creation and editing of MIDI clips with notes, enabling AI-assisted composition and music arrangement within Ableton Live.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AbletonMCP create a new MIDI track with a piano instrument and add a simple chord progression"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AbletonMCP - Ableton Live Model Context Protocol Integration
AbletonMCP connects Ableton Live to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Ableton Live. This integration enables prompt-assisted music production, track creation, and Live session manipulation.
Join the Community
Give feedback, get inspired, and build on top of the MCP: Discord. Made by Siddharth
Features
Two-way communication: Connect Claude AI to Ableton Live through a socket-based server
Track manipulation: Create, modify, and manipulate MIDI and audio tracks
Instrument and effect selection: Claude can access and load the right instruments, effects and sounds from Ableton's library
Clip creation: Create and edit MIDI clips with notes
Session control: Start and stop playback, fire clips, and control transport
Related MCP server: ableton-mcp
Components
The system consists of two main components:
Ableton Remote Script (
Ableton_Remote_Script/__init__.py): A MIDI Remote Script for Ableton Live that creates a socket server to receive and execute commandsMCP Server (
server.py): A Python server that implements the Model Context Protocol and connects to the Ableton Remote Script
Installation
Installing via Smithery
To install Ableton Live Integration for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ahujasid/ableton-mcp --client claudePrerequisites
Ableton Live 10 or newer
Python 3.8 or newer
If you're on Mac, please install uv as:
brew install uvOtherwise, install from [uv's official website][https://docs.astral.sh/uv/getting-started/installation/]
⚠️ 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⚠️ Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both
Installing the Ableton Remote Script
Follow along with the setup instructions video
Download the
AbletonMCP_Remote_Script/__init__.pyfile from this repoCopy the folder to Ableton's MIDI Remote Scripts directory. Different OS and versions have different locations. One of these should work, you might have to look:
For macOS:
Method 1: Go to Applications > Right-click on Ableton Live app → Show Package Contents → Navigate to:
Contents/App-Resources/MIDI Remote Scripts/Method 2: If it's not there in the first method, use the direct path (replace XX with your version number):
/Users/[Username]/Library/Preferences/Ableton/Live XX/User Remote Scripts
For Windows:
Method 1: C:\Users[Username]\AppData\Roaming\Ableton\Live x.x.x\Preferences\User Remote Scripts
Method 2:
C:\ProgramData\Ableton\Live XX\Resources\MIDI Remote Scripts\Method 3:
C:\Program Files\Ableton\Live XX\Resources\MIDI Remote Scripts\Note: Replace XX with your Ableton version number (e.g., 10, 11, 12)
Create a folder called 'AbletonMCP' in the Remote Scripts directory and paste the downloaded '__init__.py' file
Launch Ableton Live
Go to Settings/Preferences → Link, Tempo & MIDI
In the Control Surface dropdown, select "AbletonMCP"
Set Input and Output to "None"
Usage
Starting the Connection
Ensure the Ableton Remote Script is loaded in Ableton Live
Make sure the MCP server is configured in Claude Desktop or Cursor
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, 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:
"Create an 80s synthwave track" Demo
"Create a Metro Boomin style hip-hop beat"
"Create a new MIDI track with a synth bass instrument"
"Add reverb to my drums"
"Create a 4-bar MIDI clip with a simple melody"
"Get information about the current Ableton session"
"Load a 808 drum rack into the selected track"
"Add a jazz chord progression to the clip in track 1"
"Set the tempo to 120 BPM"
"Play the clip in track 2"
Troubleshooting
Connection issues: Make sure the Ableton Remote Script is loaded, and the MCP server is configured on Claude
Timeout errors: Try simplifying your requests or breaking them into smaller steps
Have you tried turning it off and on again?: If you're still having connection errors, try restarting both Claude and Ableton Live
Technical Details
Communication Protocol
The system uses a simple JSON-based protocol over TCP sockets:
Commands are sent as JSON objects with a
typeand optionalparamsResponses are JSON objects with a
statusandresultormessage
Limitations & Security Considerations
Creating complex musical arrangements might need to be broken down into smaller steps
The tool is designed to work with Ableton's default devices and browser items
Always save your work before extensive experimentation
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Disclaimer
This is a third-party integration and not made by Ableton.
Available Tools
16 toolsadd_notes_to_clip_toolC
Add MIDI notes to a clip.
Inputs: track_index (required), clip_index (required), notes (required).
create_clip_toolC
Create a new MIDI clip in the specified track and clip slot.
Inputs: track_index (required), clip_index (required), length.
create_midi_track_toolC
Create a new MIDI track in the Ableton session.
Inputs: index.
fire_clip_toolC
Start playing a clip.
Inputs: track_index (required), clip_index (required).
get_browser_items_at_path_toolC
Get browser items at a specific path in Ableton's browser.
Inputs: path (required).
get_browser_tree_toolC
Get a hierarchical tree of browser categories from Ableton.
Inputs: category_type.
get_session_info_toolB
Get detailed information about the current Ableton session
Inputs: no named parameters.
get_track_info_toolC
Get detailed information about a specific track in Ableton.
Inputs: track_index (required).
load_drum_kit_toolC
Load a drum rack and then load a specific drum kit into it.
Inputs: track_index (required), rack_uri (required), kit_path (required).
load_instrument_or_effect_toolC
Load an instrument or effect onto a track using its URI.
Inputs: track_index (required), uri (required).
set_clip_name_toolC
Set the name of a clip.
Inputs: track_index (required), clip_index (required), name (required).
set_tempo_toolC
Set the tempo of the Ableton session.
Inputs: tempo (required).
set_track_name_toolC
Set the name of a track.
Inputs: track_index (required), name (required).
start_playback_toolB
Start playing the Ableton session.
Inputs: no named parameters.
stop_clip_toolC
Stop playing a clip.
Inputs: track_index (required), clip_index (required).
stop_playback_toolB
Stop playing the Ableton session.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 16 tools
Each tool has a clearly distinct purpose targeting specific resources and actions in Ableton Live, such as clips, tracks, browser items, session playback, and tempo. There is no overlap or ambiguity between tools like fire_clip_tool and stop_clip_tool, or start_playback_tool and stop_playback_tool, making misselection unlikely.
All tool names follow a consistent verb_noun pattern with snake_case, such as add_notes_to_clip_tool, create_clip_tool, and get_session_info_tool. This predictable naming convention enhances readability and usability across the entire set.
With 16 tools, the count is slightly high but reasonable for a comprehensive music production environment like Ableton Live. It covers essential operations without being excessive, though it borders on the upper limit of typical well-scoped servers (3-15 tools).
The tool set provides good coverage for core Ableton workflows, including clip and track management, session control, browser navigation, and tempo settings. Minor gaps exist, such as no tools for deleting clips or tracks, but agents can likely work around these with the available creation and info tools.
Related MCP Connectors
MCP server for Producer/Riffusion AI music generation
Remote MCP server for audio stem separation, denoise, reverb, and MIDI export.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Generate AI music via the Lacuna Music API from MCP clients like Claude Desktop & Code.
Related MCP Servers
- AlicenseCqualityDmaintenanceA Model Context Protocol server that enables real-time interaction with Ableton Live, allowing AI assistants to control song creation, track management, clip operations, and audio recording workflows.23133 npm94MIT
- AlicenseBqualityDmaintenanceConnects Ableton Live to Claude AI through the Model Context Protocol, enabling AI-assisted music production and Live session manipulation via over 200 tools.10060MIT
- AlicenseBqualityDmaintenanceConnects Ableton Live to Claude AI via the Model Context Protocol, enabling prompt-assisted music production, track creation, and Live session manipulation.16MIT
- AlicenseAqualityDmaintenanceMCP server that bridges Ableton Live with AI models, enabling real-time project inspection and control such as track overview, device parameters, and audio analysis.1235 PyPI1MIT