Skip to content

Access Virus Rack MIDI CC chart, NRPN and OSC map

The Access Virus Rack MIDI implementation: 3 CC, 111 SysEx commands, each named, for Claude (MCP), SuperCollider or any OSC app.

Device Access Virus Rack
Vendor Access
OSC prefix /virus_rack
Source πŸŽ›οΈ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/access/virus_rack.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/access/virus_rack.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /virus_rack/source 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as virus_rack: ask β€œwhat can the Access Virus Rack do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (3)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/virus_rack/source 23 0–127 continuous
/virus_rack/room_size_r 117 0–127 continuous
/virus_rack/damping_r 118 0–127 continuous

SysEx commands (111)

OSC address Arguments
/virus_rack/cutoff val: u7
/virus_rack/filter_type val: u7
/virus_rack/wave_type val: u7
/virus_rack/resonance val: u7
/virus_rack/osc2_semitone val: u7
/virus_rack/wave_shape val: u7
/virus_rack/osc2_detune val: u7
/virus_rack/routing val: u7
/virus_rack/osc_bal val: u7
/virus_rack/sub_osc val: u7
/virus_rack/osc_vol val: u7
/virus_rack/noise val: u7
/virus_rack/filt_bal val: u7
/virus_rack/efx_mode val: u7
/virus_rack/efx_send val: u7
/virus_rack/chorus val: u7
/virus_rack/phaser val: u7
/virus_rack/rate val: u7
/virus_rack/attack val: u7
/virus_rack/decay val: u7
/virus_rack/sustain val: u7
/virus_rack/release val: u7
/virus_rack/pulse_width val: u7
/virus_rack/1_bal_2 val: u7
/virus_rack/semitone val: u7
/virus_rack/osc_init_phase val: u7
/virus_rack/1_sync_2 val: u7
/virus_rack/vol val: u7
/virus_rack/color val: u7
/virus_rack/detune val: u7
/virus_rack/key_follow val: u7
/virus_rack/input_mix val: u7
/virus_rack/sub_osc_vol val: u7
/virus_rack/intensity val: u7
/virus_rack/1_fm_2 val: u7
/virus_rack/fil_env_fm val: u7
/virus_rack/fil_env_ptch val: u7
/virus_rack/osc1_shape val: u7
/virus_rack/amp val: u7
/virus_rack/fm_amount val: u7
/virus_rack/pan val: u7
/virus_rack/osc2_shape val: u7
/virus_rack/amp_env val: u7
/virus_rack/filter_env val: u7
/virus_rack/sustain_decay val: u7
/virus_rack/env_amount val: u7
/virus_rack/1_cutoff_2 val: u7
/virus_rack/env_polarity val: u7
/virus_rack/key_base val: u7
/virus_rack/curve val: u7
/virus_rack/mode val: u7
/virus_rack/pan_spread val: u7
/virus_rack/lfo_phase val: u7
/virus_rack/clock val: u7
/virus_rack/mono val: u7
/virus_rack/filter_gain val: u7
/virus_rack/contour val: u7
/virus_rack/env_mode val: u7
/virus_rack/key_trig_phase val: u7
/virus_rack/fade_in val: u7
/virus_rack/lfo1_osc1 val: u7
/virus_rack/lfo1_osc2 val: u7
/virus_rack/source val: u7
/virus_rack/destination val: u7
/virus_rack/pw_osc1_2 val: u7
/virus_rack/res_osc1_2 val: u7
/virus_rack/amount val: u7
/virus_rack/lfo2_fil1 val: u7
/virus_rack/lfo2_fil2 val: u7
/virus_rack/dest_1 val: u7
/virus_rack/dest_2 val: u7
/virus_rack/shape_osc1_2 val: u7
/virus_rack/amount_1 val: u7
/virus_rack/amount_2 val: u7
/virus_rack/dest_3 val: u7
/virus_rack/amount_3 val: u7
/virus_rack/depth_d val: u7
/virus_rack/feedback val: u7
/virus_rack/predelay_r val: u7
/virus_rack/lfo_shape_d val: u7
/virus_rack/depth val: u7
/virus_rack/lfo_shape val: u7
/virus_rack/delay_time val: u7
/virus_rack/stages val: u7
/virus_rack/tune val: u7
/virus_rack/freq val: u7
/virus_rack/spread val: u7
/virus_rack/global_bpm val: u7
/virus_rack/pattern val: u7
/virus_rack/note_length val: u7
/virus_rack/hold val: u7
/virus_rack/octave_range val: u7
/virus_rack/swing val: u7
/virus_rack/porta_time val: u7
/virus_rack/transpose val: u7
/virus_rack/input_plug val: u7
/virus_rack/direct_thru val: u7
/virus_rack/boost val: u7
/virus_rack/key_mode val: u7
/virus_rack/gain val: u7
/virus_rack/phono val: u7
/virus_rack/follower_mode val: u7
/virus_rack/ringmod_mix val: u7
/virus_rack/smooth_mode val: u7
/virus_rack/source_balance val: u7
/virus_rack/offset val: u7
/virus_rack/bend_scale val: u7
/virus_rack/bend_up val: u7
/virus_rack/spec_balance val: u7
/virus_rack/q_carrier val: u7
/virus_rack/bend_down val: u7

Performance MIDI

Notes, pitch bend and any CC are also available: /virus_rack/note/on <note> <velocity>, /virus_rack/cc/<number> <value>, /virus_rack/pitchbend <0-16383>, /virus_rack/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

How many parameters of the Access Virus Rack can be controlled over MIDI?

SynthHub's map of the Access Virus Rack lists 3 MIDI CC parameters, each with its number, range and a readable name; the full chart is on this page.

Can an AI agent like Claude control the Access Virus Rack?

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