npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

patchwork-deepmind

v0.1.4

Published

DeepMind 12 MCP server (DeepMind-first)

Readme

patchwork-deepmind

MCP server for the Behringer DeepMind 12 synthesizer. Gives AI agents real-time control over synth parameters via MIDI NRPN, plus edit-buffer snapshots via SysEx.

Requirements

  • Node.js >= 22
  • DeepMind 12 connected via USB-MIDI
  • macOS (uses native MIDI)

Install

npm install patchwork-deepmind

MCP client setup

Add to your MCP client config (Claude Desktop, VS Code, etc.):

{
  "mcpServers": {
    "deepmind12": {
      "command": "npx",
      "args": ["patchwork-deepmind"]
    }
  }
}

Tools

| Tool | Description | |------|-------------| | set_param | Set a parameter by name (normalized 0–1) | | set_params | Batch-set multiple parameters in one call | | describe_param | Look up a parameter's NRPN, range, and enum values | | describe_nrpn | Search/list raw NRPN parameters | | snapshot_state | Read current patch state via SysEx edit-buffer dump | | send_nrpn | Send a raw NRPN message by number and value |

Parameter guide skill (recommended)

The MCP tools give an agent the ability to control the synth, but not the knowledge of what sounds good — which parameters interact, what value ranges are musical, or how to approach building a specific type of sound.

The skills/deepmind-parameter-guide/ folder is a portable agent skill that provides this. It's organized as a compact index with drill-down sections by synth area (oscillators, filter, envelopes, LFOs, effects, etc.), so an agent loads only the context it needs.

To install the skill, copy it into your project's .claude/skills/ directory:

# From the cloned repo:
cp -r skills/deepmind-parameter-guide .claude/skills/

# Or from the installed npm package:
cp -r $(npm explore patchwork-deepmind -- pwd)/skills/deepmind-parameter-guide .claude/skills/

The skill is self-contained — no dependencies on this repo.

How it works

The server runs as a stdio-based MCP process — no network involved. Your MCP client (Claude Desktop, VS Code, etc.) spawns it as a subprocess and communicates over stdin/stdout. The server auto-detects the DeepMind's USB-MIDI port on startup and performs a SysEx handshake to confirm the connection.

Example

Once connected, you can talk to your agent naturally:

"Give me a warm pad with slow filter movement and a long reverb tail"

"Make the attack slower and add some chorus"

"Snapshot the current patch so I can see what all the values are"

The agent uses the MCP tools to translate these into NRPN messages and SysEx commands in real time. You hear changes immediately on the synth.

Environment variables

| Variable | Default | Description | |----------|---------|-------------| | MIDI_IN | auto-detect | MIDI input port index or exact name | | MIDI_OUT | auto-detect | MIDI output port index or exact name | | MIDI_PORT | — | Shared hint (partial name) used when MIDI_IN/MIDI_OUT are unset | | MIDI_CH | 0 | MIDI channel (0–15, where 0 = channel 1) |

Troubleshooting

  • Server fails to find MIDI port — Make sure the DeepMind is connected via USB and powered on before starting the server. Verify it appears in macOS Audio MIDI Setup.
  • Parameters aren't changing on the synth — Check that the DeepMind is set to receive on the correct MIDI channel (Global Settings → MIDI Channel). The default is channel 1.
  • Multiple DeepMinds or other MIDI devices — Use MIDI_IN / MIDI_OUT env vars to select the correct port by index or name.

Development

npm install
npm run build
npm test

Contributing

Issues and PRs welcome.

License

MIT