THIRI logo
build.thiri.ai
Solana · Seeker · Cadenza
AI Lab Research Note

Get Started: Melodic Harmonizer: Automated Voice-Leading Backings

June 8, 2026 by THIRI AI Lab
These prompts call the THIRI MCP. Get a free key → then add the MCP (npx @bluesprincemedia/thiri-mcp or hosted mcp.thiri.ai/mcp). New here? Play the instruments →

The Melodic Harmonizer skill writes SATB backing arrangements for solo melody voices. The engine resolves scale degrees for each chord segment and tests candidate pathways.

By prioritizing voice leading parameters (reach, penalty weights), the tool ensures backing voices move smoothly with minimum leaps.

Voice Leading Rule Validation:

function checkParallelIntervals(prevA, prevB, currA, currB) {
  const prevDist = Math.abs(prevA - prevB) % 12;
  const currDist = Math.abs(currA - currB) % 12;
  return (prevDist === 7 && currDist === 7) || (prevDist === 0 && currDist === 0);
}

🤖 File an Issue for an Autonomous Coding Agent

This project requires setting up an external application or workflow environment. If you want an autonomous coding agent (like Claude Code) to implement it in your repository:

  1. Click here to open a pre-filled GitHub Issue on the repository
  2. Submit the issue to trigger your repository’s autonomous builder agent.

Alternatively, you can copy the raw agent prompt instruction below:

Task Context: Build a code project utilizing the THIRI Model Context Protocol (MCP) server. Prompt Instruction: Write a TypeScript harmonization script. The script should take a string of melody notes and beat placements. For each segment, query the THIRI MCP resolve_chord and generate_voicing tools. Programmatically select backing pitches that form smooth voice-leading paths, explicitly checking and avoiding parallel fifths or octaves between adjacent voices.

Research Trends

Voice-Leading Constraints Melody Backings Auto-Harmonization