book-recommendations
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@book-recommendations recommend a book like Dune, something epic and mind-bending"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Book Recommendations — "What Should I Read Next?" MCP 📚🎲
Book recommendations for AI agents: "what should I read next?" answered from millions of works — topic recommendations, blind-date serendipity spins hooked by the book's actual first sentence, and free public-domain classics you can start reading right now. Zero API keys.
Ask any agent "what should I read next?", "books like Dune", or "surprise
me with a book" — book-recommendations is the tool that answers.
Why this exists
LLMs recommend the same 50 canon books for every ask. This fishes OpenLibrary's millions of works — including a blind-date spin that picks a random subject shelf at random depth, deliberately off the bestseller lists, and hooks you with the book's actual first sentence before the reveal.
Read-now intelligence on every card:
read_nowsays when a book is freely readable at archive.org (public) or borrowable (free loan) — instant reading beats a shopping link.Free classics via Project Gutenberg (fail-soft: when the Gutenberg index is down, the error itself points at archive.org alternatives).
Honest attribution: every card says why_picked — how the book was actually chosen. Discovery you can trust.
Related MCP server: hardcover-mcp
Tools
Tool | What it does |
| Book recommendations by topic/mood/"books like X", with ratings, subjects, first sentences, read-now flags |
| Serendipity spin: random shelf, random depth, first-sentence hook, two-beat reveal |
| Public-domain books with read-now URLs (Gutenberg, fail-soft) |
| Updatable playbooks (presentation, error recovery) |
Plus the prompt: what-should-i-read-next.
Quickstart
# 1-Line Universal Installer (auto-configures Claude Desktop, Cursor, Claude Code, VS Code, ...)
curl -fsSL "https://book-recommendations.builditwithai.xyz/install" | bash
# Or run directly via your preferred runtime:
uvx book-recommendations
npx -y book-recommendationsExample
User: surprise me with a book
blind_date()
→ picks: [{
first_sentence: "The lighthouse kept its own counsel…",
subjects: ["lighthouses", "islands", "solitude"], first_published: 1962,
why_picked: "blind date: fished the “lighthouses” shelf at depth 3 — picked
for serendipity, not sales rank",
title: "…", author: "…", read_now: "borrowable at archive.org",
openlibrary_url: "https://openlibrary.org/works/…" }]Present the hook first, then the reveal — the two-beat structure is the product.
Telemetry & privacy
Anonymous usage telemetry (no PII, no queries, no paths) via the fleet
standard (schema v2, dual-endpoint fallback). Opt out any time:
BOOK_RECOMMENDATIONS_TELEMETRY=false or DO_NOT_TRACK=1.
Development
uv venv && uv pip install -e ".[dev]"
DO_NOT_TRACK=1 .venv/bin/python -m pytest tests/ -q # unit + live + e2eLive tests hit the real OpenLibrary API and self-skip offline.
License
MIT
Available Tools
5 toolsblind_dateBlind date with a bookCRead-only
Serendipity spin: a random shelf at random depth — present the first sentence first, then the reveal
Inputs: seed, count, intent, exclude.
free_classicsFree classicsCRead-onlyIdempotent
Public-domain classics from Project Gutenberg, readable in full right now
Inputs: count, topic, intent.
recommendRecommend booksBRead-onlyIdempotent
Book recommendations by topic, mood, or 'books like X' — millions of works, free-read flags included
Inputs: topic (required), count, intent, exclude.
skill_readRead a skillARead-onlyIdempotent
Fetch the full content of one skill by name (from skills_list)
Inputs: name (required).
skills_listList skillsARead-onlyIdempotent
List available skills (guidance playbooks) for using this server well — read one with skill_read
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool serves a clearly distinct purpose: recommend provides targeted recommendations, blind_date offers random serendipity, free_classics surfaces public-domain works, and skills_list/skill_read manage usage guidance. No overlap or ambiguity exists between the tools.
Tool names follow no consistent pattern: 'recommend' is a bare verb, 'blind_date' and 'free_classics' are noun phrases, while 'skills_list' is a noun-noun compound and 'skill_read' reverses the typical verb-object order. This mixed convention could cause confusion about expected behavior.
With just 5 tools, the server is tightly scoped for its domain. Each tool adds distinct value without redundancy, and the count is well within the ideal range for a focused MCP server.
The core recommendation workflows are covered: tailored recommendations, serendipitous discovery, and access to classics. However, missing operations like fetching book details or saving favorites create minor gaps, though agents can likely work around them for most use cases.
Maintenance
Related MCP Connectors
Personalised book recommendations, filtered to what's on your public library's shelf right now.
Book discovery using an AI-curated book catalog that eliminates hallucinations and surfaces lesser-known titles.
Search a catalog of 1.7 million books and find books by mood, vibe, pace or genre. Read-only.
The media memory layer for AI agents and their humans. Your AI client can search your collection, add and log what you've finished, update ratings and lists, and find patterns across everything you've read, watched, played, and listened to.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to help users manage their reading experience by searching books, tracking reading progress, managing bookmarks, and generating personalized recommendations and summaries.-
- AlicenseAqualityBmaintenanceConnects AI assistants to the Hardcover book library, enabling natural language book searches, reading status updates, list management, and library exploration.28143 PyPI10MIT
- AlicenseAqualityDmaintenanceConnects AI assistants to the Open Library API for searching books and authors, retrieving metadata, and comparing works.1249 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables natural language interaction with e-books, supporting EPUB and PDF formats. Provides APIs for metadata extraction, table of contents, and content retrieval for AI-powered reading and learning.Apache 2.0