THIRI Chord Intelligence
公式AIエージェントがコードを分析、解決、ボイシング、リハーモナイズするための決定論的音楽理論エンジン。
THIRI Chord Intelligence MCPで何ができますか?
- コード機能の分析 —
analyze_chordに問い合わせて、任意のキー内のコードについてルート、クオリティ、インターバル、ローマ数字、および和声機能を取得します。 - コードノートの解決 —
resolve_chordを使用して、異名同音的に正しいスペルノート、MIDI値、周波数、およびスケール推奨を取得します。 - 楽器ボイシングの生成 —
generate_voicingをルートレス、シェル、ドロップ2などのスタイルでリクエストし、前のノートを渡す場合はボイスリーディングスコアも取得します。 - 進行のリハーモナイズ —
reharmonizeテクニック(トリトーン置換、コルトレーン・チェンジズ、セカンダリードミナントなど)を任意のコードシーケンスに適用します。 - バンドの指揮 —
conduct_bandを使用して、自然言語の指示を楽器レーンとMIDIデータに変換します。
ドキュメント
🎷 THIRI Chord Intelligence — MCP サーバー
あなたのAIに本物の音楽理論を。 THIRIは、AIビルダーのための決定論的音楽理論MCPサーバー + APIです。Claude、Cursor、または任意のMCPエージェントが、コードを分析し、ローマ数字分析を実行し、ボイシングを生成し、進行をリハーモナイズすることを可能にします。その答えは推測ではなく計算されたものです。
LLMは音楽理論を幻覚します:間違った音、偽のローマ数字、ボイスリーディングしないボイシング。THIRIは、ホストされたAPIの背後にある決定論的エンジン(ℤ/12上のピッチクラスセット理論)です。そのため、C7sus4はサスペンションを保持し、CaugはC E G#を正しく綴り、「Dm7 G7 Cmaj7上のコルトレーン・チェンジ」は毎回Cmaj7 Ab7 Abmaj7 E7を返します。
Suno / Udioや任意のジェネレーターの下流ですか? 出力をラップして、エージェントが信頼できる正しいコードチャートを取得します。そして、tonal.jsやmusic21とは異なり、THIRIはホストされ、エージェントネイティブであり(インストール不要、任意の言語)、コードを検索するだけでなく、リハーモナイズし、ボイスリーディングします。
⭐ これが役立つなら、リポジトリにスターを付けてください。他のミュージシャンやエージェントビルダーが見つけるのに役立ちます。
ミュージシャン向け:2分セットアップ(コード不要)
- build.thiri.ai/developers で無料キーを取得
- Claudeで:設定 → コネクタ → カスタムコネクタを追加 → URL
https://mcp.thiri.ai/mcp→sk_live_キーを貼り付け - Claudeに尋ねる:「Dm7 G7 Cmaj7をコルトレーン・チェンジでリハーモナイズして。」
以上です。インストールも設定ファイルも不要です。ビルダー向け:完全なインストールオプション(Claude Code、デスクトップ設定、生のHTTP)は以下にあります。
尋ねられること
「CでDm7b5を分析して。」 →
iiø7、ハーフディミニッシュ、借用プレドミナント、+ スケールオプション 「C7sus4の音は何ですか?」 →C F G Bb(サスペンションは生き残ります) 「ルートレスのCmaj7ボイシングをください。それからDm7にボイスリーディングして。」 → ボイシング + ボイスリーディングスコア 「Dm7 G7 Cmaj7をコルトレーン・チェンジでリハーモナイズして。」 →Cmaj7 Ab7 Abmaj7 E7
ツール
| ツール | 機能 |
|---|---|
analyze_chord | コード → ルート、クオリティ、インターバル、ローマ数字 & 和声機能(セカンダリードミナント、モーダルインターチェンジラベル) |
resolve_chord | コード → スペルアウトされた音(異名同音的に正しい)、周波数、MIDI、スケール推奨 |
generate_voicing | 楽器対応ボイシング(ルートレス/ビル・エヴァンス、シェル、トライアド、パッド、ガイドトーン、ドロップ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グリッドエンジン上で実行 — 正しいサスコード、本物のトライアド、異名同音スペリング、すべてのオルタードドミナント — リクエストタイムアウト、クォータレポート、構造化エラー付き。
指揮者 & 作曲コンパニオン(デスクトップのみ)
聴くエージェントループ(指揮 → サーバーサイドレンダリング → スピーカーを通してWAV)のために、ホストされた理論ツールと並べて2つ目のローカルサーバーを追加します:
{
"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 | ツール |
|---|---|
thiri-conductor-mcp | conduct_band、render_audio(POST /v2/render経由のサーバーサイドCsound)、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 · エージェントレシピ。
指揮者エージェント(バイブ作曲)
ローカルバイブ作曲のためのエンドツーエンドペルソナ — スキル、CLI、バンドダッシュボードパネル:
| エントリ | コマンド / パス |
|---|---|
| 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" |
| ダッシュボード | npm run dev:studio → localhost:5173/band → Vibe Conduct パネル |
| ラボ証明 | build.thiri.ai/lab/conductor-agent |
上記のデュアルMCP設定 + 各conduct_bandの後にmapConductResultToStudioModules。最後のCLIレンダリングは~/.thiri/conductor-last.jsonを書き込みます(ローカルのみ、コミットされません)。
フラッグシップエージェントレシピ(分析 → 指揮 → レンダリング → 批評)
上記のデュアルMCP設定の後に順番に貼り付けます:
- 分析 — 「analyze_chordでキーCのDm7 G7 Cmaj7を分析し、ローマ数字とテンションを要約して。」
- 指揮 — 「conduct_band:暖かいRhodesパッド、ウォーキングベース、ブラシドラム、Cで8小節のミディアムスウィング。」
- レンダリング — 「指揮結果からテンポ120でrender_audio。」
- 批評 — 「play_audio;ボイスリーディングと音域バランスを批評し、1つの修正を提案して。」
完全なプロンプト:build.thiri.ai/lab/agent-recipes
ホストとローカルの境界
| サーフェス | オーディオレンダリング |
|---|---|
mcp.thiri.ai / ホストされたコネクタ | いいえ — 理論 + conduct_band レーンのみ |
ローカル thiri-conductor-mcp | はい — サーバーサイドでレンダリングされたWAV(POST /v2/render)、ローカルで再生;Csoundインストール不要 |
インストール
build.thiri.ai/developers で無料キーを取得し、パスを選択します:
Claude Desktop / Web / モバイル — ホスト(ワンクリックカスタムコネクタ、インストール不要):
設定 → コネクタ → カスタムコネクタを追加 → URL https://mcp.thiri.ai/mcp → 同意ページでsk_live_キーを貼り付け。同じ5つのツール、同じキー、同じクォータ — 設定ファイルもnpxも不要。
Claude Code(1行):
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" }
}
}
}
生の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"}'
5つのエンドポイント:/v2/analyze、/v2/resolve、/v2/voicing、/v2/reharmonize、/v2/conduct。openapi.yamlを参照。
環境変数
| 変数 | デフォルト | 説明 |
|---|---|---|
THIRI_API_KEY | (なし) | ベアラートークン(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)の背後でサーバーサイドで実行され、そのソースはこのパッケージに同梱されなくなりました。