THIRI Chord Intelligence

공식

AI 에이전트가 코드를 분석, 해결, 보이싱 및 재화성화할 수 있도록 하는 결정론적 음악 이론 엔진입니다.

THIRI Chord Intelligence MCP(으)로 무엇을 할 수 있나요?

  • 모든 코드 기호 분석analyze_chord로 근음, 음질, 음정, 로마 숫자, 화성 기능을 얻습니다.
  • 올바른 이명동음으로 코드 표기resolve_chord를 사용하여 정확한 음, 주파수, MIDI 번호, 스케일 제안을 얻습니다.
  • 악기 준비 완료된 보이싱 생성generate_voicing를 통해 루트리스, 셸, 드롭-2 또는 기타 보이싱 스타일을 요청하고, 선택적으로 성부 진행 점수를 포함합니다.
  • 진행 재화성화reharmonize로 트라이톤 대치, 콜트레인 체인지, 모달 인터체인지 같은 기법을 적용합니다.
  • 자연어로 밴드 지휘 — 그루브를 설명하고 conduct_band를 통해 레인 할당과 MIDI를 얻습니다.

문서

🎷 THIRI Chord Intelligence — MCP 서버

npm license MCP

당신의 AI에 진짜 음악 이론을 제공하세요. THIRI는 AI 빌더를 위한 결정론적 음악 이론 MCP 서버 + API입니다 — Claude, Cursor 또는 모든 MCP 에이전트가 코드를 분석하고, 로마 숫자 분석을 실행하고, 보이싱을 생성하고, 진행을 리하모니제이션할 수 있도록 하며, 계산된, 추측이 아닌 답변을 제공합니다.

LLM은 음악 이론을 환각합니다: 잘못된 음표, 가짜 로마 숫자, 보이스 리딩이 되지 않는 보이싱. THIRI는 호스팅된 API 뒤에 있는 결정론적 엔진(ℤ/12 위의 음고류 집합 이론)입니다 — 따라서 C7sus4은 서스펜션을 유지하고, CaugC E G#을 철자하며, "Dm7 G7 Cmaj7에 대한 콜트레인 체인지"는 매번 Cmaj7 Ab7 Abmaj7 E7을 반환합니다.

Suno / Udio 또는 다른 생성기의 다운스트림인가요? 출력을 감싸서 에이전트가 신뢰할 수 있는 올바른 코드 차트를 얻으세요. 그리고 tonal.js이나 music21과 달리, THIRI는 호스팅되고 에이전트 네이티브이며(설치 불필요, 모든 언어) — 코드를 단순히 조회하는 것이 아니라 리하모니제이션하고 보이스 리딩합니다.

⭐ 유용하다면, 저장소에 별표를 눌러주세요 — 다른 음악가와 에이전트 빌더가 찾는 데 도움이 됩니다.

질문할 수 있는 것들

"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 그리드 엔진에서 실행 — 올바른 sus 코드, 실제 트라이어드, 엔하모닉 철자, 모든 얼터드 도미넌트 — 요청 타임아웃, 할당량 보고, 구조화된 오류 포함.

로컬 Csound MCP (데스크톱 전용)

듣기 에이전트 루프 (지휘 → Csound 악보 → WAV)를 위해, 호스팅된 이론 도구와 함께 두 번째 로컬 서버를 추가하세요:

{
  "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"]
    }
  }
}
바이너리도구
thiri-conductor-mcpconduct_band, build_csound_score, render_csound_wav, play_audio, search_csound_corpus, render_with_tension
thiri-composition-mcp컴포지션 IR 도구 + play_composition (fluidsynth 미리보기)

WAV 렌더링을 위해 PATH에 Csound CLI가 필요합니다. 증명: 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
CLIcd thiri-mcp && npm run conductor:vibe -- "gospel ballad in F minor"
대시보드npm run dev:studiolocalhost:5173/bandVibe Conduct 패널
랩 증명build.thiri.ai/lab/conductor-agent

위의 듀얼 MCP 구성 + 각 conduct_bandmapConductResultToStudioModules. 마지막 CLI 렌더는 ~/.thiri/conductor-last.json를 기록합니다 (로컬 전용, 커밋되지 않음).

플래그십 에이전트 레시피 (분석 → 지휘 → 렌더 → 비평)

위의 듀얼 MCP 구성 후 순서대로 붙여넣기:

  1. 분석"analyze_chord로 C 키에서 Dm7 G7 Cmaj7을 분석하고; 로마 숫자와 텐션을 요약해줘."
  2. 지휘"conduct_band: 따뜻한 Rhodes 패드, 워킹 베이스, 브러시 드럼, C 키의 미디엄 스윙 8마디."
  3. 렌더"레인에서 build_csound_score, 그 다음 템포 120으로 render_csound_wav."
  4. 비평"play_audio; 보이스 리딩과 음역 밸런스를 비평하고; 한 가지 수정을 제안해줘."

전체 프롬프트: build.thiri.ai/lab/agent-recipes

호스팅 vs 로컬 경계

표면Csound WAV
mcp.thiri.ai / 호스팅 커넥터아니요 — 이론 + conduct_band 레인만
로컬 thiri-conductor-mcp예 — 사용자 머신에 Csound CLI 필요

설치

**build.thiri.ai/developers**에서 무료 키를 받은 후, 경로를 선택하세요:

Claude Desktop / 웹 / 모바일 — 호스팅 (원클릭 커스텀 커넥터, 설치할 것 없음): 설정 → 커넥터 → 커스텀 커넥터 추가 → URL https://mcp.thiri.ai/mcp → 동의 페이지에 sk_live_ 키 붙여넣기. 동일한 4개 도구, 동일한 키, 동일한 할당량 — 구성 파일 없음, npx 없음.

Claude Code (한 줄):

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"}'

네 개의 엔드포인트: /v2/analyze, /v2/resolve, /v2/voicing, /v2/reharmonize, /v2/conduct. openapi.yaml 참조.

환경 변수

변수기본값설명
THIRI_API_KEY(없음)베어러 토큰 (sk_live_…) — build.thiri.ai/developers에서 받으세요
THIRI_API_URLhttps://chords.thiri.aiAPI 베이스 (로컬 개발 시에만 재정의)

개발

npm install && npm run build && npm start

라이선스

MIT — © 2026 Blues Prince Media. 클라이언트는 오픈 소스이며, 엔진은 호스팅 서비스입니다.