A side-by-side look at the Thiri MCP and MCP Open Library MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Thiri MCP for art & culture work as a local process; choose MCP Open Library for art & culture as a local process. You can also run both side by side in one mcpServers block.
THIRI_API_KEY, THIRI_API_URL.analyze_chord, resolve_chord, generate_voicing.search_books, get_book_by_title, get_book_by_id.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Art & Culture | Art & Culture |
| Quality signal | 64/100 · Good | 67/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | API key required | No auth required |
| Pricing | Free | Free |
| Required env vars | THIRI_API_KEYTHIRI_API_URL | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 11 | 95 |
| Directory activity | 3 views 0 installs 0 upvotes | 6 views 0 installs 0 upvotes |
| Tools | 5 | 7 |
| Full listing | View Thiri MCP | View MCP Open Library |
analyze_chordParse a chord symbol into its root, quality, intervals, extensions, and harmonic function. When a key is provided, returns the Roman numeral, scale degree, and whether the chord is diatonic.resolve_chordResolve a chord symbol to spelled note names, frequencies in Hz, MIDI numbers, and recommended improvisation scales.generate_voicingGenerate instrument-ready voicings for a chord in a specified style. Pass previousNotes (or a previousVoicing object) from an earlier result to get a voiceLeadingScore for the transition. Styles: rootless, bill_evans, shell, triad, pad, guide-tones, guide-tone-1, guide-tone-2, both-guide-tones, drop-2, drop-3.reharmonizeReharmonize a chord progression using jazz techniques. Returns one alternative per applicable technique, each with the new progression, the changes, and a plain-English explanation. With technique 'auto' (default) it returns every technique that applies. Techniques: tritone_sub, ii_v_insertion, modal_interchange, diminished_passing, secondary_dominant, chain_of_dominants, coltrane_changes, backdoor. (modal_interchange and backdoor require a key.)conduct_bandArrange a 4-piece band from a natural-language prompt. Returns conductor tempo/groove, 4 lanes of note events, lead sheet, and base64 MIDI. Browser/client synthesizes audio via Csound; use thiri-conductor-mcp locally to render WAV.search_booksSearch Open Library across titles, authors, subjects, places, people, publishers and ISBNs. Provide at least one search criterion: q, title, author, subject, place, person, publisher, isbn; combining several narrows the search. Returns at most `limit` results (default 10) together with `num_found`, the total number of matches; page through them with `offset`. Each result carries `best_edition` — one edition of the work, with its `isbn_13`/`isbn_10` where Open Library has them, and its `edition_key`, which can be passed to `get_book_by_id` as `{ idType: "olid" }` for that edition's full record.get_book_by_titleSearch for a book by its title on Open Library. Returns at most `limit` results (default 10) together with `num_found`, the total number of matches; page through them with `offset`. Each result carries `best_edition` — one edition of the work, with its `isbn_13`/`isbn_10` where Open Library has them, and its `edition_key`, which can be passed to `get_book_by_id` as `{ idType: "olid" }` for that edition's full record.get_book_by_idGet detailed information about a book using its identifier (ISBN, LCCN, OCLC, OLID).get_authors_by_nameSearch for author information on Open Library. Returns at most `limit` authors (default 10) together with `num_found`, the total number of matches; page through them with `offset`. Each result's `key` can be passed to `get_author_info` for that author's full record.get_author_infoGet detailed information for a specific author using their Open Library Author Key (e.g. OL23919A).get_author_photoGet the URL for an author's photo using their Open Library Author ID (OLID e.g. OL23919A). Reports when no photo exists rather than returning a URL to a blank placeholder.get_book_coverGet the URL for a book's cover image using a key (ISBN, OCLC, LCCN, OLID, ID) and value. Reports when no cover exists rather than returning a URL to a blank placeholder.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"bluesprince-thiri-mcp": {
"command": "npx",
"args": [
"-y",
"@bluesprincemedia/thiri-mcp"
],
"env": {
"THIRI_API_KEY": "YOUR_THIRI_API_KEY_HERE",
"THIRI_API_URL": "YOUR_THIRI_API_URL_HERE"
}
}
}
}
{
"mcpServers": {
"8ensmith-mcp-open-library": {
"command": "npx",
"args": [
"-y",
"mcp-open-library"
]
}
}
}