THIRI Chord Intelligence

oficial

Motor de teoría musical determinista para que agentes de IA analicen, resuelvan, vozen y rearmen acordes.

¿Qué puedes hacer con THIRI Chord Intelligence MCP?

  • Analizar estructura de acordes — Pide a analyze_chord que devuelva fundamental, cualidad, intervalos, numeral romano y función armónica para cualquier acorde en una tonalidad.
  • Resolver notas de acordes — Usa resolve_chord para obtener grafías enarmónicamente correctas, frecuencias, valores MIDI y recomendaciones de escala.
  • Generar voicings para instrumentos — Solicita generate_voicing con estilos como rootless, shell o drop-2, y pasa previousNotes para puntuaciones de conducción de voces.
  • Reharmonizar progresiones — Aplica reharmonize con técnicas como tritone_sub, coltrane_changes o auto para transformar progresiones de acordes.
  • Dirigir una banda — Usa conduct_band para traducir indicaciones en lenguaje natural a pistas de instrumentos y salida MIDI.

Documentación

🎷 THIRI Chord Intelligence — Servidor MCP

npm npm downloads CI license MCP Glama score

Dale a tu IA teoría musical real. THIRI es el servidor MCP + API de teoría musical determinístico para constructores de IA — permite a Claude, Cursor o cualquier agente MCP analizar acordes, realizar análisis de numerales romanos, generar voicings y rearmonizar progresiones con respuestas que son calculadas, no adivinadas.

Los LLMs alucinan teoría musical: notas incorrectas, numerales romanos falsos, voicings que no conducen voces. THIRI es un motor determinístico (teoría de clases de tono sobre ℤ/12) detrás de una API alojada — así que C7sus4 mantiene su suspensión, Caug escribe C E G#, y "Coltrane changes on Dm7 G7 Cmaj7" devuelve Cmaj7 Ab7 Abmaj7 E7, cada vez.

¿Trabajas con Suno / Udio o algún generador? Envuelve la salida y obtén un gráfico de acordes correcto en el que tu agente pueda confiar. Y a diferencia de tonal.js o music21, THIRI está alojado y es nativo para agentes (sin instalación, cualquier idioma) — y rearmoniza y conduce voces, no solo busca acordes.

⭐ Si esto es útil, haz estrella al repositorio — ayuda a otros músicos y constructores de agentes a encontrarlo.

👥 Únete a los Primeros 55 Constructores de Música con IA: ¿Quieres límites de tasa elevados (300 req/min), soporte directo del fundador y acceso temprano a herramientas próximas? Únete a nuestra comunidad de desarrolladores en Skool — Blues People AI.

Músicos: configuración en 2 minutos (sin código)

  1. Obtén una clave gratuita en build.thiri.ai/developers
  2. En Claude: Configuración → Conectores → Añadir conector personalizado → URL https://mcp.thiri.ai/mcp → pega tu clave sk_live_
  3. Pregunta a Claude: "Reharmonize Dm7 G7 Cmaj7 with Coltrane changes."

Eso es todo — sin instalación, sin archivo de configuración. Constructores: opciones de instalación completas (Claude Code, configuración de escritorio, HTTP puro) están abajo.

Lo que puedes preguntar

"Analyze Dm7b5 in C." → iiø7, semidisminuido, predominante prestado, + opciones de escala "What notes are in C7sus4?" → C F G Bb (la suspensión sobrevive) "Give me a rootless Cmaj7 voicing, then voice-lead into Dm7." → voicings + una puntuación de conducción de voces "Reharmonize Dm7 G7 Cmaj7 with Coltrane changes." → Cmaj7 Ab7 Abmaj7 E7

Herramientas

HerramientaLo que hace
analyze_chordAcorde → fundamental, calidad, intervalos, numeral romano y función armónica (dominantes secundarias, etiquetas de intercambio modal)
resolve_chordAcorde → notas escritas (enharmónicamente correctas), frecuencias, MIDI, recomendaciones de escala
generate_voicingVoicings listos para instrumento (sin fundamental / bill_evans, shell, triad, pad, guide-tones, drop-2/3); pasa previousNotes para una puntuación de conducción de voces; colorPreferences para tensiones explícitas
reharmonizeRearmonización de progresiones — 8 técnicas: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (o auto)
conduct_bandConducción de banda en lenguaje natural → pistas + MIDI (MCP alojado v0.3+)

