Ableton Live 12 MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| live12_transport_playA | Starts or resumes song playback in Ableton Live 12. If restart is true, playback starts from 1.1.1 or arrangement start marker; otherwise playback resumes from current playhead position. |
| live12_transport_stopB | Stops song playback in Ableton Live 12 (Song.stop_playing). |
| live12_transport_recordA | Enables recording in Ableton Live 12. Can target either the arrangement timeline (Song.record_mode = True) or session clip slots (Song.session_record = True). |
| live12_transport_set_tempoB | Sets the project tempo in beats per minute (BPM) in Ableton Live 12 (Song.tempo). Rejects values outside [20.0, 999.0]. |
| live12_transport_set_time_signatureB | Sets the project time signature in Ableton Live 12 (Song.signature_numerator and signature_denominator). Denominator must be 1, 2, 4, 8, or 16. |
| live12_transport_set_loopC | Configures arrangement loop in Ableton Live 12 (Song.loop, Song.loop_start, Song.loop_length). Length must be strictly greater than 0. |
| live12_transport_set_punchC | Enables or disables punch-in and punch-out markers for arrangement recording in Ableton Live 12. |
| live12_transport_set_overdubA | Enables or disables arrangement overdub in Ableton Live 12 (Song.arrangement_overdub). |
| live12_transport_set_metronomeA | Toggles the metronome click in Ableton Live 12 (Song.metronome). |
| live12_song_capture_midiB | Captures recently performed MIDI input without requiring an explicit recording pass in Ableton Live 12 (Song.capture_midi). |
| live12_song_get_stateA | Reads comprehensive song and transport state from Ableton Live 12, including tempo, time signature, playing status, loop parameters, project musical scale, tuning system, and track/scene counts. |
| live12_song_set_scaleC | Sets the global musical scale and root note in Ableton Live 12 (Song.scale_information). Root note is 0 for C, 1 for C#, ..., 11 for B. |
| live12_song_set_tuning_systemB | Loads and applies a microtonal or alternative tuning system in Ableton Live 12 (Song.tuning_system). |
| live12_cue_point_controlA | Manages arrangement locator cue points in Ableton Live 12: create locator at beat time, delete locator, jump playhead to cue point, or list all project locators. |
| live12_tempo_sync_controlB | Controls synchronization features in Ableton Live 12: toggles Ableton Link, enables tempo follower, executes tap tempo, or nudges song tempo up/down. |
| live12_track_createC | Creates a new track in Ableton Live 12 (Song.create_midi_track, Song.create_audio_track, or Song.create_return_track). |
| live12_track_deleteB | Deletes a track in Ableton Live 12 by its zero-based index (Song.delete_track). |
| live12_track_duplicateA | Duplicates an existing track in Ableton Live 12 (Song.duplicate_track). The duplicate is inserted immediately after the source track. |
| live12_track_set_propertiesC | Updates properties of an existing track in Ableton Live 12, such as name, RGB integer color, solo, mute, and record arming. |
| live12_track_groupC | Groups specified tracks together under a new group track in Ableton Live 12. |
| live12_track_ungroupA | Dissolves an existing group track in Ableton Live 12, promoting its member tracks to top-level. |
| live12_take_lane_createB | Creates a new take lane for comping on an audio or MIDI track in Ableton Live 12 (Track.create_take_lane). |
| live12_take_lane_listA | Queries all take lanes on a track in Ableton Live 12 (Track.take_lanes). |
| live12_take_lane_comp_regionC | Comps a region from a take lane into the main arrangement track lane in Ableton Live 12. |
| live12_scene_createC | Creates a new scene in Ableton Live 12 (Song.create_scene). |
| live12_scene_fireB | Launches all clip slots aligned in a scene in Ableton Live 12 (Scene.fire). |
| live12_routing_setC | Configures input and output audio/MIDI routing and monitoring state for a track in Ableton Live 12. |
| live12_mixer_setB | Adjusts track mixer controls in Ableton Live 12: volume fader, stereo panning, auxiliary send levels, and crossfader assignment. |
| live12_scene_set_propertiesC | Configures scene parameters in Ableton Live 12, including scene name, color, tempo assignment, and time signature assignment. |
| live12_routing_getA | Inspects current and available input and output audio/MIDI routing types and channels for a track in Ableton Live 12. |
| live12_clip_createC | Creates a new empty Session clip in Ableton Live 12 (ClipSlot.create_clip). |
| live12_clip_deleteA | Deletes the clip occupying a Session view slot in Ableton Live 12 (ClipSlot.delete_clip). |
| live12_clip_fireC | Fires / triggers playback of a clip slot in Ableton Live 12 (Clip.fire). |
| live12_clip_stopC | Stops playback of a running clip slot in Ableton Live 12 (Clip.stop). |
| live12_clip_set_propertiesB | Configures loop and marker parameters of a clip in Ableton Live 12 (Clip.loop, Clip.loop_start, Clip.loop_end, Clip.start_marker). |
| live12_clip_add_notesB | Inserts one or more MIDI notes into a clip using Ableton Live 12 extended note attributes (Clip.add_new_notes). Supports Live 12 note probability, velocity deviation, and release velocity. |
| live12_clip_get_notesB | Retrieves all MIDI notes within a specified time window from a clip in Ableton Live 12 (Clip.get_notes_extended), including Live 12 note_id, probability, velocity_deviation, and release_velocity. |
| live12_clip_modify_notesB | Modifies existing notes in an Ableton Live 12 clip (Clip.apply_note_modifications) by matching note_id or pitch. |
| live12_clip_quantizeB | Quantizes MIDI notes in a clip to a musical beat grid (Clip.quantize). |
| live12_audio_clip_set_warpC | Configures audio clip warping mode, pitch shift, and gain in Ableton Live 12. |
| live12_audio_clip_add_warp_markerC | Inserts a warp marker into an audio clip in Ableton Live 12 (Clip.add_warp_marker). |
| live12_clip_duplicate_to_arrangementA | Duplicates a Session view clip directly into the Arrangement timeline at a specified beat time (Track.duplicate_clip_to_arrangement). |
| live12_clip_remove_notesA | Removes MIDI notes from an Ableton Live 12 clip by note IDs or by beat/pitch window (Clip.remove_notes_by_id or Clip.remove_notes_extended). |
| live12_clip_transform_midiB | Applies algorithmic MIDI transformations in Ableton Live 12: humanize timing/velocity, velocity ramps, Euclidean rhythm generation, arpeggiation, or pitch quantization to musical scale. |
| live12_clip_envelope_controlA | Inspects and manipulates parameter automation envelopes in an Ableton Live 12 clip (set envelope breakpoint/step, inspect envelope status, clear envelope for a parameter, clear all envelopes, or re-enable automation). |
| live12_groove_pool_controlC | Manages the Ableton Live 12 Groove Pool: queries pool grooves, adjusts global song groove amount, assigns groove templates to clips, or inspects clip groove status. |
| live12_browser_searchA | Searches the Ableton Live 12 Browser for instruments, effects, presets, samples, packs, and plug-ins. |
| live12_browser_load_itemA | Loads a browser item (instrument, effect, rack, or preset) onto an Ableton Live 12 track, chain, or drum rack pad (Application.browser.load_item). |
| live12_device_listB | Queries all devices in the device chain of an Ableton Live 12 track (Track.devices). |
| live12_device_get_parametersB | Reads all parameters of an Ableton Live 12 device (Device.parameters), including min, max, quantized status, raw value, and normalized value. |
| live12_device_set_parameterC | Sets the value of a device parameter in Ableton Live 12 (DeviceParameter.value). Supports both raw engineering values and normalized [0.0..1.0] inputs. |
| live12_device_toggleC | Enables or disables (bypasses) a device on a track in Ableton Live 12. |
| live12_rack_macro_controlC | Controls one of the 16 macro controls on an Ableton Live 12 Rack device (Instrument Rack, Audio Effect Rack, MIDI Effect Rack). |
| live12_rack_variation_controlB | Manages Macro Variations on an Ableton Live 12 Rack device (store current macro snapshot, recall a variation, or delete a variation). |
| live12_wavetable_modulation_matrixC | Inspects or updates modulation assignments in the Ableton Live 12 Wavetable modulation matrix. |
| live12_simpler_controlC | Controls specialized features of Ableton Simpler, including transient slicing to a Drum Rack or replacing the loaded sample audio file. |
| live12_meld_controlC | Updates engine parameters on the Ableton Live 12 Meld bi-timbral macro synthesizer. |
| live12_roar_controlC | Configures distortion stages, routing configuration, and feedback settings on the Ableton Live 12 Roar saturation device. |
| live12_drift_controlC | Configures voice mode, drift randomization, and oscillator parameters on the Ableton Live 12 Drift subtractive synthesizer. |
| live12_browser_previewB | Controls audio auditioning and hotswap monitoring in the Ableton Live 12 Browser (preview item, stop preview, inspect hotswap target). |
| live12_rack_macro_configB | Configures macro knobs on an Ableton Live 12 Rack device: sets visible macro count (1 to 16), adds macro, removes macro, randomizes macros, or queries rack chains. |
| live12_drum_pad_controlA | Controls Drum Rack pads in Ableton Live 12: inspect pad status (name, note, chains), mute/solo pad, copy pad to another note (RackDevice.copy_pad), or delete chains on a pad. |
| live12_cc_controlB | Controls the Ableton Live 12 CC Control MIDI device: maps MIDI continuous controllers (CC), sets output CC values, and configures custom MIDI automation targets. |
| live12_view_switchB | Switches the primary active view in the Ableton Live 12 GUI (Application.view.show_view or focus_view). |
| live12_view_selectC | Updates GUI selection focus in Ableton Live 12 (selected track, selected scene, highlighted clip slot, or selected device). |
| live12_dialog_inspectB | Inspects open native modal dialogs in Ableton Live 12 (Application.open_dialog_count and Application.current_dialog_message). |
| live12_dialog_pressB | Presses a button on the currently open modal dialog in Ableton Live 12 (Application.press_current_dialog_button). 0 is typically OK / Confirm; 1 is Cancel / Secondary. |
| live12_os_save_setC | Triggers saving the current Ableton Live project set (.als) to a destination path on macOS. |
| live12_os_open_setC | Opens an Ableton Live Set (.als) project document in Ableton Live 12. |
| live12_os_export_audioC | Triggers audio bounce / render in Ableton Live 12 to a target destination WAV file. |
| live12_undo_redoA | Executes Undo and Redo operations in Ableton Live 12 (Song.undo, Song.redo), inspects undo history status, or demarcates transactional undo steps. |
| live12_lom_inspectA | Dynamically introspects any object reachable in the Ableton Live Object Model (LOM) from 'live_set' or 'live_app', returning its Python/C++ type, readable properties, and callable methods. |
| live12_lom_getB | Reads the value of any property on an object in the Ableton Live Object Model (LOM) at the specified path. |
| live12_lom_setC | Dynamically sets the value of any writable property on an object in the Ableton Live Object Model (LOM). |
| live12_lom_callB | Invokes any callable method on an object in the Ableton Live Object Model (LOM) at target_path, passing positional and keyword arguments. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 75 tools
Most tools target distinct Ableton objects/actions and descriptions clarify boundaries. However generic LOM get/set/call/inspect can perform nearly any operation, overlapping with specific tools, and broad *_control tools bundle several actions, increasing misselection risk.
All tools use the live12_ prefix and snake_case with a readable domain/action structure. Minor deviations in action ordering and vague verbs like 'control' keep it from perfect consistency.
75 tools is far beyond a scoped MCP surface and many granular or multi-action tools could be consolidated. Even for a complex DAW, this volume makes discovery and selection unwieldy.
The surface covers transport, clips, tracks, scenes, devices, browser, routing, mixer, GUI, OS save/open/export, undo, and generic LOM access. Some gaps remain, such as direct scene deletion and richer arrangement clip editing, but most workflows are covered or reachable via LOM.