# u-he Preset Randomizer

An MCP server and CLI that build fresh u-he synth presets from your own collection: random patches, tweaked variations, or hybrids of several presets.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 31
- Author: Fannon
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/Fannon/u-he-preset-randomizer
- Updated: 2026-09-16
- HTML: https://affpapa.org/en/nevibecode/mcp/u-he-preset-randomizer

## What it does

The server hands an agent access to your u-he preset library and writes new patches three ways: from scratch, by shifting an existing preset a set amount, or by blending several presets into a hybrid. You pick the synth and the mode by talking to the agent, so there is nothing to memorise. The same engine runs from a terminal: `npx u-he-preset-randomizer@latest --synth Diva --amount 3` produces three fully random patches.

Values come from the collection itself. The tool scans it, works out how parameters are spread across your patches, and samples from those distributions, which keeps results close to the character of the library. Source material can be restricted by folder, category, author, tag or a favourites export. Output lands in a `/RANDOM` subfolder of your user presets. The session remembers the chosen synth, so follow-up requests carry on instead of restarting.

Node.js is required, since the server starts through `npx`. Simpler instruments such as Diva and Repro hold up best. Modular ones like Bazille and Zebra work too, though some patches come out broken, which matters before you rely on the output.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `UHE_CUSTOM_FOLDER`, `DEBUG` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env UHE_CUSTOM_FOLDER=<UHE_CUSTOM_FOLDER> --env DEBUG=<DEBUG> --transport stdio u-he-preset-randomizer -- npx -y u-he-preset-randomizer
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add u-he-preset-randomizer --env UHE_CUSTOM_FOLDER=<UHE_CUSTOM_FOLDER> --env DEBUG=<DEBUG> -- npx -y u-he-preset-randomizer
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "u-he-preset-randomizer": {
            "command": "npx",
            "args": [
                "-y",
                "u-he-preset-randomizer"
            ],
            "env": {
                "UHE_CUSTOM_FOLDER": "<UHE_CUSTOM_FOLDER>",
                "DEBUG": "<DEBUG>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "u-he-preset-randomizer": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "u-he-preset-randomizer"
            ],
            "env": {
                "UHE_CUSTOM_FOLDER": "<UHE_CUSTOM_FOLDER>",
                "DEBUG": "<DEBUG>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e UHE_CUSTOM_FOLDER=<UHE_CUSTOM_FOLDER> -e DEBUG=<DEBUG> u-he-preset-randomizer npx -y u-he-preset-randomizer
```
Replace <…> with your own values

## When to use it
- generate a batch of random Diva patches
- make variations of one preset at a set randomness
- merge several presets into a hybrid sound
- limit generation to a subfolder, tag or author
- browse the preset library by chatting with the agent

## Example prompts
- Which u-he synths are installed on this machine?
- Pull up Diva patches tagged as bass
- Give me five variations of `HS Greek Horn` at 20% randomness

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
