Skip to main content
Glama

load_drum_kit

Load drum kits into Ableton Live tracks by specifying track position, rack URI, and kit file path to quickly set up percussion instruments for music production.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kit_pathYes
rack_uriYes
track_indexYes

Implementation Reference

  • The main handler function for the 'load_drum_kit' tool. It first loads a drum rack onto the specified track using the provided rack URI, then navigates to the kit path in the browser, finds the first loadable drum kit, and loads it into the rack. The @mcp.tool() decorator registers it as an MCP tool.
    @mcp.tool() def load_drum_kit(ctx: Context, track_index: int, rack_uri: str, kit_path: str) -> str: try: ableton = get_ableton_connection() result = ableton.send_command("load_browser_item", {"track_index": track_index, "item_uri": rack_uri}) if not result.get("loaded", False): return f"Failed to load drum rack with URI '{rack_uri}'" kit_result = ableton.send_command("get_browser_items_at_path", {"path": kit_path}) if "error" in kit_result: return f"Loaded drum rack but failed to find drum kit: {kit_result.get('error')}" kit_items = kit_result.get("items", []) loadable_kits = [item for item in kit_items if item.get("is_loadable", False)] if not loadable_kits: return f"Loaded drum rack but no loadable drum kits found at '{kit_path}'" kit_uri = loadable_kits[0].get("uri") load_result = ableton.send_command("load_browser_item", {"track_index": track_index, "item_uri": kit_uri}) return f"Loaded drum rack and kit '{loadable_kits[0].get('name')}' on track {track_index}" except Exception as e: logger.error(f"Error loading drum kit: {str(e)}") return f"Error loading drum kit: {str(e)}"

Latest Blog Posts

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/Milesy1/MCP-Ableton-API'

If you have feedback or need assistance with the MCP directory API, please join our Discord server