# nyxmix

Agent-first multitrack audio editor for the web: people and AI agents edit the same session live, over UI, REST and MCP.

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 0.1.0
- **Author:** Nyx 🦞 & Fabian Budde
- **License:** MIT
- **npm:** nyxmix
- **Source:** https://github.com/Open-Cosmic-Software/nyxmix
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 0 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-10-21T07:32:29.174Z
- **Version scanned:** 0.1.0
- **CVEs:** none found by OSV at scan time

## Tools

40 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `archive_url` — Get a download URL for a .nyxmix archive of the session (project, lossless audio, transcripts, versions, and the custom plugins it uses) — for backups or moving
- `batch_process` — Run one destructive process (see process_audio kinds, e.g. loudness, denoise, voiceDenoise, declip) on several files — by default every file used on the timelin
- `stretch_clip` — Time-stretch one clip to an exact length (duration in seconds) or by a ratio, keeping its pitch (Rubber Band, high quality) — e.g. fit a music bed to 30.0 s. Cr
- `export_cd` — Export a CD image (Audition: CD Layout): 44.1 kHz/16-bit dithered WAV plus a CUE sheet. Every labelled marker starts a CD track (titles from labels, min 4 s apa
- `check_delivery`
- `convert_sample_rate` — Change the session sample rate (44100, 48000, 88200, 96000): every file is resampled with SoX (high quality); clip times and the arrangement stay the same. Not 
- `auto_duck` — Lower a music/bed track automatically wherever the voice tracks are speaking. Writes volume automation on the music track (replacing its existing volume automat
- `install_faust_plugin`
- `generate_audio`
- `list_lv2_plugins` — Search the native effect plugins installed on the server — LV2 and VST3 (LSP, x42, Calf, ZAM, Dragonfly, DISTRHO, MDA, …: EQs, compressors, limiters, gates, rev
- `lv2_plugin_info` — Controls of one LV2 or VST3 plugin (by uri or #index from list_lv2_plugins): symbol, label, range, unit, default, toggles and enumerations. Pass values by symbo
- `apply_lv2_plugin`
- `list_projects` — List editing sessions.
- `create_project` — Create an empty session.
- `get_project` — Read the session: tracks, clips (with times), effects, assets, markers. format "summary" (default) is compact text; "json" is the full document.
- `describe_capabilities` — Effect types with parameter ranges, destructive processes, and export formats.
- `import_audio` — Add an audio file to the session bin from a public URL or base64 data. Any common format; converted losslessly to 32-bit float at the project rate. Returns the 
- `edit`
- `undo` — Undo the last edit (by anyone).
- `redo` — Redo.
- `analyze` — Measure audio: EBU R128 loudness (integrated LUFS, LRA, true peak), sample peak/RMS/clipping/DC, silent stretches, spectral band balance, optional RMS envelope.
- `get_image` — Render a waveform or spectrogram PNG of the mix, an asset or a clip, so you can look at the audio.
- `process_audio`
- `render` — Export the mix. Returns a download URL plus measured loudness. bounce:true instead adds the mixdown to the bin as a new asset.
- `get_activity` — Recent edits with author (human or agent) — use it to see what the human changed.
- `pitch_curve` — Manual pitch correction: shift a voice by a curve of points {time (asset/source seconds), cents} — linear between points, 0 outside, so put 0-cent points around
- `list_plugins` — Installed effect plugins (use them with effect.add type "plugin:<id>") and whether installing is enabled here.
- `install_plugin` — Install a custom real-time effect: manifest {id, label, description, params:{name:{minimum,maximum,default,unit}}} plus code = an AudioWorklet module that calls
- `remix_music` — Make a music clip fit a target length by jumping between musically similar beats (like Audition's Remix) instead of stretching: tempo and pitch stay untouched. 
- `propose_edits` — Suggest a batch of edits WITHOUT applying them. The human hears a preview and accepts or rejects it in the UI. Use this for anything subjective or destructive-f
- `list_proposals` — Proposals for a session with their status (open, accepted, rejected) and who decided.
- `save_version` — Save a named snapshot of the session (e.g. before a risky pass) that the human can return to.
- `spectral_edit`
- `noise_reduction`
- `get_pitch`
- `spectral_image`
- `transcribe`
- `get_transcript` — Read the TIMELINE transcript: words from every clip on unmuted tracks, mapped to timeline seconds (so it reflects all edits; re-read after cutting, because late
- `cut_transcript`
- `remove_filler_words`

## Install

**Verdict: review** — Installable, but 1 thing to check first: No publisher has proved control of this listing; it is indexed, not vouched for.
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"nyxmix\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"nyxmix\"\n      ],\n      \"env\": {\n        \"NYXMIX_TOKEN\": \"<YOUR_NYXMIX_TOKEN>\"\n      }\n    }\n  }\n}"
```
**Credentials it will ask for** (names only — Forge never holds a value):
- `NYXMIX_TOKEN` — Nyxmix Token (optional)
Placeholders only. Forge never holds, brokers, or transmits a credential value — replace each <YOUR_NAME> in your own config file. Do not send a value back to Forge; no Forge endpoint accepts one.
- This entry needs 1 credential (0 required). The generated config carries placeholders, so it will fail in the editor rather than at runtime if they are left unset.

## Blast radius

Extensive blast radius — deletes data; holds an api key.
- Floor 56, ceiling 56 (tier: extensive)
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/nyxmix
- Install plan: https://forgeregistry.com/api/v1/packages/nyxmix/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/nyxmix
- HTML page: https://forgeregistry.com/registry/nyxmix
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
