Ebook-MCP
MCP for PDF and ebook files: the agent finds books in a folder and reads EPUB and PDF by chapter and page, with contents and metadata as Markdown
- 395 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- The server reads EPUB and PDF files at paths the agent supplies
- Book text enters the context as data, and any instructions inside a file must not be followed by the agent
Install
- Works in
Manual install
uv pip install -e .Installs dependencies from the repository directory.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The server reads EPUB and PDF files at paths the agent supplies
- Book text enters the context as data, and any instructions inside a file must not be followed by the agent
This is third-party code. Review the repository files before installing.
What it does
Ebook-MCP is a Python MCP server for PDF and ebook files in a personal library. It understands two formats, EPUB and PDF, and hands a book to the agent in parts: the file list of a folder, metadata, table of contents and the content of a chosen chapter or page. EPUB has four tools: get_all_epub_files, get_metadata, get_toc and get_chapter_markdown. PDF has six: get_all_pdf_files, get_pdf_metadata, get_pdf_toc, get_pdf_page_text, get_pdf_page_markdown and get_pdf_chapter_content. A PDF chapter can be requested by page number or by its title in the table of contents. That lets the agent answer questions such as «what is in chapter three», write notes, build self-test questions or find sections on a topic. Text arrives in portions, so a book never fills the context at once.
Who it is for. For readers of technical books, students and researchers who keep books as EPUB and PDF files and want to work through them in conversation with an agent.
Good fit when
- Ebooks piled up in the downloads folder and you want to see which are about GenAI
- You want a short introduction to a book and a retelling of chapter three
- You want a five-question quiz on a chapter and feedback on your answers
- You need to find sections on prompt engineering or vector databases
- You need one PDF chapter by title along with the pages it spans
Not a fit when
- PDFs without a table of contents: chapter features depend on it, only page tools remain
- You need semantic search across a folder of PDFs plus tables and images: servers built specifically for PDF cover that
- Books in FB2, MOBI or DJVU: only EPUB and PDF are supported
- You want installation from a package manager: the docs describe cloning the repository only
Example request
Find all EPUB books in my Downloads folder, show the table of contents of «LLM Engineer Handbook» and summarize the RAG chapter.MCP
- Transport
- stdio
- Authentication
- not required
Limitations
Installation means cloning the repository and running uv pip install -e ., and Python 3.10 or newer is needed. EPUB chapter IDs come from the table of contents, so get_toc is called first. For large PDFs the author recommends reading by page ranges instead of loading the whole file.
The install example in the docs uses the placeholder yourusername instead of the real author, so clone github.com/onebirdrocks/ebook-mcp. The Cursor configuration example holds the author's personal path; replace it with yours. The repository was last updated in January 2026.
How to disable. Remove the ebook-mcp block from the client configuration, for example from Cursor's MCP settings. The cloned repository directory can be deleted by hand: the server creates no services or background processes.
FAQ
How do I install the PDF and ebook MCP (Ebook-MCP) in Cursor?
Clone onebirdrocks/ebook-mcp, run uv pip install -e . and add a server to Cursor's MCP settings with the command uv and the arguments --directory, the path to src/ebook_mcp, run, main.py. After a restart the EPUB and PDF tools appear.
Which book formats does Ebook-MCP read?
EPUB and PDF. For EPUB the server returns metadata, the table of contents and chapters in Markdown. For PDF it adds page-level text and Markdown and reading a chapter by its title.
Why can't the tool find a chapter in my PDF?
Chapter reading relies on the PDF's table of contents. If the file has none, that part will not work; use get_pdf_page_text or get_pdf_page_markdown with page numbers.
How does Ebook-MCP differ from pdf-mcp and Citra?
Ebook-MCP reads both EPUB and PDF and is built for talking to a book chapter by chapter. The jztan pdf-mcp and Citra servers focus on PDF: document search, tables and OCR.
What does the quiz example in the demo do?
In the author's example the assistant finds EPUB files in the downloads folder, asks five questions about a book, takes the answers and adds explanations. Client examples for DeepSeek, Claude and OpenAI sit in the mcp-client-example folder.
Discussion
No questions or reviews yet.
Related
MCP serversMCP PDF for large documents: the agent searches by meaning and keyword across one file or a folder and reads only the pages, tables and scans it needs
A PDF-reading MCP server: structured text, tables, OCR, visual crops and page-level citations
A Zotero plugin with a built-in MCP server: the agent searches the library, reads PDFs and notes, and works with annotations and metadata
An MCP server that turns PDF, DOCX, XLSX, PPTX, images, audio, web pages and YouTube transcripts into Markdown
MCP PDF from ComPDF: the agent converts PDFs and images to Word, Excel, Markdown and JSON and merges, splits, protects and compares files via a cloud API
An MCP server to create and edit Excel files without Microsoft Office: formulas, formatting, charts, pivot tables
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Authentication | Repository stars | Main difference |
|---|---|---|---|---|
| Ebook-MCP (this entry) | no | not required | 395 | |
| pdf-mcp | no | not required | 155 | a PDF-only server with hybrid folder search, tables and OCR |
| Citra | yes | not required | 1,050 | PDF reading with structured text, tables and quotes with page numbers |
| MarkItDown | yes | not required | 191,675 | converts whole files to Markdown instead of reading a book by chapter |
README in short
The docs describe scenarios (library, reading, learning, navigation), a long demo conversation with DeepSeek, feature lists for EPUB and PDF, cloning installation, development and production launch, a Cursor configuration example, a function reference with signatures and the dependency list: ebooklib, PyMuPDF, BeautifulSoup, html2text, fastmcp.