messier-live
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_session_infoA | Full session snapshot from Live: tracks, clips, tempo. |
| live_statusA | Realtime transport state from telemetry: playing, tempo, bar/beat, levels. Cheap — use this for 'where are we in the music' instead of get_session_info. |
| playB | Start Live's transport. |
| stopA | Stop Live's transport. |
| set_tempoB | Set the session tempo in BPM. |
| save_projectC | Save the current Live set. |
| diagnoseA | Check both channels to Ableton: TCP command port and UDP telemetry. |
| setup_decksA | Map decks A and B onto Session View track indices and persist the mapping. |
| deck_statusA | Current deck mapping, what's playing on each deck, and transport state. |
| load_to_deckA | Load an audio file into a deck's clip slot (does not start playback). |
| fire_deckA | Fire a deck's clip. quantize='next_bar' waits for the downbeat via telemetry; 'global' fires immediately and lets Live's launch quantization align it. |
| stop_deckC | Stop the clip playing on a deck. |
| set_deck_volumeA | Set a deck's fader (0.0–1.0, where 0.85 is 0 dB). |
| crossfadeA | Beat-synced crossfade: fire the incoming deck on the next bar, then ramp
the incoming deck up and the outgoing deck down over |
| eq_killA | Kill (or restore) an EQ band on a deck. Needs an 'EQ Three' device on the deck track. band: low | mid | high. |
| set_fx_macroC | Set a PERF-rack macro on a deck by name (e.g. 'Glitch', 'Space', 'Crush'). value 0.0–1.0. |
| fx_sweepA | Ramp a PERF macro over N bars (a filter sweep, a building glitch, a riser). direction 'up' ramps 0→1, 'down' ramps 1→0. With release=True the macro snaps back to 0 at the end (classic build-and-drop). |
| fx_pulseC | Punch a PERF macro to |
| kill_all_fxB | Zero all PERF-rack macros on a deck (clean slate). Works with renamed macros. |
| list_deck_devicesA | List devices (and their indices) on a deck's track, so FX tools can be pointed at the right rack/plugin. |
| get_device_parametersA | Dump a device's parameter list (names, values, ranges) on a deck's track — for exploring a plugin (Serum2, Infiltrator, ...) before automating it. |
| set_device_parameterA | Set any raw device parameter by name on a deck's track (escape hatch when a macro doesn't cover it). |
| crate_listB | List analyzed tracks in the crate (title, BPM, key, energy). |
| suggest_next_trackA | Rank crate tracks that mix well next: BPM within ±8%, Camelot-compatible key, energy 'up' | 'down' | 'hold'. Give either the current file path or bpm+camelot. |
| prepare_deckA | Load a crate track onto a deck; with match_tempo=True also set Live's tempo to the track's analyzed BPM (use when starting a set, not mid-mix). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 25 tools
Tools are mostly distinct: live_status is explicitly described as the cheap telemetry option versus get_session_info, and set_fx_macro, fx_sweep, and fx_pulse are differentiated as set/ramp/punch. Minor overlap exists between load_to_deck and prepare_deck, but descriptions clarify the intended use case.
Most tools follow a predictable verb_noun snake_case pattern like set_fx_macro, fire_deck, and set_device_parameter. There are minor deviations with noun-style names like live_status, deck_status, and crate_list, plus bare verbs like play, stop, and diagnose, but the overall convention remains readable.
At 25 tools, this is on the heavy borderline for an MCP server. The broad scope—transport, deck management, FX automation, device parameter control, and crate library—largely justifies each tool, but the set feels slightly bloated and some tools could plausibly be consolidated.
The core DJ performance workflow is well covered: transport, deck load/fire/stop, volume and crossfade control, FX sweeps and pulses, device parameter escape hatches, and crate-based track suggestions. Minor gaps exist such as no open_project, no direct crossfader position control, and limited non-deck track manipulation, but these do not block the primary use case.