calibre-manager
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CALIBREDB_PATH | No | Path to calibredb (defaults to looking it up on PATH). | |
| CALIBRE_PASSWORD | No | Password for Content Server authentication. | |
| CALIBRE_USERNAME | No | Username for Content Server authentication. | |
| EBOOK_CONVERT_PATH | No | Path to ebook-convert. | |
| CALIBRE_LIBRARY_PATH | No | Path to the library, or Content Server URL. If omitted, the default. | |
| FETCH_EBOOK_METADATA_PATH | No | Path to fetch-ebook-metadata. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_checkA | Checks that calibredb is reachable and the library responds. Use it first to diagnose the configuration (calibredb path, library, etc.). |
| search_booksA | Searches books using Calibre's search syntax and returns JSON. Example queries: 'tag:Philosophy and author:Plato', 'series:"Classics"', 'title:Republic', 'pubdate:>2010'. Leave query empty to list (use limit). |
| get_book_metadataB | Returns ALL metadata for a book by its id (JSON). |
| list_categoriesA | Lists the values of a category with their book counts, as CSV. category accepts: tags, authors, series, publisher, languages, formats, rating, identifiers. |
| library_statsA | Library summary: total number of books and a breakdown by category (tags, authors, series, formats). |
| set_metadataA | Sets (REPLACES) a book's metadata. 'fields' is an object of field:value pairs. Fields: title, title_sort, authors (multiple with ' & '), author_sort ('Last, First'), tags (comma-separated), series, series_index, publisher, pubdate ('2020-01-01'), languages ('eng'/'spa'), rating (0–10, where 10 = 5 stars), comments (HTML allowed), identifiers ('isbn:9788491050000'), cover (path to an image). NOTE: it replaces the whole field value; to keep the other tags use add_tags/remove_tags. |
| add_tagsA | Adds tags to a book WITHOUT removing the existing ones. Multiple tags comma-separated. |
| remove_tagsC | Removes specific tags from a book, keeping the rest. |
| rename_tagA | Renames a tag across the WHOLE library (on every book that has it). |
| bulk_set_metadataA | Applies the same metadata to ALL books matching a search. Useful for organizing in bulk (e.g. setting a series or publisher on a group). 'query' uses Calibre syntax; 'fields' works like set_metadata (replaces the field). To add tags in bulk without removing, call add_tags per book. |
| add_bookA | Adds a file (EPUB/PDF/MOBI/AZW3...) to the library. Returns the new id. automerge (optional): 'ignore' | 'overwrite' | 'new_record' to handle duplicates. identifiers e.g. 'isbn:9788491050000'. |
| remove_booksA | Removes books from the library by id (comma-separated). DESTRUCTIVE: requires confirm=true. permanent=true skips Calibre's recycle bin. |
| convert_bookA | Converts a book to another format and ADDS that format to the same library book (does not create a new book). Ideal for generating AZW3 for Kindle. If you don't pass source_format, it picks the best available (epub > azw3 > mobi > fb2 > pdf). |
| export_booksB | Exports books to a folder on disk (e.g. to copy them to a Kindle). book_ids comma-separated or 'all'. formats optional, e.g. 'azw3,epub'. |
| find_duplicatesA | Detects likely duplicates by grouping on normalized (title, author). Returns the groups with more than one book. |
| find_books_missing_metadataA | Lists books that are missing a specific metadata field. missing accepts: tags, comments, series, publisher, cover, identifiers, languages, pubdate. |
| fetch_online_metadataA | Looks up metadata from online sources (Google Books, etc.) by title/author or ISBN and returns an OPF. If you pass apply_to_book_id, it applies that metadata (and optionally the cover) to that book in your library. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ericknavarro/calibre-manager-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server