/ Annuaire / Playground / ebook-mcp
● Communauté onebirdrocks ⚡ Instantané

ebook-mcp

par onebirdrocks · onebirdrocks/ebook-mcp

Point Claude at your EPUB and PDF library — get metadata, TOC, and chapter content in structured form so the model can quote and summarize precisely.

ebook-mcp wraps Python's common EPUB/PDF libs into MCP tools. Unlike generic 'read a file', it exposes table of contents and chapter boundaries, so Claude can fetch just the chapter you're asking about instead of dumping 500 pages into context.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

ebook.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ebook": {
      "command": "uvx",
      "args": [
        "ebook-mcp"
      ],
      "_inferred": true
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "ebook": {
      "command": "uvx",
      "args": [
        "ebook-mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "ebook": {
      "command": "uvx",
      "args": [
        "ebook-mcp"
      ],
      "_inferred": true
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ebook": {
      "command": "uvx",
      "args": [
        "ebook-mcp"
      ],
      "_inferred": true
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "ebook",
      "command": "uvx",
      "args": [
        "ebook-mcp"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "ebook": {
      "command": {
        "path": "uvx",
        "args": [
          "ebook-mcp"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add ebook -- uvx ebook-mcp

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : ebook-mcp

Find and quote a passage you vaguely remember

👤 Readers / researchers ⏱ ~5 min beginner

Quand l'utiliser : 'There was something in that book about X...' — you need the exact quote and can't be bothered to flip pages.

Prérequis
  • The book file on disk — EPUB or PDF
Déroulement
  1. Load TOC
    Show me the TOC of ~/Books/deep-work.epub. Which chapter likely discusses shallow work vs deep work?✓ Copié
    → TOC + best-guess chapter
  2. Pull the chapter
    Get the text of chapter 3. Find the passage about shallow-work-as-default.✓ Copié
    → Quoted passage

Résultat : Quote in hand, citable, in 2 minutes.

Pièges
  • Scanned PDFs have no text layer — Run OCR first

Generate a chapter-by-chapter summary of a technical book

👤 Engineers learning from a book on their TBR ⏱ ~30 min intermediate

Quand l'utiliser : You want to decide whether to actually read a book, or need a refresher after finishing.

Déroulement
  1. TOC first
    Load TOC of book.pdf. Show me chapter titles and approximate page ranges.✓ Copié
    → Outline
  2. Per-chapter summary
    For each chapter, load its content and produce a 3-bullet summary. Output as a single Markdown doc.✓ Copié
    → Complete book digest

Résultat : A 1-2 page book digest you can share or revisit.

Pièges
  • Huge books blow the token budget if you load all chapters at once — Process one chapter at a time; write intermediate summaries to disk
Combiner avec : filesystem

Audit your ebook library's metadata

👤 Calibre users, ebook hoarders ⏱ ~15 min beginner

Quand l'utiliser : Your library has 500 ebooks and you want to find ones with missing title/author metadata.

Déroulement
  1. Scan
    For each .epub under ~/Books, get metadata. List any where title or author is missing or contains 'Unknown'.✓ Copié
    → Incomplete-metadata list

Résultat : Quick metadata hygiene pass.

Combiner avec : filesystem

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

ebook + local-rag

Build a searchable library index

For each book, get_chapter by chapter, ingest into local-rag with book title as source.✓ Copié
ebook + notion

Auto-populate your reading journal

Take this just-finished book; summarize each chapter; create a Notion page in 'Books Read'.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
get_metadata path: str First pass on any book free
get_toc path: str Before pulling chapter content free
get_chapter path, chapter_id or id_range Load a specific chapter free
get_pages path, from_page, to_page (PDF only) Page-range extraction for PDFs free

Coût et limites

Coût d'exécution

Quota d'API
None
Tokens par appel
Chapters 2k-30k tokens depending on length
Monétaire
Free (Apache 2.0)
Astuce
Always load TOC first. Then load chapters one at a time rather than the whole book.

Sécurité

Permissions, secrets, portée

Stockage des identifiants : None — local files only
Sortie de données : Book content goes to your LLM provider

Dépannage

Erreurs courantes et correctifs

Unable to parse PDF

Scanned/image-only PDF has no text layer. Run ocrmypdf first.

Vérifier : pdftotext input.pdf - | head
EPUB chapter ID not found

IDs come from the TOC exactly. Call get_toc first.

Large PDF makes get_chapter timeout

Use get_pages with a smaller page range; batch.

Alternatives

ebook-mcp vs autres

AlternativeQuand l'utiliserCompromis
Calibre + custom scriptYou want full Calibre integrationMore setup; no MCP wrapper
pdfplumber / pymupdf directlyYou build your own toolingBuild your own MCP wrapper

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills