The tool descriptions steer you toward queue_segment for anything long and warn against ad-hoc snippets, with run_code kept as its compatibility alias and play_note reduced to a sanity check. stop_all is the emergency exit and the descriptions say so — it kills every running job rather than fading out. Nothing reads back what is currently playing, so the session state stays in Sonic Pi.
A bridge to a live Sonic Pi session runner: code goes over OSC to a session that is already playing.
- Queued musical segments handed to the session runner for crossfaded transitions
- A single test note with the synth, sustain and cutoff chosen in the call
- A hard stop that ends every running Sonic Pi job at once
Sonic Pi installed and running, with the v2 DJ session runner listening for OSC — every call is sent into that session rather than rendered on its own.
One command — npx -y sonic-pi-mcp
