THIRI Chord Intelligence — Music Theory MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| THIRI_API_KEY | Yes | Bearer token (sk_live_…) — get one at build.thiri.ai/developers | |
| THIRI_API_URL | No | API base (override only for local dev) | https://chords.thiri.ai |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| analyze_chordA | Parse a chord symbol into its root, quality, intervals, extensions, and harmonic function. When a key is provided, returns the Roman numeral, scale degree, and whether the chord is diatonic. |
| resolve_chordA | Resolve a chord symbol to spelled note names, frequencies in Hz, MIDI numbers, and recommended improvisation scales. |
| generate_voicingA | Generate instrument-ready voicings for a chord in a specified style. Pass previousNotes (or a previousVoicing object) from an earlier result to get a voiceLeadingScore for the transition. Styles: rootless, bill_evans, shell, triad, pad, guide-tones, guide-tone-1, guide-tone-2, both-guide-tones, drop-2, drop-3. |
| reharmonizeA | Reharmonize a chord progression using jazz techniques. Returns one alternative per applicable technique, each with the new progression, the changes, and a plain-English explanation. With technique 'auto' (default) it returns every technique that applies. Techniques: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor. (modal_interchange and backdoor require a key.) |
| conduct_bandA | Arrange a 4-piece band from a natural-language prompt. Returns conductor tempo/groove, 4 lanes of note events, lead sheet, and base64 MIDI. Browser/client synthesizes audio via Csound; use thiri-conductor-mcp locally to render WAV. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| chord-scale-map | Complete chord-to-scale relationship map from the Music Theory Matrix. Maps 14 chord qualities to primary and secondary scale recommendations. |
| studio-capability-manifest | Unified THIRI studio agent manifest — instruments, MCP tools, Csound map, deterministic command grammar. |
TDQS
Scored across 5 tools
Each tool targets a distinct musical operation: resolving, analyzing, voicing, reharmonizing, and arranging. The only mild overlap is between resolve_chord and analyze_chord, since both accept chord symbols, but their output purposes are clearly separated by the descriptions.
Four of five tools follow a clear verb_noun pattern (resolve_chord, analyze_chord, generate_voicing, conduct_band). The exception is reharmonize, which is a single verb without an explicit object, but it is still recognizable and does not create confusion.
Five tools is well-scoped for a specialized music theory server. Each tool addresses a distinct and meaningful part of chord intelligence, from analysis and resolution to voicing, reharmonization, and full band arrangement.
The tool surface covers the core chord intelligence workflow: parse/analyze chords, resolve them to concrete musical data, generate voicings with voice-leading support, reharmonize progressions, and produce a full arrangement. There are no obvious dead ends or missing essential operations for the stated domain.