ebook-mcp
by onebirdrocks·★ 366·Score 49
A Python MCP server for processing EPUB and PDF files with natural language queries.
Overview
Ebook-MCP is a powerful Model Context Protocol server designed to transform how users interact with digital books. It provides standardized APIs for seamless integration between LLM applications and e-book processing capabilities. The server supports mainstream eBook formats including EPUB and PDF, enabling users to perform tasks like library management, content extraction, and interactive reading through natural language queries.
Try asking AI
After installing, here are 5 things you can ask your AI assistant:
When to choose this
Choose Ebook-MCP when you need to interact with your digital library through natural language and want to extract information from EPUB and PDF files using AI tools.
When NOT to choose this
Avoid this server if you need support for ebook formats other than EPUB and PDF, or if you require advanced OCR capabilities for image-based PDFs.
Tools this server exposes
10 tools extracted from the READMEget_all_epub_filesget_all_epub_files(path: str) -> List[str]Get all EPUB files in the specified directory
get_metadataget_metadata(epub_path: str) -> Dict[str, Union[str, List[str]]]Get metadata from an EPUB file
get_tocget_toc(epub_path: str) -> List[Tuple[str, str]]Get table of contents from an EPUB file
get_chapter_markdownget_chapter_markdown(epub_path: str, chapter_id: str) -> strGet chapter content in Markdown format
get_all_pdf_filesget_all_pdf_files(path: str) -> List[str]Get all PDF files in the specified directory
get_pdf_metadataget_pdf_metadata(pdf_path: str) -> Dict[str, Union[str, List[str]]]Get metadata from a PDF file
get_pdf_tocget_pdf_toc(pdf_path: str) -> List[Tuple[str, int]]Get table of contents from a PDF file
get_pdf_page_textget_pdf_page_text(pdf_path: str, page_number: int) -> strGet plain text content from a specific page
get_pdf_page_markdownget_pdf_page_markdown(pdf_path: str, page_number: int) -> strGet Markdown formatted content from a specific page
get_pdf_chapter_contentget_pdf_chapter_content(pdf_path: str, chapter_title: str) -> Tuple[str, List[int]]Get chapter content and corresponding page numbers by chapter title
Comparable tools
Installation
# Clone the repository
git clone https://github.com/onebirdrocks/ebook-mcp.git
cd ebook-mcp
# Install dependencies using uv
uv pip install -e .
# Start the MCP server in development mode
uv run mcp dev src/ebook_mcp/main.py
# Or start in production mode
uv run src/ebook_mcp/main.pyFor Claude Desktop configuration:
{
"ebook-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/ebook-mcp/src/ebook_mcp/",
"run",
"main.py"
]
}
}FAQ
- What ebook formats does this server support?
- Ebook-MCP currently supports EPUB and PDF formats with features for metadata extraction, table of contents retrieval, and content extraction.
- How do I integrate this MCP server with AI applications?
- The server can be integrated with AI applications through the Model Context Protocol. Installation instructions are provided for Claude Desktop, Cursor, and other MCP-compatible AI tools.
Compare ebook-mcp with
Last updated · Auto-generated from public README + GitHub signals.