THIRI Chord Intelligence MCP Server
offiziellDeterministische musiktheoretische Engine für KI-Agenten zur Analyse, Auflösung, Stimmführung und Reharmonisierung von Akkorden.
Dokumentation
🎷 THIRI Chord Intelligence — MCP-Server
Gib deiner KI echte Musiktheorie. THIRI ist der deterministische Musiktheorie-MCP-Server + API für KI-Entwickler – er ermöglicht Claude, Cursor oder jedem MCP-Agenten, Akkorde zu analysieren, Stufenanalysen durchzuführen, Voicings zu generieren und Akkordfolgen zu reharmonisieren – mit Antworten, die berechnet und nicht geraten sind.
LLMs halluzinieren Musiktheorie: falsche Noten, erfundene Stufenbezeichnungen, Voicings ohne Stimmführung. THIRI ist eine deterministische Engine (Pitch-Class-Set-Theorie über ℤ/12) hinter einer gehosteten API – sodass C7sus4 seine Vorhalte behält, Caug C E G# buchstabiert und „Coltrane Changes über Dm7 G7 Cmaj7“ jedes Mal Cmaj7 Ab7 Abmaj7 E7 zurückgibt.
Nachgeschaltet zu Suno / Udio oder einem anderen Generator? Verpacke die Ausgabe und erhalte eine korrekte Akkordübersicht, der dein Agent vertrauen kann. Und anders als tonal.js oder music21 ist THIRI gehostet und agent-nativ (keine Installation, jede Sprache) – und es reharmonisiert und führt Stimmen, anstatt nur Akkorde nachzuschlagen.
⭐ Wenn das nützlich ist, gib dem Repo einen Stern – es hilft anderen Musikern und Agentenentwicklern, es zu finden.
Was du fragen kannst
„Analysiere Dm7b5 in C.“ →
iiø7, halbvermindert, entlehnte Subdominante, + Skalenoptionen „Welche Noten sind in C7sus4?“ →C F G Bb(der Vorhalt bleibt erhalten) „Gib mir ein rootless Cmaj7-Voicing und führe dann die Stimmen nach Dm7.“ → Voicings + eine Stimmführungsbewertung „Reharmonisiere Dm7 G7 Cmaj7 mit Coltrane Changes.“ →Cmaj7 Ab7 Abmaj7 E7
Werkzeuge
| Werkzeug | Funktion |
|---|---|
analyze_chord | Akkord → Grundton, Qualität, Intervalle, Stufenbezeichnung & harmonische Funktion (Zwischendominanten, Modal-Interchange-Bezeichnungen) |
resolve_chord | Akkord → buchstabierte Noten (enharmonisch korrekt), Frequenzen, MIDI, Skalenempfehlungen |
generate_voicing | Instrumentengerechte Voicings (rootless/bill_evans, shell, triad, pad, guide-tones, drop-2/3); übergib previousNotes für eine Stimmführungsbewertung; colorPreferences für explizite Spannungen |
reharmonize | Akkordfolgen-Reharmonisation – 8 Techniken: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (oder auto) |
conduct_band | Natürlichsprachliche Band-Anweisung → Lanes + MIDI (gehostetes MCP v0.3+) |
Läuft auf der v2-Grid-Engine – korrekte Sus-Akkorde, echte Dreiklänge, enharmonische Schreibweise, alle alterierten Dominanten – mit Request-Timeouts, Kontingentberichten und strukturierten Fehlern.
Lokaler Csound MCP (nur Desktop)
Für Hör-mich-Agentenschleifen (Anweisung → Csound-Partitur → WAV) füge einen zweiten lokalen Server neben den gehosteten Theorie-Tools hinzu:
{
"mcpServers": {
"thiri": {
"command": "npx",
"args": ["-y", "@bluesprincemedia/thiri-mcp"],
"env": { "THIRI_API_KEY": "sk_live_your_key" }
},
"thiri-conductor": {
"command": "npx",
"args": ["-y", "@bluesprincemedia/thiri-mcp", "thiri-conductor-mcp"],
"env": { "THIRI_API_KEY": "sk_live_your_key" }
},
"thiri-composition": {
"command": "npx",
"args": ["-y", "@bluesprincemedia/thiri-mcp", "thiri-composition-mcp"]
}
}
}
| Bin | Werkzeuge |
|---|---|
thiri-conductor-mcp | conduct_band, build_csound_score, render_csound_wav, play_audio, search_csound_corpus, render_with_tension |
thiri-composition-mcp | Kompositions-IR-Werkzeuge + play_composition (fluidsynth-Vorschau) |
Erfordert Csound CLI im PATH für WAV-Rendering. Nachweis: npm run test:conductor · Live-Dokumentation: build.thiri.ai/lab/conductor-mcp · Agent-Rezepte.
Conductor Agent (Vibe-Komposition)
End-to-End-Persona für lokale Vibe-Komposition – Skill, CLI und Band-Dashboard-Panel:
| Eintrag | Befehl / Pfad |
|---|---|
| Cursor-Skill | Kopiere THIRI/lab/skills/thiri-conductor-agent/SKILL.md → ~/.cursor/skills/thiri-conductor-agent/SKILL.md |
| CLI | cd thiri-mcp && npm run conductor:vibe -- "gospel ballad in F minor" |
| Dashboard | npm run dev:studio → localhost:5173/band → Vibe Conduct-Panel |
| Lab-Nachweis | build.thiri.ai/lab/conductor-agent |
Duale MCP-Konfiguration oben + mapConductResultToStudioModules nach jedem conduct_band. Letztes CLI-Rendering schreibt ~/.thiri/conductor-last.json (nur lokal, nicht committed).
Flagship-Agent-Rezept (analysieren → anweisen → rendern → kritisieren)
Füge es in dieser Reihenfolge nach der dualen MCP-Konfiguration oben ein:
- Analysieren – „Analysiere Dm7 G7 Cmaj7 in Tonart C mit analyze_chord; fasse Stufen und Spannung zusammen.“
- Anweisen – „conduct_band: warmer Rhodes-Pad, Walking Bass, Besen-Drums, 8 Takte mittlerer Swing in C.“
- Rendern – „build_csound_score aus Lanes, dann render_csound_wav mit Tempo 120.“
- Kritisieren – „play_audio; kritisiere Stimmführung und Registerbalance; schlage eine Revision vor.“
Vollständige Prompts: build.thiri.ai/lab/agent-recipes
Grenze zwischen gehostet und lokal
| Oberfläche | Csound WAV |
|---|---|
mcp.thiri.ai / gehosteter Connector | Nein – nur Theorie + conduct_band-Lanes |
Lokal thiri-conductor-mcp | Ja – erfordert Csound CLI auf deinem Rechner |
Installation
Hole dir einen kostenlosen Key unter build.thiri.ai/developers und wähle dann einen Weg:
Claude Desktop / Web / Mobil – gehostet (One-Click Custom Connector, nichts zu installieren):
Einstellungen → Connectors → Custom Connector hinzufügen → URL https://mcp.thiri.ai/mcp → füge deinen sk_live_-Key auf der Zustimmungsseite ein. Dieselben 4 Werkzeuge, derselbe Key, dasselbe Kontingent – keine Konfigurationsdatei, kein npx.
Claude Code (eine Zeile):
claude mcp add thiri --env THIRI_API_KEY=sk_live_your_key -- npx -y @bluesprincemedia/thiri-mcp
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"thiri": {
"command": "npx",
"args": ["-y", "@bluesprincemedia/thiri-mcp"],
"env": { "THIRI_API_KEY": "sk_live_your_key" }
}
}
}
Bevorzugst du rohes HTTP? (kein MCP nötig)
Dieselbe Engine ist eine einfache REST-API:
curl -X POST https://chords.thiri.ai/v2/analyze \
-H "Authorization: Bearer YOUR_KEY" -H "content-type: application/json" \
-d '{"chord":"Dm7b5","key":"C"}'
Vier Endpunkte: /v2/analyze, /v2/resolve, /v2/voicing, /v2/reharmonize, /v2/conduct. Siehe openapi.yaml.
Umgebungsvariablen
| Variable | Standard | Beschreibung |
|---|---|---|
THIRI_API_KEY | (keine) | Bearer-Token (sk_live_…) – erhalte einen unter build.thiri.ai/developers |
THIRI_API_URL | https://chords.thiri.ai | API-Basis (nur für lokale Entwicklung überschreiben) |
Entwicklung
npm install && npm run build && npm start
Lizenz
MIT — © 2026 Blues Prince Media. Der Client ist offen; die Engine ist ein gehosteter Dienst.