Se ejecuta en el motor de cuadrícula v2 — acordes sus correctos, triadas reales, ortografía enharmónica, todos los dominantes alterados — con tiempos de espera de solicitud, informes de cuota y errores estructurados.

Compañeros de director y composición (solo escritorio)

Para bucles de agente de escucha (dirigir → renderizar del lado del servidor → WAV a través de tus altavoces), añade un segundo servidor local junto a las herramientas de teoría alojadas:

{
  "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"]
    }
  }
}
BinHerramientas
thiri-conductor-mcpconduct_band, render_audio (Csound del lado del servidor vía POST /v2/render), play_audio, search_corpus
thiri-composition-mcpHerramientas IR de composición + play_composition (vista previa de fluidsynth)

El renderizado se ejecuta del lado del servidor a partir de v0.5.0 — no se necesita instalación de Csound. Prueba: npm run test:conductor · documentos en vivo: build.thiri.ai/lab/conductor-mcp · recetas de agente.

Agente Director (composición por vibra)

Persona de extremo a extremo para composición por vibra local — habilidad, CLI y panel del tablero Band:

EntradaComando / ruta
Habilidad CursorCopiar THIRI/lab/skills/thiri-conductor-agent/SKILL.md → ~/.cursor/skills/thiri-conductor-agent/SKILL.md
CLIcd thiri-mcp && npm run conductor:vibe -- "gospel ballad in F minor"
Tableronpm run dev:studio → localhost:5173/band → panel Vibe Conduct
Prueba Labbuild.thiri.ai/lab/conductor-agent

Configuración MCP dual arriba + mapConductResultToStudioModules después de cada conduct_band. El último renderizado CLI escribe ~/.thiri/conductor-last.json (solo local, no comprometido).

Receta de agente insignia (analizar → dirigir → renderizar → criticar)

Pega en orden después de la configuración MCP dual anterior:

  1. Analizar — "Analyze Dm7 G7 Cmaj7 in key C with analyze_chord; summarize roman numerals and tension."
  2. Dirigir — "conduct_band: warm Rhodes pad, walking bass, brush drums, 8 bars medium swing in C."
  3. Renderizar — "render_audio from the conduct result at tempo 120."
  4. Criticar — "play_audio; critique voice-leading and register balance; suggest one revision."

Indicaciones completas: build.thiri.ai/lab/agent-recipes

Límite entre alojado y local

SuperficieRenderizado de audio
mcp.thiri.ai / conector alojadoNo — solo teoría + pistas conduct_band
Local thiri-conductor-mcpSí — WAV renderizado del lado del servidor (POST /v2/render), reproducido localmente; no se necesita instalación de Csound

Instalación

Obtén una clave gratuita en build.thiri.ai/developers, luego elige una ruta:

Claude Desktop / web / móvil — alojado (conector personalizado de un clic, nada que instalar): Configuración → Conectores → Añadir conector personalizado → URL https://mcp.thiri.ai/mcp → pega tu clave sk_live_ en la página de consentimiento. Las mismas 5 herramientas, la misma clave, la misma cuota — sin archivo de configuración, sin npx.

Claude Code (una línea):

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" }
    }
  }
}

¿Prefieres HTTP puro? (no se necesita MCP)

El mismo motor es una API REST simple:

curl -X POST https://chords.thiri.ai/v2/analyze \
  -H "Authorization: Bearer YOUR_KEY" -H "content-type: application/json" \
  -d '{"chord":"Dm7b5","key":"C"}'

Cinco endpoints: /v2/analyze, /v2/resolve, /v2/voicing, /v2/reharmonize, /v2/conduct. Ver openapi.yaml.

Variables de entorno

VariablePredeterminadoDescripción
THIRI_API_KEY(ninguno)Token Bearer (sk_live_…) — obtén uno en build.thiri.ai/developers
THIRI_API_URLhttps://chords.thiri.aiBase de la API (sobrescribir solo para desarrollo local)

Desarrollo

npm install && npm run build && npm start

Licencia

PolyForm Noncommercial 1.0.0 — © 2026 Blues Prince Media. Gratuito para uso personal, de investigación y no comercial; el uso comercial requiere una licencia (dennison@bluesprincemedia.com). Ver LICENSE. Las versiones publicadas en o antes de v0.5.0 permanecen bajo la licencia dual MIT/PolyForm con la que se enviaron.

A partir de v0.5.0, el motor de composición y el renderizador Csound se ejecutan del lado del servidor detrás de la API alojada (POST /v2/compose, POST /v2/render); su fuente ya no se envía en este paquete.