- Home
- MCP servers
- Ebook-MCP
Ebook-MCP
- python
142
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"onebirdrocks-ebook-mcp": {
"command": "uv",
"args": [
"run",
"src/ebook_mcp/main.py"
]
}
}
}Ebook-MCP is a dedicated MCP server that processes EPUB and PDF books, exposing structured, chat-friendly APIs so you can query metadata, navigation, and content from your digital library using natural language or AI-assisted tools.
How to use
To use Ebook-MCP, connect your MCP client or IDE to the local server and start a session focused on your e-book collection. You can ask for metadata like titles and authors, retrieve the table of contents, jump to specific chapters, or extract chapters in Markdown for analysis, study, or quiz creation. The server is designed to support interactive reading, smart library management, and active learning workflows by converting your book content into easily consumable data for your LLMs.
How to install
Prerequisites: you need Python installed and the MCP runtime available in your environment. You also require access to the local file system where your EPUB and PDF books reside.
-
Install the MCP runtime if you haven’t already. You will typically use the MCP runtime to start JavaScript/TypeScript or Python-based servers from a single command. Make sure the runtime is available on your PATH.
-
Run Ebook-MCP in development or production mode via the MCP runner. In development mode, you start the server with the following command, which connects to the Ebook-MCP main script.
uv run mcp dev src/ebook_mcp/main.py
In production mode, start the server using the standard start command.
uv run src/ebook_mcp/main.py
Optionally, you can verify the server is accessible in a browser or with your MCP client at the local URL printed by the startup process (commonly http://localhost:5173/ for testing and debugging). If you also install an inspector, you can test interactions directly from the MCP client with an integrated tool.”
Configuration and usage notes
If you use a client like Cursor, you can configure an MCP entry to run Ebook-MCP as a local service by providing the startup command and arguments. For example, you would configure the runtime to execute the server script via the MCP runner, pointing to the Ebook-MCP source path and main module.
Environment variables are optional unless your setup requires specific paths or authentication. If you have environment-specific needs, you can add them to your MCP config to ensure the server runs predictably in your environment.
Example commands and configuration
// Start Ebook-MCP with the standard MCP runtime
uv run src/ebook_mcp/main.py
// Cursor integration example (local stdio configuration)
"ebook_mcp":{
"command": "uv",
"args": ["run", "src/ebook_mcp/main.py"]
}
Available tools
get_all_epub_files
Get all EPUB files in the specified directory.
get_metadata
Extract metadata from an EPUB file.
get_toc
Retrieve the table of contents from an EPUB.
get_chapter_markdown
Get specific chapter content in Markdown format from an EPUB.
get_all_pdf_files
Get all PDF files in the specified directory.
get_pdf_metadata
Extract metadata from a PDF file.
get_pdf_toc
Retrieve the table of contents from a PDF.
get_pdf_page_text
Extract plain text from a specific PDF page.
get_pdf_page_markdown
Extract Markdown-formatted content from a specific PDF page.
get_pdf_chapter_content
Get chapter content and corresponding page numbers from a PDF chapter title.