Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

u-he Preset Randomizer

by Fannonversion 1.2.0i★ –iRuns on your computer
Registry nameio.github.Fannon/u-he-preset-randomizer

Install

Overview

Description from the maker (original English)

Generate, randomize, explain, and manage u-he synthesizer presets via the Model Context Protocol.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: UHE_CUSTOM_FOLDER, DEBUG

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "u-he-preset-randomizer": {
      "command": "npx",
      "args": [
        "-y",
        "u-he-preset-randomizer"
      ],
      "env": {
        "UHE_CUSTOM_FOLDER": "your-value",
        "DEBUG": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add u-he-preset-randomizer --env UHE_CUSTOM_FOLDER=your-value --env DEBUG=your-value -- npx -y u-he-preset-randomizer

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "u-he-preset-randomizer": {
      "command": "npx",
      "args": [
        "-y",
        "u-he-preset-randomizer"
      ],
      "env": {
        "UHE_CUSTOM_FOLDER": "your-value",
        "DEBUG": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "u-he-preset-randomizer": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "u-he-preset-randomizer"
      ],
      "env": {
        "UHE_CUSTOM_FOLDER": "your-value",
        "DEBUG": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • UHE_CUSTOM_FOLDER env
    Optional override for preset root discovery when synths are stored outside default locations.
  • DEBUG env
    Enable verbose logging for troubleshooting.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account Fannon, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 18386 servers in this category
  • Published to the registry more recently than 5% of the other 18386 servers in this category
  • Basic checks equal to or better than 100% of the other 18386 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is u-he Preset Randomizer safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.2.0) reached the registry 7 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Tethered Trust

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated 2 days ago
Install

Tethered Trust

by tetheredtrust.com

Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.

Runs in the cloudUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

u-he-preset-randomizer

Generate u-he synth presets through randomization and merging of your existing presets (genetics like).

This tool can generate random presets in three different modes:

  • Generate fully random presets based on real values and value distributions in your preset library
  • Randomize existing presets, with a customizable amount of randomness
  • Merge multiple presets together, with randomness introduced by different ratios between them.

The randomization / merging approach is very generic as it analyzes your actual preset library and bases the random values on the resulting statistical distributions.

There are optional flags / modes that that affect the randomization:

  • Narrow down the analyzed presets that are the basis for random generation.
  • E.g. by only using a sub-folder, a certain tag category, author or a favorite file export.
  • This will influence / limit the range of values in the generated presets.
  • Use stable mode for more reliable, but slightly less random results
  • Use binary mode, see --binary CLI arguments documentation.

It should work for all u-he synths on all platforms. Some synths may work better, due to their simpler architecture (e.g. u-he Diva, Repro). More modular synths like Bazille or Zebra also work, but you'll get more "varied" results or broken presets.

How to use

This is a CLI application that you need to run in your terminal / command line.

First you need to install the Node.js runtime. Then you can open your Terminal / Console / Command Prompt and start it by entering a command, optionally with some arguments. They start with npx u-he-preset-randomizer@latest, which will download and run the latest version of this tool:

npx u-he-preset-randomizer@latest

This will start the tool in interactive mode. It will guide you though the necessary choices. Alternatively, you can pass some arguments if you already know the choices (non interactive).

The generated patches will be put into your selected synth preset directory, under a /RANDOM folder in your user presets.

If you want to download the tool for offline use and manual updates:

# install it as a global CLI tool

npm i -g u-he-preset-randomizer

Now you can run it without npx:

u-he-preset-randomizer

MCP Server Interface

In addition to the CLI, this tool provides a Model Context Protocol (MCP) server that allows AI assistants like Claude to interact with your u-he presets through natural conversation.

Features:

  • 🔍 Search and browse your preset libraries conversationally
  • 📝 Get detailed explanations of what makes presets unique
  • 🎲 Generate random presets with natural language instructions
  • 🔄 Create variations and merge presets through AI-assisted workflows
  • 💾 Stateful sessions - select a synth once, then explore freely

Quick Setup for Claude Desktop:

Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{

"mcpServers": { "u-he-preset-randomizer": { "command": "u-he-mcp-server" } } }

Then you can ask Claude things like:

  • *"What synths do I have installed?"*
  • *"Show me bass presets from Diva"*
  • *"Create 5 variations of the '303 Bass' preset with 30% randomness"*
  • *"Merge my favorite pad presets to create hybrid sounds"*

📚 [Read the full MCP Server documentation →](./MCP_SERVER.md)

CLI Usage Examples

Generate Fully Randomized Presets

This command will run the randomizer to generate 3 fully randomized Diva presets. Random values will be based on real values (and their distribution) of your actual presets.

npx u-he-preset-randomizer@latest --synth Diva --amount 3
Randomize a particular Preset

This command will take one particular preset "HS Greek Horn" and create 5 random variations of it, with a 20% randomization ratio.

npx u-he-preset-randomizer@latest --synth Diva --amount 5 --preset "HS Greek Horn" --randomness 20
Merge multiple Presets together

This command will merge multiple presets together, with a random ratio on how much weight each one has in the "inheritance". The following example will take three Diva presets (each indicated with --merge) and create 5 merged variants out of them.

npx u-he-preset-randomizer@latest --synth Diva --amount 5 --merge "HS Greek Horn" --merge "HS Strumpet" --merge "HS Baroqualog"

Tips & Tricks

  • The u-he preset browser have the most flexibility in filtering and combining presets by category, tags, etc. You can use this to either copy them to a new folder or create a .uhe-fav file export and using this as narrow down selection in the CLI
  • When merging presets, it's possible to select the same preset multiple times. Use this to assign "weights" between how strong a preset will influence the outcome.
CLI Arguments / Configuration

If you're unsure which values are correct to use, run the tool in interactive mode.

Most config options here will be available with auto-complete or suggestions.

  • --synth: Choose the u-he synth. Not all synths have been tested, but the randomizer tries to be generic. The name must match the folder name convention of u-he. E.g. Diva, Hive, ZebraHZ.
  • --amount: How many presets to generate. Positive integer number.
  • --randomness: Amount of randomness (in percentage) to apply, when randomizing existing presets or resulting merged presets. Value needs to be between 0 and 100.
  • --preset: If given, an existing preset will be used as a based and randomized by --randomness ratio.
  • Use "?" to choose random preset
  • Use ?search string? to choose a random preset containing "search string" in its path and file name.
  • --merge: Can be provided multiple times, for each preset that should be part of the merging. Ratio between merged presets is random and NOT driven by the --randomness parameter.
  • Use ? to choose random preset
  • Use ?search string? to choose a random preset containing "search string" in its path and file name.
  • Use * to select all presets (careful! Better first reduce via --pattern.)
  • Use *search string* to select all presets containing "search string" in its path and file name.
  • --pattern: Define a glob pattern, which presets should be loaded.
  • By default, it's **/* which will load all presets from all sub-folders.
  • To select a subfolder, use e.g. My Folder/**/*
  • To select presets starting with something, use e.g. **/PD *
  • --folder: narrow down presets by folder. Use /Local/ or /User/ as starting point.
  • --category: narrow down presets by preset category (metadata)
  • --author: narrow down presets by preset author (metadata)
  • --favorites: narrow down presets by selection fia .uhe-fav file. The files must be located somewhere within your preset library.
  • --stable: Uses more stable randomization approach
  • For fully random presets, it will randomize not per parameter, but per section (e.g. the entire OSC1 together)
  • Only parameters with numeric non-binary assignments will be further randomized. Otherwise they stay consistent with the chosen base preset or a random starter preset.
  • --binary: Keep the binary part of the u-he presets. They will not be changed, but randomly generated presets will now include the binary section of either a random preset or the base preset that is randomized.
  • This contains advanced settings like MSEG curves, but this tool cannot really parse or modify it. Not every binary section seems to be compatible with other parameter adjustment, leading to invalid presets.
  • ⚠ Using binary mode may lead to broken presets that may crash your synth plugin when loading. Use with care. For some synths this works better (Repro, Diva, Zebralette 3) and for some it frequently leads to invalid presets.
  • --binary-template: Uses curated binary section templates instead of random library presets. This is enabled by default for Zebralette 3.
  • Templates are stored in src/templates/{synthName}/ and are prefixed with a weight (e.g., 15-Basic Shapes.h2p has weight 15, making it 15x more likely to be selected than a 01- prefixed template).
  • This approach is safer than --binary as the templates are tested to work well with randomized parameters.
  • --dictionary: Creates random names from a dictionary of names used in the preset library
  • --custom-folder: In case the installation folder is custom, it can be given here
  • E.g. --custom-folder "C:/Audio/Plugin Installationen/u-he/"
  • --debug: Enables some optional debug logging and file exporting

Soundsets

CoverLinksDescription
Diva Generated Vol. 1 (ZIP), Audio Demo (YouTube)50 randomly generated presets for u-he Diva, curated, modified and tagged by Simon Heimler in 2024.
Repro-5 Generated (ZIP), Audio Demo (YouTube)42 randomly generated presets for u-he Repro, curated, modified and tagged by Simon Heimler in 2024.
Repro-1 Generated Vol. 1 (ZIP),28 randomly generated presets for u-he Repro, curated, modified and tagged by Simon Heimler in 2024.

Developer Guide

To run this tool locally in developer mode, you need Node.js and Bun installed. Check out the repo and:

npm i

npm run build

Run the CLI in development mode (using Bun):

bun run dev --synth Diva --amount 3

Run tests:

bun test

Maintenance scripts

npm run clean # remove dist output and incremental build cache npm run build:dist # emit declarations + source maps for npm publish (runs automatically via prepublishOnly)

The AGENTS.md provides more context how the project works from development perspective.

I've also exposed the u-he preset parser / serializer functions in the NPM module, so they could be used programmatically by other projects. However, you might inherit more dependencies than necessary if you're just interested in the parser. See ./src/parser.ts.

Help / Feedback

Please use the related KVR Thread or create a GitHub issue.

Ask PopNx