ableton-mcp

ahujasid/ableton-mcp

3.8

If you are the rightful owner of ableton-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

AbletonMCP connects Ableton Live to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Ableton Live.

Tools

Functions exposed to the LLM to take actions

get_session_info

Get detailed information about the current Ableton session

get_track_info

Get detailed information about a specific track in Ableton.

Parameters:

  • track_index: The index of the track to get information about

create_midi_track

Create a new MIDI track in the Ableton session.

Parameters:

  • index: The index to insert the track at (-1 = end of list)

set_track_name

Set the name of a track.

Parameters:

  • track_index: The index of the track to rename
  • name: The new name for the track

create_clip

Create a new MIDI clip in the specified track and clip slot. First check if there are less than 7 clips, if not, ask the user to delete a clip first.

Parameters:

  • track_index: The index of the track to create the clip in
  • clip_index: The index of the clip slot to create the clip in
  • length: The length of the clip in beats (default: 4.0)

add_notes_to_clip

Add MIDI notes to a clip.

Parameters:

  • track_index: The index of the track containing the clip
  • clip_index: The index of the clip slot containing the clip
  • notes: List of note dictionaries, each with pitch, start_time, duration, velocity, and mute

set_clip_name

Set the name of a clip.

Parameters:

  • track_index: The index of the track containing the clip
  • clip_index: The index of the clip slot containing the clip
  • name: The new name for the clip

set_tempo

Set the tempo of the Ableton session.

Parameters:

  • tempo: The new tempo in BPM

load_instrument_or_effect

Load an instrument or effect onto a track using its URI.

Parameters:

  • track_index: The index of the track to load the instrument on
  • uri: The URI of the instrument or effect to load (e.g., 'query:Synths#Instrument%20Rack:Bass:FileId_5116')

fire_clip

Start playing a clip.

Parameters:

  • track_index: The index of the track containing the clip
  • clip_index: The index of the clip slot containing the clip

stop_clip

Stop playing a clip.

Parameters:

  • track_index: The index of the track containing the clip
  • clip_index: The index of the clip slot containing the clip

start_playback

Start playing the Ableton session.

stop_playback

Stop playing the Ableton session.

get_browser_tree

Get a hierarchical tree of browser categories from Ableton.

Parameters:

  • category_type: Type of categories to get ('all', 'instruments', 'sounds', 'drums', 'audio_effects', 'midi_effects')

get_browser_items_at_path

Get browser items at a specific path in Ableton's browser.

Parameters:

  • path: Path in the format "category/folder/subfolder" where category is one of the available browser categories in Ableton

load_drum_kit

Load a drum rack and then load a specific drum kit into it.

Parameters:

  • track_index: The index of the track to load on
  • rack_uri: The URI of the drum rack to load (e.g., 'Drums/Drum Rack')
  • kit_path: Path to the drum kit inside the browser (e.g., 'drums/acoustic/kit1')

Prompts

Interactive templates invoked by user choice

No prompts

Resources

Contextual data attached and managed by the client

No resources