Skip to content

Waldorf XT (Sysex) MIDI CC chart, NRPN and OSC map

The Waldorf XT (Sysex) MIDI implementation: 9 SysEx commands, each named, for Claude (MCP), SuperCollider or any OSC app.

Device Waldorf XT (Sysex)
Vendor Waldorf
OSC prefix /xt_sysex
Source πŸŽ›οΈ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/waldorf/xt_sysex.json
Not tested on the device yet

This driver comes from documentation or community data and has not been checked on real hardware. If you own one, a quick test and a pull request promoting it helps everyone β€” see CONTRIBUTING.

How do you control it?

Find the MIDI ports, then start the bridge with this driver:

osc-bridge detect        # prints the ready-to-run line for what is plugged in
osc-bridge run --device devices/waldorf/xt_sysex.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /xt_sysex/octave

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as xt_sysex: ask β€œwhat can the Waldorf XT (Sysex) do?” and it reads this map with list_routes. See the MCP guide.

SysEx commands (9)

OSC address Arguments
/xt_sysex/octave val: u7
/xt_sysex/semitone val: u7
/xt_sysex/detune val: u7
/xt_sysex/pb_range val: u7
/xt_sysex/keytrack val: u7
/xt_sysex/fm_amount val: u7
/xt_sysex/source val: u7
/xt_sysex/amount val: u7
/xt_sysex/dest val: u7

Performance MIDI

Notes, pitch bend and any CC are also available: /xt_sysex/note/on <note> <velocity>, /xt_sysex/cc/<number> <value>, /xt_sysex/pitchbend <0-16383>, /xt_sysex/program_change <n>.

Limitations

Imported from an Electra One community preset. The mapping reflects the preset author's editorial choices: parameter naming, ranges, and which params are exposed. Untested on hardware in this repo.

Frequently asked questions

Can an AI agent like Claude control the Waldorf XT (Sysex)?

Yes: SynthHub's hosted MCP server knows the Waldorf XT (Sysex)'s MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.