THIRI Chord Intelligence

oficial

Motor de teoria musical determinístico para agentes de IA analisarem, resolverem, vozearem e rearmonizarem acordes.

O que você pode fazer com THIRI Chord Intelligence MCP?

  • Analisar função do acorde — Peça ao analyze_chord para retornar fundamental, qualidade, intervalos, numeral romano e função harmônica para qualquer acorde em uma tonalidade.
  • Resolver notas do acorde — Use o resolve_chord para obter notas escritas enarmonicamente corretas, valores MIDI, frequências e recomendações de escala.
  • Gerar voicings de instrumento — Solicite o generate_voicing com estilos como rootless, shell ou drop-2, além de pontuações de condução de vozes ao passar notas anteriores.
  • Reharmonizar progressões — Aplique técnicas de reharmonize como substituição de trítono, mudanças Coltrane ou dominantes secundárias a qualquer sequência de acordes.
  • Conduzir uma banda — Use o conduct_band para traduzir instruções em linguagem natural em faixas de instrumento e dados MIDI.

Documentação

🎷 THIRI Chord Intelligence — Servidor MCP

npm npm downloads CI license MCP Glama score

Dê ao seu IA teoria musical real. THIRI é o servidor MCP de teoria musical + API determinístico para criadores de IA — ele permite que Claude, Cursor ou qualquer agente MCP analise acordes, execute análise de numerais romanos, gere voicings e rearmonize progressões com respostas que são calculadas, não adivinhadas.

LLMs alucinam teoria musical: notas erradas, numerais romanos falsos, voicings que não fazem voice-leading. THIRI é um motor determinístico (teoria de pitch-class-set sobre ℤ/12) por trás de uma API hospedada — então C7sus4 mantém sua suspensão, Caug soletra C E G#, e "Coltrane changes em Dm7 G7 Cmaj7" retorna Cmaj7 Ab7 Abmaj7 E7, toda vez.

Trabalhando com Suno / Udio ou qualquer gerador? Envolva a saída e obtenha um gráfico de acordes correto em que seu agente possa confiar. E ao contrário de tonal.js ou music21, THIRI é hospedado e nativo para agentes (sem instalação, qualquer linguagem) — e ele rearmoniza e faz voice-leading, não apenas consulta acordes.

⭐ Se isso for útil, dê uma estrela no repositório — isso ajuda outros músicos e criadores de agentes a encontrá-lo.

Músicos: configuração em 2 minutos (sem código)

  1. Obtenha uma chave gratuita em build.thiri.ai/developers
  2. No Claude: Configurações → ConectoresAdicionar conector personalizado → URL https://mcp.thiri.ai/mcp → cole sua chave sk_live_
  3. Pergunte ao Claude: "Rearmonize Dm7 G7 Cmaj7 com Coltrane changes."

Pronto — sem instalação, sem arquivo de configuração. Criadores: opções completas de instalação (Claude Code, configuração Desktop, HTTP bruto) estão abaixo.

O que você pode perguntar

"Analise Dm7b5 em C."iiø7, meio-diminuto, predominante emprestado, + opções de escala "Quais notas estão em C7sus4?"C F G Bb (a suspensão sobrevive) "Dê-me um voicing Cmaj7 sem fundamental, depois faça voice-leading para Dm7." → voicings + uma pontuação de voice-leading "Rearmonize Dm7 G7 Cmaj7 com Coltrane changes."Cmaj7 Ab7 Abmaj7 E7

Ferramentas

FerramentaO que faz
analyze_chordAcorde → fundamental, qualidade, intervalos, numeral romano e função harmônica (dominantes secundárias, rótulos de intercâmbio modal)
resolve_chordAcorde → notas soletradas (enharmonicamente corretas), frequências, MIDI, recomendações de escala
generate_voicingVoicings prontos para instrumento (sem fundamental/bill_evans, shell, tríade, pad, guide-tones, drop-2/3); passe previousNotes para uma pontuação de voice-leading; colorPreferences para tensões explícitas
reharmonizeRearmonização de progressões — 8 técnicas: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (ou auto)
conduct_bandCondução de banda em linguagem natural → faixas + MIDI (MCP hospedado v0.3+)

