load_drum_kit
Load a drum rack and specific drum kit into Ableton Live tracks for music production. Use this tool to configure drum sounds by specifying track index, rack URI, and kit path.
Instructions
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: URI of the drum rack (e.g. 'Drums/Drum Rack')
kit_path: Browser path to the drum kit
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| track_index | Yes | ||
| rack_uri | Yes | ||
| kit_path | Yes |
Implementation Reference
- MCP_Server/server.py:492-525 (handler)The implementation of the load_drum_kit tool which orchestrates loading a drum rack and a kit into a specified track.
@mcp.tool() def load_drum_kit(ctx: Context, track_index: int, rack_uri: str, kit_path: str) -> str: """ 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: URI of the drum rack (e.g. 'Drums/Drum Rack') - kit_path: Browser path to the drum kit """ try: result = _run("load_browser_item", { "track_index": track_index, "item_uri": rack_uri }) if not result.get("loaded", False): return f"Failed to load drum rack '{rack_uri}'" kit_result = _run("get_browser_items_at_path", {"path": kit_path}) if "error" in kit_result: return f"Drum rack loaded but kit not found: {kit_result.get('error')}" loadable = [i for i in kit_result.get("items", []) if i.get("is_loadable")] if not loadable: return f"Drum rack loaded but no loadable kits at '{kit_path}'" kit = loadable[0] _run("load_browser_item", { "track_index": track_index, "item_uri": kit.get("uri") }) return f"Loaded drum rack + kit '{kit.get('name')}' on track {track_index}" except Exception as e: return f"Error loading drum kit: {e}"