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 estrutura de acordes — 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 de acordes — Use o resolve_chord para obter grafias enarmonicamente corretas, frequências, valores MIDI e recomendações de escala.
  • Gerar voicings para instrumentos — Solicite o generate_voicing com estilos como rootless, shell ou drop-2, e passe previousNotes para pontuações de condução de vozes.
  • Rearmonizar progressões — Aplique o reharmonize com técnicas como tritone_sub, coltrane_changes ou auto para transformar progressões de acordes.
  • Conduzir uma banda — Use o conduct_band para traduzir direções em linguagem natural em faixas de instrumentos e saída MIDI.

Documentação

🎷 THIRI Chord Intelligence — Servidor MCP

npm npm downloads CI license MCP Glama score

Dê teoria musical real à sua IA. 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 numeração romana, gere voicings e rearmonize progressões com respostas que são calculadas, não adivinhadas.

LLMs alucinam teoria musical: notas erradas, numeração romana falsa, voicings que não fazem voice-leading. THIRI é um motor determinístico (teoria de conjuntos de classes de pitch sobre ℤ/12) por trás de uma API hospedada — então C7sus4 mantém sua suspensão, Caug escreve C E G#, e "Coltrane changes em Dm7 G7 Cmaj7" retorna Cmaj7 Ab7 Abmaj7 E7, todas as vezes.

Trabalha com Suno / Udio ou qualquer gerador? Envolva a saída e obtenha um gráfico de acordes correto em que seu agente pode 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 — ajuda outros músicos e criadores de agentes a encontrá-lo.

👥 Junte-se aos Primeiros 55 Construtores de IA Musical: Quer limites de taxa elevados (300 req/min), suporte direto dos fundadores e acesso antecipado a novas ferramentas? Junte-se à nossa comunidade de desenvolvedores no Skool — Blues People AI.

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 → Conectores → Adicionar conector personalizado → URL https://mcp.thiri.ai/mcp → cole sua chave sk_live_
  3. Pergunte ao Claude: "Rearmonize Dm7 G7 Cmaj7 com Coltrane changes."

É isso — sem instalação, sem arquivo de configuração. Construtores: opções completas de instalação (Claude Code, configuração do 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 tem C7sus4?" → C F G Bb (a suspensão sobrevive) "Me dê um voicing de 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ários, rótulos de intercâmbio modal)
resolve_chordAcorde → notas escritas (enharmonicamente corretas), frequências, MIDI, recomendações de escala
generate_voicingVoicings prontos para instrumento (sem fundamental/bill_evans, shell, tríade, pad, guia-tons, 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, escrita enharmônica, todos os dominantes alterados — com timeouts de solicitação, relatório de cota e erros estruturados.

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

Para loops de agente com áudio (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_corpus
thiri-composition-mcpFerramentas de IR de composição + play_composition (pré-visualização fluidsynth)

A renderização ocorre 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 agente.

Agente de Condução (composição por vibração)

Persona de ponta a ponta para composição local por vibração — skill, CLI e painel do dashboard 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"
Dashboardnpm run dev:studio → localhost:5173/band → painel Vibe Conduct
Prova no Labbuild.thiri.ai/lab/conductor-agent

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

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

Cole em ordem após a config dupla de MCP acima:

  1. Analisar — "Analise Dm7 G7 Cmaj7 na tonalidade C com analyze_chord; resuma os numerais romanos e a tensão."
  2. Conduzir — "conduct_band: pad Rhodes quente, baixo walking, bateria com escova, 8 compassos swing médio em C."
  3. Renderizar — "render_audio a partir do resultado do conduct no tempo 120."
  4. Criticar — "play_audio; critique o voice-leading e o 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
Local thiri-conductor-mcpSim — WAV renderizado no servidor (POST /v2/render), tocado 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. As mesmas 5 ferramentas, a mesma chave, a 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 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. Uso gratuito para uso pessoal, pesquisa e não comercial; uso comercial requer uma licença (dennison@bluesprincemedia.com). Veja LICENSE. Versões publicadas até a v0.5.0 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.