Roda no motor de grade v2 — acordes sus corretos, tríades reais, soletração enharmônica, todos os dominantes alterados — com timeouts de requisição, relatórios de cota e erros estruturados.

Companheiros de Conductor e composição (somente Desktop)

Para loops de agente ouvir (conduzir → renderização no servidor → WAV pelos seus alto-falantes), adicione um segundo servidor local junto com as ferramentas de teoria hospedadas:

{
  "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"]
    }
  }
}
BinFerramentas
thiri-conductor-mcpconduct_band, render_audio (Csound no servidor via POST /v2/render), play_audio, search_csound_corpus
thiri-composition-mcpFerramentas de IR de composição + play_composition (pré-visualização fluidsynth)

A renderização roda no servidor a partir da v0.5.0 — sem necessidade de instalar Csound. Prova: npm run test:conductor · documentação ao vivo: build.thiri.ai/lab/conductor-mcp · receitas de agentes.

Agente Conductor (composição por vibe)

Persona de ponta a ponta para composição local por vibe — skill, CLI e painel do Band:

EntradaComando / caminho
Skill do CursorCopie 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"
Painelnpm run dev:studiolocalhost:5173/band → painel Vibe Conduct
Prova no Labbuild.thiri.ai/lab/conductor-agent

Configuração MCP dupla acima + mapConductResultToStudioModules após cada conduct_band. A última renderização via CLI grava ~/.thiri/conductor-last.json (somente local, não commitado).

Receita principal de agente (analisar → conduzir → renderizar → criticar)

Cole em ordem após a configuração MCP dupla acima:

  1. Analisar"Analise Dm7 G7 Cmaj7 na tonalidade C com analyze_chord; resuma numerais romanos e tensão."
  2. Conduzir"conduct_band: Rhodes pad quente, baixo caminhante, bateria com escova, 8 compassos swing médio em C."
  3. Renderizar"render_audio a partir do resultado da condução no tempo 120."
  4. Criticar"play_audio; critique voice-leading e equilíbrio de registro; sugira uma revisão."

Prompts completos: build.thiri.ai/lab/agent-recipes

Limite entre hospedado e local

SuperfícieRenderização de áudio
mcp.thiri.ai / conector hospedadoNão — apenas teoria + faixas conduct_band
thiri-conductor-mcp localSim — WAV renderizado no servidor (POST /v2/render), reproduzido localmente; sem necessidade de instalar Csound

Instalação

Obtenha uma chave gratuita em build.thiri.ai/developers, depois escolha um caminho:

Claude Desktop / web / mobile — hospedado (conector personalizado em um clique, nada para instalar): Configurações → Conectores → Adicionar conector personalizado → URL https://mcp.thiri.ai/mcp → cole sua chave sk_live_ na página de consentimento. Mesmas 5 ferramentas, mesma chave, mesma cota — sem arquivo de configuração, sem npx.

Claude Code (uma linha):

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

Prefere HTTP bruto? (sem necessidade de MCP)

O mesmo motor é uma API REST simples:

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. Veja openapi.yaml.

Variáveis de ambiente

VariávelPadrãoDescrição
THIRI_API_KEY(nenhum)Token Bearer (sk_live_…) — obtenha um em build.thiri.ai/developers
THIRI_API_URLhttps://chords.thiri.aiBase da API (substitua apenas para desenvolvimento local)

Desenvolvimento

npm install && npm run build && npm start

Licença

PolyForm Noncommercial 1.0.0 — © 2026 Blues Prince Media. Gratuito para uso pessoal, de pesquisa e não comercial; uso comercial requer licença (dennison@bluesprincemedia.com). Veja LICENSE. Versões publicadas na v0.5.0 ou antes permanecem sob a licença dupla MIT/PolyForm com a qual foram lançadas.

A partir da v0.5.0, o motor de composição e o renderizador Csound rodam no servidor por trás da API hospedada (POST /v2/compose, POST /v2/render); seu código-fonte não é mais incluído neste pacote.