AbletonMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_checkA | Check if Ableton Live is connected and responsive. |
| get_playback_positionA | Get the current playback position and transport state. |
| get_session_infoA | Get detailed information about the current Ableton session |
| get_track_infoB | Get detailed information about a specific track in Ableton. Parameters:
|
| get_track_colorC | Get the color of a track. Parameters:
|
| get_clip_colorC | Get the color of a clip. Parameters:
|
| get_scene_colorC | Get the color of a scene. Parameters:
|
| get_clip_loopB | Get the loop settings of a clip. Parameters:
|
| get_send_levelB | Get the send level from a track to a return track. Parameters:
|
| create_midi_trackA | Create a new MIDI track in the Ableton session. Parameters:
|
| create_audio_trackA | Create a new audio track in the Ableton session. Parameters:
|
| set_track_nameB | Set the name of a track. Parameters:
|
| set_track_muteA | Set the mute state of a track. Parameters:
|
| set_track_soloA | Set the solo state of a track. Parameters:
|
| set_track_armB | Set the arm (record enable) state of a track. Parameters:
|
| set_track_volumeA | Set the volume of a track. Parameters:
|
| set_track_panA | Set the panning of a track. Parameters:
|
| create_clipB | Create a new MIDI clip in the specified track and clip slot. Parameters:
|
| delete_clipB | Delete a clip from a clip slot. Parameters:
|
| get_clip_notesC | Get all MIDI notes from a clip. Parameters:
|
| add_notes_to_clipB | Add MIDI notes to a clip. Parameters:
|
| set_clip_nameC | Set the name of a clip. Parameters:
|
| set_tempoC | Set the tempo of the Ableton session. Parameters:
|
| load_instrument_or_effectB | Load an instrument or effect onto a track using its URI. Parameters:
|
| fire_clipB | Start playing a clip. Parameters:
|
| stop_clipB | Stop playing a clip. Parameters:
|
| start_playbackB | Start playing the Ableton session. |
| stop_playbackA | Stop playing the Ableton session. |
| get_device_parametersA | Get all parameters from a device on a track. Parameters:
|
| set_device_parameterA | Set a device parameter value. Parameters:
|
| get_all_scenesB | Get information about all scenes in the session. |
| create_sceneA | Create a new scene. Parameters:
|
| delete_sceneC | Delete a scene. Parameters:
|
| fire_sceneA | Fire (trigger) a scene to play all clips in that row. Parameters:
|
| stop_sceneB | Stop all clips in a scene. Parameters:
|
| set_scene_nameB | Set the name of a scene. Parameters:
|
| set_scene_colorA | Set the color of a scene. Parameters:
|
| duplicate_sceneB | Duplicate a scene. Parameters:
|
| delete_trackB | Delete a track. Parameters:
|
| duplicate_trackB | Duplicate a track with all its clips and devices. Parameters:
|
| freeze_trackB | Freeze a track (render all devices to audio for CPU optimization). Parameters:
|
| flatten_trackB | Flatten a frozen track (convert freeze to permanent audio). The track must be frozen first. Parameters:
|
| unarm_allA | Unarm all tracks in the session. Useful before recording to ensure only specific tracks will record. |
| move_device_leftB | Move a device one position to the left in the device chain. Parameters:
|
| move_device_rightA | Move a device one position to the right in the device chain. Parameters:
|
| set_track_colorA | Set the color of a track. Parameters:
|
| toggle_deviceA | Toggle a device on or off. Parameters:
|
| delete_deviceA | Delete a device from a track. Parameters:
|
| duplicate_clipC | Duplicate a clip to the next empty slot. Parameters:
|
| set_clip_colorB | Set the color of a clip. Parameters:
|
| set_clip_loopC | Set the loop settings of a clip. Parameters:
|
| remove_notesA | Remove notes from a clip within a specified range. Parameters:
|
| remove_all_notesC | Remove all notes from a clip. Parameters:
|
| transpose_notesB | Transpose all notes in a clip. Parameters:
|
| undoB | Undo the last operation in Ableton. |
| redoA | Redo the last undone operation in Ableton. |
| get_return_tracksB | Get information about all return (aux) tracks. |
| get_return_track_infoC | Get detailed information about a return track. Parameters:
|
| set_send_levelB | Set the send level from a track to a return track. Parameters:
|
| set_return_volumeA | Set the volume of a return track. Parameters:
|
| set_return_panA | Set the panning of a return track. Parameters:
|
| get_current_viewA | Get information about the current view state (selected track, scene, etc.). |
| focus_viewC | Focus a specific view in Ableton. Parameters:
|
| select_trackC | Select a track. Parameters:
|
| select_sceneC | Select a scene. Parameters:
|
| select_clipB | Select a clip slot. Parameters:
|
| start_recordingC | Start recording in Ableton. |
| stop_recordingB | Stop recording in Ableton. |
| toggle_session_recordB | Toggle session record mode. |
| toggle_arrangement_recordC | Toggle arrangement record mode. |
| set_overdubB | Set overdub mode. Parameters:
|
| capture_midiA | Capture MIDI that was played recently (like Ableton's Capture feature). |
| get_arrangement_lengthA | Get the length and loop settings of the arrangement. |
| set_arrangement_loopB | Set the arrangement loop region. Parameters:
|
| jump_to_timeA | Jump to a specific time in the arrangement. Parameters:
|
| get_locatorsA | Get all locators/cue points in the arrangement. |
| create_locatorB | Create a new locator/cue point. Parameters:
|
| delete_locatorC | Delete a locator. Parameters:
|
| get_track_input_routingC | Get the input routing of a track. Parameters:
|
| get_track_output_routingC | Get the output routing of a track. Parameters:
|
| get_available_inputsB | Get available input routing options for a track. Parameters:
|
| get_available_outputsB | Get available output routing options for a track. Parameters:
|
| set_track_input_routingC | Set the input routing of a track. Parameters:
|
| set_track_output_routingB | Set the output routing of a track. Parameters:
|
| get_cpu_loadB | Get the current CPU load of Ableton. |
| get_session_pathA | Get the file path of the current session. |
| is_session_modifiedA | Check if the session has unsaved changes. |
| get_metronome_stateB | Get the current metronome state. |
| set_metronomeA | Turn the metronome on or off. Parameters:
|
| get_scale_notesB | Get the notes in a musical scale. Parameters:
|
| quantize_clip_notesC | Quantize notes in a clip to a grid. Parameters:
|
| humanize_clip_timingB | Add random timing variation to notes in a clip for a more human feel. Parameters:
|
| humanize_clip_velocityA | Add random velocity variation to notes in a clip for a more human feel. Parameters:
|
| generate_drum_patternB | Generate a drum pattern and add it to a clip. Parameters:
|
| generate_basslineB | Generate a bassline pattern and add it to a clip. Parameters:
|
| get_browser_treeA | Get a hierarchical tree of browser categories from Ableton. Parameters:
|
| get_browser_items_at_pathA | Get browser items at a specific path in Ableton's browser. Parameters:
|
| load_drum_kitA | Load a drum rack and then load a specific drum kit into it. Parameters:
|
| get_master_infoA | Get information about the master track including volume, pan, and devices. |
| set_master_volumeA | Set the master track volume. Parameters:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cliffc2/ableton-mcp2'
If you have feedback or need assistance with the MCP directory API, please join our Discord server