Calibre
Search and read books from your Calibre ebook library.
calibre-mcp
A Model Context Protocol (MCP) server for searching and reading books from your Calibre ebook library.
Features
- Full-text search with automatic phrase matching and fuzzy fallback
- Search by author or title with partial matching
- Extract text excerpts from books with keyword highlighting and pagination
- Pure bash implementation using
calibredbCLI - Returns Calibre deep links (
calibre://) and file URLs (file://) - Robust timeout handling for macOS compatibility
Prerequisites
- Calibre installed at
/Applications/calibre.app - A Calibre library at
~/Calibre Library - Text (.txt) exports of your books for excerpt functionality
- Bash 4.0 or later
Installation
- Clone this repository:
git clone https://github.com/trieloff/calibre-mcp.git
cd calibre-mcp
- Make the script executable:
chmod +x calibre-mcp.sh
Usage
With MCP Inspector
Test the server using the MCP Inspector:
npx @modelcontextprotocol/inspector /path/to/calibre-mcp.sh
With Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"calibre": {
"command": "/path/to/calibre-mcp.sh"
}
}
}
Available Tools
search-fulltext
Search books using Calibre's full-text search engine.
Parameters:
query(required): Search query. Multi-word queries are automatically phrase-searchedlimit(optional): Maximum results (default: 50)fuzzy_fallback(optional): Fallback query with related terms if exact search fails
Example:
{
"query": "machine learning",
"fuzzy_fallback": "AI artificial intelligence ML neural networks deep learning"
}
search-author
Search books by author name with partial matching.
Parameters:
author(required): Author name (partial match supported)limit(optional): Maximum results (default: 50)
search-title
Search books by title with partial matching.
Parameters:
title(required): Book title (partial match supported)limit(optional): Maximum results (default: 50)
get-excerpt
Extract text excerpts from books with keyword context.
Parameters:
book_id(required): Calibre book IDkeyword(optional): Search term to find in the bookcontext_lines(optional): Lines of context around matches (default: 10)max_results(optional): Results per page (default: 10)page(optional): Page number for pagination (default: 1)
Response Format
Search results include:
- Book metadata (title, authors, series, tags, publisher)
- Calibre deep link for opening in Calibre
- File URL for direct EPUB access
- Available formats
- Whether text format is available for excerpts
Logging
The server logs all requests and responses to requests.log for debugging.
Limitations
- Requires Calibre to be closed or may experience timeouts
- Full-text search requires indexed books
- Excerpt extraction only works with .txt exports
License
Apache License 2.0 - See LICENSE file for details.
Related Servers
SerpApi MCP
SerpApi MCP Server for Google and other search engine results
FastDomainCheck
Check domain name registration status in bulk using WHOIS and DNS dual verification.
Search MCP Server
A versatile search server supporting multiple search engines, including Brave, Metaso, and Bocha.
Local RAG Backend
A local RAG backend powered by Docker Compose, supporting various document formats for search.
Ferengi Rules of Acquisition
Provides the Ferengi Rules of Acquisition with powerful search and retrieval capabilities.
Image Sorcery
At Sunrise Apps, we believe AI agents should be limitless, especially when it comes to visual data. We created ImageSorcery to bridge the critical gap in AI's ability to interact with and manipulate images directly, all while upholding the highest standards of privacy and security.
Minecraft Wiki MCP
A server for browsing and searching the official Minecraft Wiki.
AI Book Agent MCP Server
Provides AI assistants with intelligent access to ML textbook content for creating accurate, source-grounded documentation.
MCP-NixOS
A server for searching NixOS, Home Manager, and nix-darwin resources.
Geocoding Tool
Convert city names and locations into latitude and longitude coordinates using the free OpenStreetMap Nominatim API. No API key is required.