THIRI Chord Intelligence

Deterministic music theory for agents: analyze, voice, reharmonize, conduct — computed, not guessed

Should I use this

Quality & Safety

B
Description quality
82%
Schema completeness
80%
Naming quality
88%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'resolve_chord' description lacks action verbin resolve_chord

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~723Tokens (tool definitions)
~584 BTypical response size
Moderate attention impact (0.56% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "chord-intelligence": {
      "command": "npx",
      "args": [
        "@bluesprincemedia/thiri-mcp"
      ]
    }
  }
}

Runnable packages

npm@bluesprincemedia/thiri-mcp0.5.2stdio

Remote endpoints

https://mcp.thiri.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢analyze_chord(chord, key)

Parse a chord into root, quality, intervals, and (with a key) roman numeral + function.

Input Schema

{
  "type": "object",
  "properties": {
    "chord": {
      "type": "string"
    },
    "key": {
      "type": "string"
    }
  },
  "required": [
    "chord"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢resolve_chord(chord)

Resolve a chord to spelled notes, frequencies, MIDI, and recommended scales.

Input Schema

{
  "type": "object",
  "properties": {
    "chord": {
      "type": "string"
    }
  },
  "required": [
    "chord"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢generate_voicing(chord, style, octave, voices, previousNotes, ...)

Instrument-ready voicing in a style. Tension symbols voice by seat substitution (arranging practice, not stacking): 9/b9/#9 replace the root, #11/13/b13 replace the 5th, the 3rd and 7th are untouched guide tones. Pass voices: 5 to promote the implied 9 of an 11/13 chord; pass previousNotes for a voice-leading score.

Input Schema

{
  "type": "object",
  "properties": {
    "chord": {
      "type": "string"
    },
    "style": {
      "type": "string"
    },
    "octave": {
      "type": "number"
    },
    "voices": {
      "type": "number"
    },
    "previousNotes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "keyContext": {
      "type": "string"
    }
  },
  "required": [
    "chord"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢reharmonize(progression, technique, key)

Reharmonize a progression. Techniques: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (or auto).

Input Schema

{
  "type": "object",
  "properties": {
    "progression": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "technique": {
      "type": "string"
    },
    "key": {
      "type": "string"
    }
  },
  "required": [
    "progression"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢conduct_band(prompt, durationSec)

Arrange a 4-piece band from a natural-language prompt. Returns conductor tempo/groove, 4 lanes of note events, lead sheet, and base64 MIDI. Audio render (Csound → WAV) stays on local thiri-conductor-mcp / POST /v2/render.

Input Schema

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string"
    },
    "durationSec": {
      "type": "number"
    }
  },
  "required": [
    "prompt"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools