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
| 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