Get Started: Helix: Building a 3D Perspective AI Arpeggiator
npx @bluesprincemedia/thiri-mcp or hosted mcp.thiri.ai/mcp). New here? Play the instruments → Helix represents a paradigm shift in music visualization. Rather than drawing static piano rolls or linear patterns, it maps note events onto a tilted 3D perspective grid where time flows forward and pitches converge toward the background.
The visualizer queries the THIRI Chord Intelligence API in real-time to spell pitch classes and determine voice connections. Each played note triggers a volumetric 3D sphere pulse with concentric sound-wave lines, leaving a decaying fire-spectrogram trail behind the playhead.
Copyable Visualizer Scaffolder:
// Scaffolding for a 3D perspective project function
function project3D(x, y, W, H, pad) {
const rangeY = H - pad.t - pad.b;
const z = (y - pad.t) / rangeY; // Depth (0 to 1)
const scale = 0.65 + 0.35 * z;
const cx = W / 2;
return {
x: cx + (x - cx) * scale,
y: pad.t + (y - pad.t) * (0.75 + 0.25 * z),
scale
};
}
🤖 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:
- Click here to open a pre-filled GitHub Issue on the repository
- 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: Build a canvas-based 3D perspective arpeggiator visualization. Connect the visualizer to the THIRI MCP server. The grid lines, playhead line, and voice paths must converge towards a distant vanishing point using a linear perspective projection. Render note events as 3D volumetric spheres using radial gradients. When notes play, scale their radii and emit concentric sound wave lines. Implement interactive dragging of notes using a quadratic inverse projection mapping mouse screen space to canvas grid space. Add real-time log outputs to a console sidebar.