THIRI Chord Intelligence
официальныйДетерминированный музыкально-теоретический движок для ИИ-агентов, позволяющий анализировать, разрешать, голосоводить и перегармонизовывать аккорды.
Что можно делать с THIRI Chord Intelligence MCP?
- Анализ аккордовой функции — Запросите
analyze_chord, чтобы получить тонику, качество, интервалы, римскую цифру и гармоническую функцию для любого аккорда в тональности. - Разрешение нот аккорда — Используйте
resolve_chord, чтобы получить энгармонически корректные ноты, значения MIDI, частоты и рекомендации по гаммам. - Генерация инструментальных голосоведений — Запросите
generate_voicingс такими стилями, как без основного тона, облегченное или drop-2, а также оценки голосоведения при передаче предыдущих нот. - Регармонизация последовательностей — Примените техники
reharmonize, такие как тритоновая замена, изменения Колтрейна или вторичные доминанты, к любой последовательности аккордов. - Управление группой — Используйте
conduct_bandдля преобразования инструкций на естественном языке в инструментальные дорожки и данные MIDI.
Документация
🎷 THIRI Chord Intelligence — MCP-сервер
Дайте вашему ИИ настоящую теорию музыки. THIRI — это детерминированный MCP-сервер + API по теории музыки для разработчиков ИИ: он позволяет Claude, Cursor или любому MCP-агенту анализировать аккорды, выполнять римско-цифровой анализ, генерировать голосоведение и регармонизировать последовательности с ответами, которые вычисляются, а не угадываются.
LLM галлюцинируют в теории музыки: неправильные ноты, фальшивые римские цифры, голосоведение, которое не ведёт голоса. THIRI — это детерминированный движок (теория классов высоты звука над ℤ/12) за хостируемым API — поэтому C7sus4 сохраняет свою суспензию, Caug правильно пишет C E G#, а «Coltrane changes на Dm7 G7 Cmaj7» возвращает Cmaj7 Ab7 Abmaj7 E7 каждый раз.
Работаете с Suno / Udio или любым генератором? Оберните выходные данные и получите корректную аккордовую схему, которой ваш агент может доверять. И в отличие от tonal.js или music21, THIRI — хостируемый и агент-нативный (без установки, на любом языке) — и он регармонизирует и ведёт голоса, а не просто ищет аккорды.
⭐ Если это полезно, поставьте звезду репозиторию — это помогает другим музыкантам и разработчикам агентов найти проект.
Музыкантам: настройка за 2 минуты (без кода)
- Получите бесплатный ключ на build.thiri.ai/developers
- В Claude: Настройки → Connectors → Add custom connector → URL
https://mcp.thiri.ai/mcp→ вставьте ваш ключsk_live_ - Спросите Claude: «Регармонизируй Dm7 G7 Cmaj7 с Coltrane changes.»
Всё — без установки, без файла конфигурации. Разработчикам: полные варианты установки (Claude Code, конфиг Desktop, raw HTTP) — ниже.
Что можно спросить
«Проанализируй Dm7b5 в C.» →
iiø7, полууменьшённый, заимствованная доминанта, + варианты гамм «Какие ноты в C7sus4?» →C F G Bb(суспензия сохраняется) «Дай мне безбасовое голосоведение Cmaj7, затем веди голоса в Dm7.» → голосоведения + оценка голосоведения «Регармонизируй Dm7 G7 Cmaj7 с Coltrane changes.» →Cmaj7 Ab7 Abmaj7 E7
Инструменты
| Инструмент | Что делает |
|---|---|
analyze_chord | Аккорд → тоника, качество, интервалы, римская цифра и гармоническая функция (побочные доминанты, метки модального заимствования) |
resolve_chord | Аккорд → правильно записанные ноты (энгармонически корректно), частоты, MIDI, рекомендации по гаммам |
generate_voicing | Готовые к инструменту голосоведения (безбасовые/bill_evans, shell, triad, pad, guide-tones, drop-2/3); передайте previousNotes для оценки голосоведения; colorPreferences для явных напряжений |
reharmonize | Регармонизация последовательности — 8 техник: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (или auto) |
conduct_band | Управление группой на естественном языке → дорожки + MIDI (хостируемый MCP v0.3+) |
Работает на движке v2 grid — корректные sus-аккорды, настоящие трезвучия, энгармоническое написание, все альтерированные доминанты — с таймаутами запросов, отчётами о квотах и структурированными ошибками.
Компаньоны Conductor и композиции (только Desktop)
Для слышимых циклов агента (conduct → серверный рендер → WAV через ваши колонки) добавьте второй локальный сервер рядом с хостируемыми инструментами теории:
{
"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"]
}
}
}
| Бинарь | Инструменты |
|---|---|
thiri-conductor-mcp | conduct_band, render_audio (серверный Csound через POST /v2/render), play_audio, search_csound_corpus |
thiri-composition-mcp | Инструменты композиционного IR + play_composition (превью fluidsynth) |
Рендеринг выполняется на сервере начиная с v0.5.0 — установка Csound не нужна. Доказательство: npm run test:conductor · живые документы: build.thiri.ai/lab/conductor-mcp · рецепты агентов.
Conductor Agent (vibe compose)
Сквозная персона для локальной vibe-композиции — навык, CLI и панель Band dashboard:
| Вход | Команда / путь |
|---|---|
| Навык Cursor | Скопируйте 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 |
| Доказательство в Lab | build.thiri.ai/lab/conductor-agent |
Двойная MCP-конфигурация выше + mapConductResultToStudioModules после каждого conduct_band. Последний CLI-рендер записывает ~/.thiri/conductor-last.json (только локально, не коммитится).
Флагманский рецепт агента (analyze → conduct → render → critique)
Вставьте по порядку после двойной MCP-конфигурации выше:
- Analyze — «Проанализируй Dm7 G7 Cmaj7 в тональности C с analyze_chord; суммируй римские цифры и напряжение.»
- Conduct — «conduct_band: тёплый Rhodes-пад, шагающий бас, щёточные барабаны, 8 тактов среднего свинга в C.»
- Render — «render_audio из результата conduct в темпе 120.»
- Critique — «play_audio; раскритикуй голосоведение и баланс регистров; предложи одну правку.»
Полные промпты: build.thiri.ai/lab/agent-recipes
Граница хостируемый vs локальный
| Поверхность | Аудио-рендер |
|---|---|
mcp.thiri.ai / хостируемый коннектор | Нет — только теория + дорожки conduct_band |
Локальный thiri-conductor-mcp | Да — WAV рендерится на сервере (POST /v2/render), воспроизводится локально; установка Csound не нужна |
Установка
Получите бесплатный ключ на build.thiri.ai/developers, затем выберите путь:
Claude Desktop / web / mobile — хостируемый (пользовательский коннектор в один клик, ничего устанавливать не нужно):
Настройки → Connectors → Add custom connector → URL https://mcp.thiri.ai/mcp → вставьте ваш ключ sk_live_ на странице согласия. Те же 5 инструментов, тот же ключ, та же квота — без файла конфигурации, без npx.
Claude Code (одна строка):
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" }
}
}
}
Предпочитаете raw HTTP? (MCP не нужен)
Тот же движок — это обычный 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"}'
Пять эндпоинтов: /v2/analyze, /v2/resolve, /v2/voicing, /v2/reharmonize, /v2/conduct. См. openapi.yaml.
Переменные окружения
| Переменная | По умолчанию | Описание |
|---|---|---|
THIRI_API_KEY | (нет) | Bearer-токен (sk_live_…) — получите на build.thiri.ai/developers |
THIRI_API_URL | https://chords.thiri.ai | Базовый API (переопределяйте только для локальной разработки) |
Разработка
npm install && npm run build && npm start
Лицензия
PolyForm Noncommercial 1.0.0 — © 2026 Blues Prince Media. Бесплатно для личного,
исследовательского и некоммерческого использования; коммерческое использование требует лицензии
(dennison@bluesprincemedia.com). См. LICENSE. Версии, опубликованные до
v0.5.0 включительно, остаются под двойной лицензией MIT/PolyForm, с которой они вышли.
Начиная с v0.5.0 композиционный движок и Csound-рендерер работают на сервере за хостируемым API (
POST /v2/compose,POST /v2/render); их исходный код больше не поставляется в этом пакете.