Ableton For Ai
About
Bridge between Ableton Live and AI models. Inspect tracks, analyze audio (LUFS, spectrograms), and control mixing parameters in real-time via MCP.
Details
- Author
- peterkolbe
- Downloads
- 346
- Categories
- Other, AI
Jump to
- Real-time project inspection — tempo, tracks, mixer state, device chains
- Deep audio analysis — LUFS, Peak, RMS, transient detection, spectrograms
- Remote mixing control — volume, pan, mute, solo, any device parameter
- Sidechain detection — identifies active external sidechain inputs
- Bulk device parameter changes for preset loading
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Ableton For AiCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install the server with Python 3.11+ and AbletonOSC as a Control Surface in Ableton Live 11 or 12. Invoke MCP tools such as get_overview, analyze_stems, set_track_volume, and set_device_parameter to interact with the session.
list_resources
List resources available on the server.
read_resource
Read a resource available on the server.
analyze_stems
DEEP AUDIO ANALYSIS: Triggers the generation of summaries and spectrograms for all tracks. This is a heavy operation that: 1. Generates '.summary.json' (Frames, Transients, LUFS) for AI consumption. 2. Generates '.spectrogram.webp' (Log-frequency visualizations). 3. Generates '.analysis.json' (Full resolution data for internal use). ACTION: Use this when you need fresh audio data (e.g., after the user recorded new parts or changed audio effects that significantly alter the sound).
get_overview
SESSION DISCOVERY: Returns a high-level overview of the current Live set. Includes: - Tempo and Locators (Song structure). - Simplified Track list with mixer states (Index, Name, Volume, Panning, Mute, Solo). Use this for initial navigation and to identify track indices for further 'get_track' calls.
get_track
TRACK INSPECTION: Returns comprehensive data for a single track. Includes: - Mixer state (Volume, Panning, etc.). - Complete Device Chain. - All Device Parameters (including UI-readable strings like "-12.0 dB" or "1500 Hz"). Use this when you need to understand exactly how a specific track is processed or which parameters are available for manipulation.
get_tracks
BULK TRACK INSPECTION: Query full data for multiple tracks in a single call. Parameters: - index_min: Starting track index. - index_max: Ending track index. Returns an array of track objects, identical in structure to 'get_track'. Highly efficient for analyzing groups of tracks (e.g., all drum tracks).
set_device_parameter
REMOTE CONTROL: Sets a specific device parameter. Parameters: - track_index: The index of the track. - device_index: The index of the device in the chain. - parameter_index: The index of the parameter to change. - value: The new normalized value (0.0 to 1.0). Note: For UI-readable values (like dB or Hz), check 'get_track' output first, but always send the normalized 0.0-1.0 value for the actual change.
set_device_parameters
BULK REMOTE CONTROL: Sets multiple parameters for a device at once. Parameters: - values: A list of floats representing the new values for ALL parameters of the device. Recommended for loading 'presets' or making simultaneous multi-parameter adjustments.
set_track_volume
MIXER CONTROL: Sets the volume of a track. - value: 0.0 to 1.0 (corresponds to Ableton's internal fader scaling).
set_track_panning
MIXER CONTROL: Sets the panning of a track. - value: -1.0 (Left) to 1.0 (Right), 0.0 is Center.
set_track_mute
Toggles the mute status of a track (True=Muted, False=Active).
set_track_solo
Toggles the solo status of a track (True=Solo, False=Normal).
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"ableton for ai": {
"ableton-for-ai": {
"command": "uvx",
"args": [
"ableton-for-ai"
],
"env": {
"STEMS_SOURCE_DIR": "/path/to/your/stems"
}
}
}
}
}
McpServers
{
"ableton-for-ai": {
"command": "uvx",
"args": [
"ableton-for-ai"
],
"env": {
"STEMS_SOURCE_DIR": "/path/to/your/stems"
}
}
}
Ableton for AI
Bridge between Ableton Live and AI models via the Model Context Protocol (MCP). Makes your DAW hearable and visible to AI — inspect, analyze, and modify music projects in real-time.What it does
- Real-time project inspection — Read tempo, tracks, mixer state, device chains, and all plugin parameters directly from a running Ableton Live session. - Deep audio analysis — Generate LUFS, Peak, RMS, transient detection, and log-frequency spectrograms for every stem. - Remote mixing control — Adjust volume, panning, EQ, compressor settings, and any device parameter directly from the AI. - Sidechain detection — Automatically identifies active external sidechain inputs on devices.Tools
| Tool | Description | |------|-------------| |get_overview | Session discovery — tempo, locators, all tracks with mixer state |
| get_track | Deep-dive into a single track (devices + all parameters) |
| get_tracks | Bulk fetch full data for a range of tracks |
| analyze_stems | Generate audio summaries + spectrograms for all tracks |
| set_track_volume | Adjust track volume (0.0–1.0) |
| set_track_panning | Adjust track panning (-1.0 to 1.0) |
| set_track_mute / set_track_solo | Mute/solo control |
| set_device_parameter | Change any device parameter by normalized value |
| set_device_parameters | Bulk-set all parameters of a device (preset loading) |
Resources
-ableton://stems/{track_name}/summary — Compressed audio analysis (JSON)
- ableton://stems/{track_name}/spectrogram — Log-frequency spectrogram (WebP)
- ableton://stems/available/summaries — List tracks with available analysis
- ableton://stems/available/spectrograms — List tracks with available spectrograms
Use Cases
- 🎛️ "Analyze my mix and suggest EQ adjustments to reduce frequency clashing" - 🔊 "Set the kick volume to -6dB and reduce the reverb send on vocals" - 📊 "Show me the spectrogram of the bass track and identify problematic resonances" - 🎚️ "Give me an overview of all track levels and suggest a better gain staging"Requirements
- Ableton Live 11/12 with AbletonOSC installed as Control Surface - Python 3.11+ - macOS or WindowsSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




