Figma Context MCP
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Description from the maker (original English)
Deterministic music theory for agents: analyze, voice, reharmonize, conduct — computed, not guessed
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
THIRI_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://mcp.thiri.ai/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"chord-intelligence": {
"command": "npx",
"args": [
"-y",
"@bluesprincemedia/thiri-mcp"
],
"env": {
"THIRI_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add --transport http chord-intelligence https://mcp.thiri.ai/mcpclaude mcp add chord-intelligence --env THIRI_API_KEY=your-value -- npx -y @bluesprincemedia/thiri-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"chord-intelligence": {
"url": "https://mcp.thiri.ai/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"chord-intelligence": {
"command": "npx",
"args": [
"-y",
"@bluesprincemedia/thiri-mcp"
],
"env": {
"THIRI_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"chord-intelligence": {
"type": "http",
"url": "https://mcp.thiri.ai/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"chord-intelligence": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@bluesprincemedia/thiri-mcp"
],
"env": {
"THIRI_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://mcp.thiri.ai/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain thiri.ai (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: THIRI_API_KEY
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.5.2) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Figma Context MCP, Claude Real Video, Figma MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.
Let any LLM watch a video locally — and search everything it has ever watched.
Figma’s official server gives AI your design data so it can turn designs into code or describe them accurately. Connects to Figma’s cloud.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Give your AI real music theory. THIRI is the deterministic music theory MCP server + API for AI builders — it lets Claude, Cursor, or any MCP agent analyze chords, run roman-numeral analysis, generate voicings, and reharmonize progressions with answers that are *computed, not guessed*.
LLMs hallucinate music theory: wrong notes, fake roman numerals, voicings that don't voice-lead. THIRI is a deterministic engine (pitch-class-set theory over ℤ/12) behind a hosted API — so C7sus4 keeps its suspension, Caug spells C E G#, and "Coltrane changes on Dm7 G7 Cmaj7" returns Cmaj7 Ab7 Abmaj7 E7, every time.
Downstream of Suno / Udio or any generator? Wrap the output and get a correct chord chart your agent can trust. And unlike tonal.js or music21, THIRI is hosted and agent-native (no install, any language) — and it *reharmonizes* and *voice-leads*, not just looks chords up.
⭐ If this is useful, star the repo — it helps other musicians and agent builders find it.
👥 Join the AI Music Builders: Want elevated rate limits, direct founder support, and early access to upcoming tools? Join our developer community on [Skool — T.H.I.R.I. Builders](https://www.skool.com/thiri-builders-6682/about).
https://mcp.thiri.ai/mcp → paste your sk_live_ keyThat's it — no install, no config file. Builders: full install options (Claude Code, Desktop config, raw HTTP) are below.
*"Analyze Dm7b5 in C."* →
iiø7, half-diminished, borrowed predominant, + scale options
*"What notes are in C7sus4?"* →
C F G Bb(the suspension survives)
*"Give me a rootless Cmaj7 voicing, then voice-lead into Dm7."* → voicings + a voice-leading score
*"Reharmonize Dm7 G7 Cmaj7 with Coltrane changes."* →
Cmaj7 Ab7 Abmaj7 E7
| Tool | What it does |
|---|---|
analyze_chord | Chord → root, quality, intervals, roman numeral & harmonic function (secondary dominants, modal-interchange labels) |
resolve_chord | Chord → spelled notes (enharmonically correct), frequencies, MIDI, scale recommendations |
generate_voicing | Instrument-ready voicings (rootless/bill_evans, shell, triad, pad, guide-tones, drop-2/3); pass previousNotes for a voice-leading score; colorPreferences for explicit tensions |
reharmonize | Progression reharmonization — 8 techniques: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor (or auto) |
conduct_band | Natural-language band conduct → lanes + MIDI (hosted MCP v0.3+) |
Runs on the v2 grid engine — correct sus chords, real triads, enharmonic spelling, all altered dominants — with request timeouts, quota reporting, and structured errors.
For hear-it agent loops (conduct → server-side render → WAV through your speakers), add a second local server alongside hosted theory tools:
{
"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"] } } }
| Bin | Tools |
|---|---|
thiri-conductor-mcp | conduct_band, render_audio (server-side Csound via POST /v2/render), play_audio, search_corpus |
thiri-composition-mcp | Composition IR tools + play_composition (fluidsynth preview) |
Rendering runs server-side as of v0.5.0 — no Csound install needed. Proof: npm run test:conductor · live docs: build.thiri.ai/lab/conductor-mcp · agent recipes.
End-to-end persona for local vibe composition — skill, CLI, and Band dashboard panel:
| Entry | Command / path |
|---|---|
| Cursor skill | Copy THIRI/lab/skills/thiri-conductor-agent/SKILL.md → ~/.cursor/skills/thiri-conductor-agent/SKILL.md |
| CLI | cd thiri-mcp && npm run conductor:vibe -- "gospel ballad in F minor" |
| Dashboard | npm run dev:studio → localhost:5173/band → Vibe Conduct panel |
| Lab proof | build.thiri.ai/lab/conductor-agent |
Dual MCP config above + mapConductResultToStudioModules after each conduct_band. Last CLI render writes ~/.thiri/conductor-last.json (local only, not committed).
Paste in order after dual MCP config above:
Full prompts: build.thiri.ai/lab/agent-recipes
| Surface | Audio render |
|---|---|
mcp.thiri.ai / hosted connector | No — theory + conduct_band lanes only |
Local thiri-conductor-mcp | Yes — WAV rendered server-side (POST /v2/render), played locally; no Csound install needed |
Get a free key at [build.thiri.ai/keys](https://build.thiri.ai/keys), then pick a path:
Claude Desktop / web / mobile — hosted (one-click custom connector, nothing to install): Settings → Connectors → Add custom connector → URL https://mcp.thiri.ai/mcp → paste your sk_live_ key on the consent page. Same 5 tools, same key, same quota — no config file, no npx.
Claude Code (one line):
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" } } } }
The same engine is a plain 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"}'
Five endpoints: `/v2/analyze`, `/v2/resolve`, `/v2/voicing`, `/v2/reharmonize`, `/v2/conduct`. See [`openapi.yaml`](./openapi.yaml).
| Variable | Default | Description |
|---|---|---|
THIRI_API_KEY | (none) | Bearer token (sk_live_…) — get one at build.thiri.ai/keys |
THIRI_API_URL | https://chords.thiri.ai | API base (override only for local dev) |
npm install && npm run build && npm start
PolyForm Noncommercial 1.0.0 — © 2026 Blues Prince Media. Free for personal, research, and noncommercial use; commercial use requires a license (dennison@bluesprincemedia.com). See LICENSE. Versions published at or before v0.5.0 remain under the MIT/PolyForm dual license they shipped with.
As of v0.5.0 the composition engine and Csound renderer run server-side behind
the hosted API (
POST /v2/compose,POST /v2/render); their source no longer
ships in this package.