Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Calibre ebook library server: search, read content, curate metadata, semantic search, gated writes.
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.
CALIBRE_MCP_SERVER_URL, CALIBRE_MCP_LIBRARY, CALIBRE_MCP_ENABLE_WRITE, CALIBRE_MCP_CALIBREDB_PATHYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"calibre": {
"command": "npx",
"args": [
"-y",
"calibre-mcp"
],
"env": {
"CALIBRE_MCP_SERVER_URL": "your-value",
"CALIBRE_MCP_LIBRARY": "your-value",
"CALIBRE_MCP_ENABLE_WRITE": "your-value",
"CALIBRE_MCP_CALIBREDB_PATH": "your-value"
}
}
}
}Run this in your terminal
claude mcp add calibre --env CALIBRE_MCP_SERVER_URL=your-value --env CALIBRE_MCP_LIBRARY=your-value --env CALIBRE_MCP_ENABLE_WRITE=your-value --env CALIBRE_MCP_CALIBREDB_PATH=your-value -- npx -y calibre-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"calibre": {
"command": "npx",
"args": [
"-y",
"calibre-mcp"
],
"env": {
"CALIBRE_MCP_SERVER_URL": "your-value",
"CALIBRE_MCP_LIBRARY": "your-value",
"CALIBRE_MCP_ENABLE_WRITE": "your-value",
"CALIBRE_MCP_CALIBREDB_PATH": "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": {
"calibre": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"calibre-mcp"
],
"env": {
"CALIBRE_MCP_SERVER_URL": "your-value",
"CALIBRE_MCP_LIBRARY": "your-value",
"CALIBRE_MCP_ENABLE_WRITE": "your-value",
"CALIBRE_MCP_CALIBREDB_PATH": "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.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
CALIBRE_MCP_SERVER_URL envCALIBRE_MCP_LIBRARY envCALIBRE_MCP_ENABLE_WRITE envCALIBRE_MCP_CALIBREDB_PATH envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
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 9, 2026
The registry name was verified with the GitHub account caelum29, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
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.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.12.0) reached the registry 10 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
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.
The most capable Calibre MCP server in existence — connect Claude (or any MCP client)
to your Calibre ebook library and search it by *meaning*, not
just keywords.
Ask your AI assistant *“which of my books explain consumer-group rebalancing?”* and get the exact chapter — across 800+ books or inside one. Curate metadata, dedupe, and safely edit your library, all through natural language.
One question → semantic search → 3D cover flow → book card → exact passage → figure viewer, all inside Claude Desktop (MCP Apps)
calibre_get_book a book detail card with cover, rating, and read/similar actions, and calibre_get_figures a figure viewer that shows you the same diagrams the assistant fetched. Text-only hosts are unaffected.795731065.pdf → *Fundamentals of Software Engineering*) via Open Library / Google Books.pdftotext (brew install poppler) or Python 3 with PyMuPDF (pip install pymupdf). Without them the server falls back to Calibre's ebook-convert.Grab the guided-installer skill and hand the whole job to your agent:
npx skills@latest add caelum29/calibre-mcp # pick calibre-mcp-setup
Then tell your agent: "set up calibre-mcp". The calibre-mcp-setup skill drives everything below — preflight (Node, calibredb, Content Server), the Calibre-side config, the right install for your client (macOS/Windows/Linux), and a calibre_ping verification — asking you only the questions that are yours to answer (which client, writes on/off). Works in any Agent-Skills-compatible harness (Claude Code, Copilot, Amp, …). Prefer doing it by hand? Pick your client below.
MCP server only:
claude mcp add calibre -- npx -y calibre-mcp
Or install the plugin — server and the companion skills in one step, with a settings dialog (server URL, library, write gate) at install time:
/plugin marketplace add caelum29/calibre-mcp
/plugin install calibre-mcp@caelum29
Download the .mcpb bundle from the latest release and open it — Claude Desktop installs it and prompts for settings (server URL, library, writes on/off). No terminal needed.
About the install warning. Claude Desktop shows *“Installing will grant this
extension access to everything on your computer… developer information has not been
verified by Anthropic”* for every extension installed from a file rather than the
built-in directory — it’s not specific to this one. The server runs as a local Node
process under your user account, exactly like the
npxinstall below; the bundle is
built and published by CI from this repository, so you can audit what you’re running.
Click Install to proceed.
The bundle ships without the optional embeddings dependency to stay small, so the two
semantic-search tools report themselves unavailable. Metadata and full-text search work
fully. For semantic search, use the npx install below instead.
Add to claude_desktop_config.json:
{
"mcpServers": { "calibre": { "command": "npx", "args": ["-y", "calibre-mcp"] } } }
Configure the server in Claude Desktop (either method above) — Desktop bridges local MCP servers into Cowork automatically. No extra setup.
The repo's Agent Skills — a guided installer (calibre-mcp-setup), the calibre-mcp usage guide, and the two distill skills — install into any Agent-Skills-compatible harness with the skills.sh installer:
npx skills@latest add caelum29/calibre-mcp
Pick the skills and target agents interactively. Two philosophies, same as mattpocock/skills: skills.sh copies the files into your setup so you can hack on them; the Claude Code plugin (above) keeps them as a managed, auto-updating bundle. Either way the skills drive this MCP server's tools, so install the server too — or let the calibre-mcp-setup skill do it: it walks any agent through preflight, per-client install (macOS/Windows/Linux), and verification.
The server auto-detects your default library; if the Content Server isn’t reachable it logs an actionable hint to stderr. Then try, in order:
Bonus: *“what’s wrong with my library?”* runs the quality audit (missing metadata, raw-filename titles, invalid ISBNs).
Write tools (calibre_update_book, calibre_bulk_update, calibre_add_book, calibre_remove_book, calibre_merge_books, calibre_manage_bundles) are hidden by default — including calibre_manage_bundles' read-only list action, since the gate works per tool, not per action. Two independent switches must be on:
CALIBRE_MCP_ENABLE_WRITE=1 (or tick *Enable writes* in the Desktop bundle settings). Without it the write tools are disabled — hidden from the tool list and uncallable.--enable-local-write: # quit the Calibre GUI first (it holds the library lock), then:
calibre-server --enable-local-write --port 8080 "/path/to/Calibre Library"
Or enable it on the GUI-embedded server without quitting the app: open Calibre → Preferences → Sharing over the net → Advanced and tick “Allow un-authenticated local connections to make changes to the library” (i.e. permit local write access), then restart the Content Server from the GUI. This is the --enable-local-write equivalent for the embedded server.
With only the first switch on, write tools appear but Calibre refuses the write — the error message tells you exactly that. Reads work fine against the GUI-embedded server.
Safety behavior: calibre_bulk_update requires an explicit book selection (ids or query — there is no “all books” default) and previews changes until you pass preview: false. calibre_remove_book is a dry-run until you pass confirm: true; deletion removes records *and* files, permanently. calibre_merge_books shows its full merge plan until you pass confirm: true, and trashed sources stay recoverable from Calibre's trash (mode safe keeps them entirely). calibre_add_book only imports files from whitelisted folders (CALIBRE_MCP_ADD_ROOTS).
Deep dive:
docs/SEMANTIC-SEARCH.md— how indexing, hybrid retrieval, and reranking work.
Meaning-based search is opt-in and needs two things:
@huggingface/transformers is an optionalDependencies entry, so a normal npx calibre-mcp / npm install gets it automatically. (Only the MCPB bundle excludes it.)calibre_build_index for the books you care about (by ids or a Calibre query). The first build downloads the embedding model (multilingual-e5-small, ~118 MB, one-time) into the index directory; after that everything runs offline. Indexing runs at roughly 100 chunks/sec on Apple Silicon.[!IMPORTANT]
**Search results are sharpened by a cross-encoder reranker whose model is a separate
~576 MB one-time download.**
calibre_build_indexpre-downloads it during the build —
the step you already expect to be slow. If you skip straight to searching on a machine
without the cached model, your first hybrid/vector search triggers that download
instead. Reranking also adds seconds of CPU per semantic search; set
CALIBRE_MCP_RERANK=offto disable it (faster, noticeably less precise ranking).
Then calibre_semantic_search answers queries like *“which of my books explain consumer group rebalancing?”* — across the library (scope: library, ranks books) or within one book (scope: book, returns located passages). Retrieval is hybrid by default: vector cosine + stemmed keyword FTS, fused with reciprocal rank fusion, then rer
Only the beginning is shown; read the rest in the repo