set_track_solo
Set a track to solo mode in Ableton Live to isolate its audio during music production. Specify the track index and solo state to focus on individual tracks while mixing.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| track_index | Yes | ||
| solo | No |
Implementation Reference
- MCP_Server/server.py:557-566 (handler)MCP tool handler for 'set_track_solo'. Decorated with @mcp.tool() for registration. Sends command to Ableton remote script and formats response.@mcp.tool() def set_track_solo(ctx: Context, track_index: int, solo: bool = False) -> str: try: ableton = get_ableton_connection() result = ableton.send_command("set_track_solo", {"track_index": track_index, "solo": solo}) status = "soloed" if result.get('solo') else "unsoloed" return f"Track '{result.get('track_name')}' is now {status}" except Exception as e: logger.error(f"Error setting track solo: {str(e)}") return f"Error setting track solo: {str(e)}"
- Core implementation in Ableton Live remote script. Sets the track's solo property using Live API and returns status.def _set_track_solo(self, track_index, solo): """Set the solo state of a track""" try: if track_index < 0 or track_index >= len(self._song.tracks): raise IndexError("Track index out of range") track = self._song.tracks[track_index] track.solo = solo result = { "solo": track.solo, "track_name": track.name } return result except Exception as e: self.log_message("Error setting track solo: " + str(e)) raise