chord-synth
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
chord-synth
Generate chord progression WAV files. Zero dependencies. Node.js only.
28 named presets, 22 arpeggio patterns, 7 instruments, slash chords (Am/E), transposition, pad/bass/drum tracks, reverb.
Quick Start
# Install globally
npm install -g chord-synth
# Generate a WAV file
chord-synth --preset "C G Am F" --bpm 120 --output pop.wav
# Custom jazz with slash chords
chord-synth --preset "Dm9 | G7/B | Cmaj7 | Am7/E" --instrument piano --drums bossanova --output jazz.wav
# Named preset transposed to key of G
chord-synth --preset "I-V-vi-IV (Pop)" --transpose 7 --output pop_in_G.wav
# Batch render from JSON file
chord-synth --batch render_jobs.json --output ./wavs/Related MCP server: nobu
Use as MCP Server
Exposes generate_wav and list_options tools to any MCP-compatible agent (Claude Desktop, Claude Code, Cursor, Windsurf, etc).
Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"chord-synth": {
"command": "npx",
"args": ["-y", "chord-synth", "mcp"]
}
}
}
Claude Code:
# Add to Claude Code (point to the installed mcp-server.js)
claude mcp add chord-synth -- npx chord-synth --mcpThen ask Claude: "Generate a sad violin arpeggio over Am F C G at 80 BPM" — it will call generate_wav directly.
ChatGPT Codex:
Prompt:
I have a mcp tool to generate chord wav files at https://github.com/Misfits-Rebels-Outcasts/chord-synth,
use it generate a chord progression for violin "Am Dm G C" at 128 bpm Use as Node.js Module
const { renderJob, PRESETS, SCHEMA } = require('chord-synth');
const fs = require('fs');
// Render a WAV buffer
const wav = renderJob({
preset: "C G Am/E F",
bpm: 120,
instrument: "piano",
pattern: 1, // Up
enablePad: true,
drumPattern: "poprock"
});
fs.writeFileSync('output.wav', wav);Agent Interface
Agents should call chord-synth --schema to get the full JSON tool specification:
chord-synth --schemaReturns:
{
"tool": "chord-synth",
"description": "Generate chord progression WAV files...",
"input_schema": {
"type": "object",
"required": ["preset"],
"properties": {
"preset": { "type": "string", "description": "Named preset or custom chords..." },
"bpm": { "type": "integer", "default": 120 },
"instrument": { "type": "string", "enum": ["piano","guitar","violin",...] },
...
}
},
"examples": [...]
}List all available options:
chord-synth --listParameters
Parameter | Type | Default | Description |
| string | required | Named preset ( |
| int | 120 | Tempo |
| int | 0 | Semitones (-11 to +11) |
| int | 1 | Arp pattern index (see below) |
| string |
| Note rate: |
| string |
|
|
| int | 1 | 1-4 octave span |
| int | 3 | Starting MIDI octave |
| int | 90 | MIDI velocity 1-127 |
| float | 0.5 | 0.5=straight, 0.66=medium, 0.75=heavy |
| int | 2 | Progression repetitions |
| bool | true | Sustained pad chord track |
| int | 4 | Pad voicing octave |
| float | 0.12 | Pad volume (0.0-0.3) |
| bool | true | Auto bass (slash chords set bass note) |
| bool | true | Drum track |
| string |
| See drum patterns below |
| float | 0.18 | Reverb amount (0.0-0.5) |
Named Presets
Category | Presets |
Pop/Rock |
|
Jazz |
|
Neo-Soul/R&B |
|
Blues |
|
Latin |
|
Modal/Ambient |
|
EDM |
|
Classic |
|
Or use any custom chord string: "Fmaj7 Em7 Dm9 Cmaj7", "Am | Dm/F | E7 | Am", etc.
Arp Patterns
Index | Name | Index | Name |
0 | Chord (Block) | 11 | Pinky-Thumb |
1 | Up | 12 | Thumb-Pinky |
2 | Down | 13 | 1-3-5-3 |
3 | Up-Down | 14 | 1-5-3-5 |
4 | Down-Up | 15 | 1-5-8-5 |
5 | Up-Down (No Repeat) | 16 | 1-3-5-8-5-3 |
6 | Down-Up (No Repeat) | 17 | Alberti Bass |
7 | Random | 18 | Stride |
8 | Random Walk | 19 | Broken 3rds |
9 | Outside-In | 20 | Pedal Tone |
10 | Inside-Out | 21 | Alternating Bass |
Drum Patterns
8beat 16beat poprock acousticpop bossanova swing funk rnb waltz arpeggio none
Chord Notation
Roots: C C# Db D D# Eb E F F# Gb G G# Ab A A# Bb B
Qualities: (major) m 7 maj7 m7 dim aug sus2 sus4 9 m9 maj9 11 m11 13 6 m6 dim7 m7b5 add9 5 power
Slash chords: Am/E (Am chord, E bass note), C/G, Dm7/A
Separator: spaces or | both work. C G Am F = C | G | Am | F
Output
WAV PCM 16-bit mono 44100 Hz. Compatible with all DAWs, audio players, and audio processing tools.
License
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Producer/Riffusion AI music generation
Generate AI music via the Lacuna Music API from MCP clients like Claude Desktop & Code.
Create, co-edit, analyze, publish, and export collaborative step-sequencer sessions through MCP.
Make and edit instrumental music from your agent: songs you can keep changing, MP3/WAV export
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceAn MCP server that plays chord progressions via MIDI/WAV synthesis.-
- AlicenseAqualityDmaintenanceA game-agnostic MCP toolkit for composing chiptune/retro MIDI and rendering game audio, enabling AI agents to generate multi-track MIDI files and render them to OGG/WAV.7MIT
- AlicenseAqualityCmaintenanceAn interactive digital audio workstation as an MCP server, enabling music production with a channel rack, piano roll, mixer, effects, automation, microphone recording, and offline WAV rendering.2658 npm2MIT
- AlicenseNot gradedqualityCmaintenanceProvides local MCP tools for editable MIDI, Serum 2 preset creation, FL Studio rendering, and reference-audio comparison, enabling users to create and refine instrumental recreations while preserving original vocal audio.MIT