devices/akai/mpc2000xl.vendor.fw-unknown.jsonEdit on GitHubJSONAkai MPC2000XL MIDI CC chart, NRPN and OSC map
The Akai MPC2000XL MIDI implementation: 2 CC, 6 SysEx commands, 64 drum sounds, each named, for Claude (MCP), SuperCollider or any OSC app.
- sourcemaker's documentation
- real unitnot yet checked
Not checked on a real Akai MPC2000XL yet. Own one? Load a sound or send a control, and tell us whether it worked.
- Maker
- Akai
- Version
- MPC2000XL Operator's Manual (charts May 1999, V1.0)
- Source
- maker's documentation
- OSC prefix
/mpc2000xl
Use 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/akai/mpc2000xl.vendor.fw-unknown.json --out-port <N> --in-port <M>
Then send OSC to 127.0.0.1:7777, for example:
From Claude or any MCP client, the osc-bridge mcp server exposes this driver as mpc2000xl: ask “what can the Akai MPC2000XL do?” and it reads this map with list_routes. See the MCP guide.
MIDI controls
72 controls, each with its number, its range and the name to send
Channel mode
| Control | CC | Range | Name to send |
|---|---|---|---|
| All notes off | 123 | trigger | /mpc2000xl/all_notes_off |
Sampler
| Control | CC | Range | Name to send |
|---|---|---|---|
| Note variation | 7 | 0–127 | /mpc2000xl/note_variation |
SysEx commands
| Command | Arguments | Name to send |
|---|---|---|
| Sequence select | sequence: u7 | /mpc2000xl/sequence/select |
| Transport clock | /mpc2000xl/transport/clock |
|
| Transport start | /mpc2000xl/transport/start |
|
| Transport continue | /mpc2000xl/transport/continue |
|
| Transport stop | /mpc2000xl/transport/stop |
|
| Song position | beats: u14 | /mpc2000xl/song/position |
Drum sounds
Send <name> [velocity] [note] [channel] to fire the sound (Note On).
| Sound | Note(s) | Channel | Velocity | Name to send |
|---|---|---|---|---|
| Pad A01 (preset note 35) | 35 | basic | /mpc2000xl/pad/a01 |
|
| Pad A02 (preset note 36) | 36 | basic | /mpc2000xl/pad/a02 |
|
| Pad A03 (preset note 37) | 37 | basic | /mpc2000xl/pad/a03 |
|
| Pad A04 (preset note 38) | 38 | basic | /mpc2000xl/pad/a04 |
|
| Pad A05 (preset note 39) | 39 | basic | /mpc2000xl/pad/a05 |
|
| Pad A06 (preset note 40) | 40 | basic | /mpc2000xl/pad/a06 |
|
| Pad A07 (preset note 41) | 41 | basic | /mpc2000xl/pad/a07 |
|
| Pad A08 (preset note 42) | 42 | basic | /mpc2000xl/pad/a08 |
|
| Pad A09 (preset note 43) | 43 | basic | /mpc2000xl/pad/a09 |
|
| Pad A10 (preset note 44) | 44 | basic | /mpc2000xl/pad/a10 |
|
| Pad A11 (preset note 45) | 45 | basic | /mpc2000xl/pad/a11 |
|
| Pad A12 (preset note 46) | 46 | basic | /mpc2000xl/pad/a12 |
|
| Pad A13 (preset note 47) | 47 | basic | /mpc2000xl/pad/a13 |
|
| Pad A14 (preset note 48) | 48 | basic | /mpc2000xl/pad/a14 |
|
| Pad A15 (preset note 49) | 49 | basic | /mpc2000xl/pad/a15 |
|
| Pad A16 (preset note 50) | 50 | basic | /mpc2000xl/pad/a16 |
|
| Pad B01 (preset note 51) | 51 | basic | /mpc2000xl/pad/b01 |
|
| Pad B02 (preset note 52) | 52 | basic | /mpc2000xl/pad/b02 |
|
| Pad B03 (preset note 53) | 53 | basic | /mpc2000xl/pad/b03 |
|
| Pad B04 (preset note 54) | 54 | basic | /mpc2000xl/pad/b04 |
|
| Pad B05 (preset note 55) | 55 | basic | /mpc2000xl/pad/b05 |
|
| Pad B06 (preset note 56) | 56 | basic | /mpc2000xl/pad/b06 |
|
| Pad B07 (preset note 57) | 57 | basic | /mpc2000xl/pad/b07 |
|
| Pad B08 (preset note 58) | 58 | basic | /mpc2000xl/pad/b08 |
|
| Pad B09 (preset note 59) | 59 | basic | /mpc2000xl/pad/b09 |
|
| Pad B10 (preset note 60) | 60 | basic | /mpc2000xl/pad/b10 |
|
| Pad B11 (preset note 61) | 61 | basic | /mpc2000xl/pad/b11 |
|
| Pad B12 (preset note 62) | 62 | basic | /mpc2000xl/pad/b12 |
|
| Pad B13 (preset note 63) | 63 | basic | /mpc2000xl/pad/b13 |
|
| Pad B14 (preset note 64) | 64 | basic | /mpc2000xl/pad/b14 |
|
| Pad B15 (preset note 65) | 65 | basic | /mpc2000xl/pad/b15 |
|
| Pad B16 (preset note 66) | 66 | basic | /mpc2000xl/pad/b16 |
|
| Pad C01 (preset note 67) | 67 | basic | /mpc2000xl/pad/c01 |
|
| Pad C02 (preset note 68) | 68 | basic | /mpc2000xl/pad/c02 |
|
| Pad C03 (preset note 69) | 69 | basic | /mpc2000xl/pad/c03 |
|
| Pad C04 (preset note 70) | 70 | basic | /mpc2000xl/pad/c04 |
|
| Pad C05 (preset note 71) | 71 | basic | /mpc2000xl/pad/c05 |
|
| Pad C06 (preset note 72) | 72 | basic | /mpc2000xl/pad/c06 |
|
| Pad C07 (preset note 73) | 73 | basic | /mpc2000xl/pad/c07 |
|
| Pad C08 (preset note 74) | 74 | basic | /mpc2000xl/pad/c08 |
|
| Pad C09 (preset note 75) | 75 | basic | /mpc2000xl/pad/c09 |
|
| Pad C10 (preset note 76) | 76 | basic | /mpc2000xl/pad/c10 |
|
| Pad C11 (preset note 77) | 77 | basic | /mpc2000xl/pad/c11 |
|
| Pad C12 (preset note 78) | 78 | basic | /mpc2000xl/pad/c12 |
|
| Pad C13 (preset note 79) | 79 | basic | /mpc2000xl/pad/c13 |
|
| Pad C14 (preset note 80) | 80 | basic | /mpc2000xl/pad/c14 |
|
| Pad C15 (preset note 81) | 81 | basic | /mpc2000xl/pad/c15 |
|
| Pad C16 (preset note 82) | 82 | basic | /mpc2000xl/pad/c16 |
|
| Pad D01 (preset note 83) | 83 | basic | /mpc2000xl/pad/d01 |
|
| Pad D02 (preset note 84) | 84 | basic | /mpc2000xl/pad/d02 |
|
| Pad D03 (preset note 85) | 85 | basic | /mpc2000xl/pad/d03 |
|
| Pad D04 (preset note 86) | 86 | basic | /mpc2000xl/pad/d04 |
|
| Pad D05 (preset note 87) | 87 | basic | /mpc2000xl/pad/d05 |
|
| Pad D06 (preset note 88) | 88 | basic | /mpc2000xl/pad/d06 |
|
| Pad D07 (preset note 89) | 89 | basic | /mpc2000xl/pad/d07 |
|
| Pad D08 (preset note 90) | 90 | basic | /mpc2000xl/pad/d08 |
|
| Pad D09 (preset note 91) | 91 | basic | /mpc2000xl/pad/d09 |
|
| Pad D10 (preset note 92) | 92 | basic | /mpc2000xl/pad/d10 |
|
| Pad D11 (preset note 93) | 93 | basic | /mpc2000xl/pad/d11 |
|
| Pad D12 (preset note 94) | 94 | basic | /mpc2000xl/pad/d12 |
|
| Pad D13 (preset note 95) | 95 | basic | /mpc2000xl/pad/d13 |
|
| Pad D14 (preset note 96) | 96 | basic | /mpc2000xl/pad/d14 |
|
| Pad D15 (preset note 97) | 97 | basic | /mpc2000xl/pad/d15 |
|
| Pad D16 (preset note 98) | 98 | basic | /mpc2000xl/pad/d16 |
Performance MIDI
Notes, pitch bend and any CC are also available: /mpc2000xl/note/on <note> <velocity>, /mpc2000xl/cc/<number> <value>, /mpc2000xl/pitchbend <0-16383>, /mpc2000xl/program_change <n>.
Limitations
Source: Akai MPC2000XL Operator's Manual: MIDI implementation charts (sound generator and sequencer sections, May 1999), preset pad note numbers ('What Are Programs?'), sequence change by Program Change and MIDI/SYNC chapter. The MIDI charts list the sampler (sound generator) section: notes 35-98 play the program's pads on its MIDI channel, Program Change 0-127 selects the program, channel pressure drives Note Repeat; the sequencer records and plays any channel message, which the performance routes cover. System Exclusive: sample dump only (sound generator) and ID 45h for sequence recording (sequencer); not mapped. MIDI Time Code and MIDI Machine Control are supported (MIDI/SYNC chapter) but the manual does not list which MMC commands are received, so none is mapped. The sound generator's default channel is 16 per the chart. Untested on hardware.
Frequently asked questions
How many parameters of the Akai MPC2000XL can be controlled over MIDI?
SynthHub's map of the Akai MPC2000XL lists 2 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 Akai MPC2000XL?
Yes: SynthHub's hosted MCP server knows the Akai MPC2000XL's MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.