takyon236 avatar

Epublys

takyon236/epublys-mcp

Reach for this when you need to manipulate ebooks programmatically without spinning up your own PDF or EPUB processing pipeline. It exposes operations for merging multiple files, splitting them apart, compression, format conversion between EPUB and PDF, metadata editing, and validation. The streamable HTTP transport means you can call these operations remotely without installing native dependencies. Useful for workflows like batch converting research papers to EPUB, cleaning up metadata across a collection, or validating ebook files before distribution. Saves you from wrestling with libraries like pypdf or ebooklib directly.

tools
13
auth
Required
transport
HTTP
last updated
Jun 10, 2026

Install

From registry metadata
$ npx add-mcp https://epublys.com/mcp --name epublys --header 'Authorization: Bearer ${API_TOKEN}'

Run in your terminal. add-mcp asks which agents to add it to, then asks for each value it needs. Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http epublys https://epublys.com/mcp --header 'Authorization: Bearer <YOUR_API_KEY>'

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 13 tools

Verified live against the running server on Nov 6, 2026.

merge_epubMerge multiple EPUB files into a single ebook with table of contents and chapter dividers. Accepts 2+ base64-encoded EPUB files. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo): 30MB per op...5 params

Merge multiple EPUB files into a single ebook with table of contents and chapter dividers. Accepts 2+ base64-encoded EPUB files. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo): 30MB per op...

Parameters* required
authorstring
Author for the merged EPUB (optional)
dividersboolean
Insert divider pages between booksdefault: true
files*array
Array of base64-encoded EPUB files to merge (order preserved)
namesarray
Original filenames, in the same order as files — the output is named after them ("A + B.epub", or "A + N more.epub" past two); without them it is merged.epub
titlestring
Title for the merged EPUB (optional)
split_epubSplit an EPUB. With a chapter range (chapterStart and/or chapterEnd) the result is ONE base64-encoded EPUB of exactly those chapters, in order, with the book's metadata, a table of contents limited to them and the fonts and images they use. Without a range the result is a base...5 params

Split an EPUB. With a chapter range (chapterStart and/or chapterEnd) the result is ONE base64-encoded EPUB of exactly those chapters, in order, with the book's metadata, a table of contents limited to them and the fonts and images they use. Without a range the result is a base...

Parameters* required
chapterEndinteger
Last chapter to include (inclusive, optional)
chapterStartinteger
First chapter to include (1-indexed, optional). Giving either bound returns one EPUB of the range instead of a ZIP
file*string
Base64-encoded EPUB file content
keepMetadataboolean
Preserve the original author, publisher and description in the outputdefault: true
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
compress_epubCompress an EPUB file to reduce its size. Can optionally strip unused assets (images, fonts not referenced by any chapter). Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo): 30MB per operati...4 params

Compress an EPUB file to reduce its size. Can optionally strip unused assets (images, fonts not referenced by any chapter). Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo): 30MB per operati...

Parameters* required
file*string
Base64-encoded EPUB file content
levelinteger
Compression level (1=fastest, 9=smallest)default: 6
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
stripUnusedboolean
Remove assets not referenced by any chapterdefault: false
read_epub_metadataRead metadata from an EPUB file (title, author, language, publisher, description, series, cover status, etc.). Returns JSON — no file output. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo)...1 params

Read metadata from an EPUB file (title, author, language, publisher, description, series, cover status, etc.). Returns JSON — no file output. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo)...

Parameters* required
file*string
Base64-encoded EPUB file content
edit_epub_metadataEdit metadata fields in an EPUB file (title, author, language, publisher, description, series, cover image, etc.). Returns the modified EPUB. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo)...14 params

Edit metadata fields in an EPUB file (title, author, language, publisher, description, series, cover image, etc.). Returns the modified EPUB. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro ($9/mo)...

Parameters* required
authorstring
authorsstring
Comma-separated list of authors
coverstring
Base64-encoded cover image (JPEG or PNG, max 5MB)
datestring
descriptionstring
file*string
Base64-encoded EPUB file content
isbnstring
languagestring
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
publisherstring
seriesstring
seriesPositionstring
subjectsstring
Comma-separated list of subjects/tags
titlestring
epub_to_pdfConvert an EPUB ebook to PDF. Supports page size, margins, font, and page number options. Pro ($9/mo) is strongly recommended for PDF conversion — the 30MB limit handles illustrated or academic books that exceed the free 5MB cap. Upgrade at https://epublys.com/pricing7 params

Convert an EPUB ebook to PDF. Supports page size, margins, font, and page number options. Pro ($9/mo) is strongly recommended for PDF conversion — the 30MB limit handles illustrated or academic books that exceed the free 5MB cap. Upgrade at https://epublys.com/pricing

Parameters* required
file*string
Base64-encoded EPUB file content
fontFamilystring
one of serif · sansdefault: serif
fontSizeinteger
Font size in pointsdefault: 11
marginsinteger
Page margins in pointsdefault: 60
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
pageNumbersboolean
default: true
pageSizestring
one of a4 · letterdefault: a4
pdf_to_epubConvert a PDF document to EPUB ebook format. Supports automatic chapter detection, image extraction (Pro), and custom chapter grouping. Free tier supports up to 10MB per PDF. Pro ($9/mo) is strongly recommended for PDF conversion — the 30MB limit handles most scanned or illust...6 params

Convert a PDF document to EPUB ebook format. Supports automatic chapter detection, image extraction (Pro), and custom chapter grouping. Free tier supports up to 10MB per PDF. Pro ($9/mo) is strongly recommended for PDF conversion — the 30MB limit handles most scanned or illust...

Parameters* required
chapterModestring
How to split into chaptersone of auto · every-n · singledefault: auto
extractImagesboolean
Pro only — ignored on free tierdefault: true
file*string
Base64-encoded PDF file content
languagestring
Language code for the output EPUBdefault: en
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
pagesPerChapterinteger
Pages per chapter (only for every-n mode)default: 10
markdown_to_epubBuild a valid EPUB3 ebook from Markdown files — one file per chapter, in array order. Understands YAML frontmatter (title/author) and Obsidian [[wikilinks]]; cross-file .md links are rewritten to chapter links inside the book. No Pandoc required. Free tier: 5MB/file (10MB for...4 params

Build a valid EPUB3 ebook from Markdown files — one file per chapter, in array order. Understands YAML frontmatter (title/author) and Obsidian [[wikilinks]]; cross-file .md links are rewritten to chapter links inside the book. No Pandoc required. Free tier: 5MB/file (10MB for...

Parameters* required
authorstring
Author (defaults to frontmatter)
files*array
Markdown files, one per chapter, in reading order
languagestring
default: en
titlestring
Book title (defaults to frontmatter or first heading)
docx_to_epubConvert a Word document (.docx) to a valid EPUB3 ebook. Chapters split on the document's top heading level (Heading 1 in a normal manuscript), or on page breaks, or not at all. Keeps bold/italic, lists, tables, inline images (PNG/JPEG/GIF/WebP), hyperlinks and footnotes; reads...6 params

Convert a Word document (.docx) to a valid EPUB3 ebook. Chapters split on the document's top heading level (Heading 1 in a normal manuscript), or on page breaks, or not at all. Keeps bold/italic, lists, tables, inline images (PNG/JPEG/GIF/WebP), hyperlinks and footnotes; reads...

Parameters* required
authorstring
Author (defaults to the document author)
chapterModestring
Where chapters startone of headings · page-breaks · singledefault: headings
file*string
Base64-encoded .docx file content
languagestring
dc:language of the generated EPUB (BCP 47)default: en
namestring
Original filename — used as the title fallback; the output is named after its stem
titlestring
Book title (defaults to the document title, then its first heading)
epub_to_markdownConvert an EPUB ebook to Markdown. Returns a ZIP with one Markdown file per chapter (YAML frontmatter with title/book/author/chapter), an index.md with book metadata and a linked table of contents, and the referenced images. Plain CommonMark — drops straight into an Obsidian v...3 params

Convert an EPUB ebook to Markdown. Returns a ZIP with one Markdown file per chapter (YAML frontmatter with title/book/author/chapter), an index.md with book metadata and a linked table of contents, and the referenced images. Plain CommonMark — drops straight into an Obsidian v...

Parameters* required
file*string
Base64-encoded EPUB file content
includeImagesboolean
Copy referenced images into an images/ folderdefault: true
namestring
Original filename — the output is named after its stem (e.g. "Book.epub" gives "Book (compressed).epub"); without it the output keeps a fixed name
validate_epubValidate an EPUB file for errors, compatibility issues, and spec compliance. Returns JSON with check results. Can optionally auto-fix common issues. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro...3 params

Validate an EPUB file for errors, compatibility issues, and spec compliance. Returns JSON with check results. Can optionally auto-fix common issues. Free tier: 5MB/file (10MB for pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding. Pro...

Parameters* required
autoFixboolean
Auto-fix common issues and return repaired EPUBdefault: false
deepScanboolean
Perform deep scan (XHTML well-formedness, broken links, etc.)default: true
file*string
Base64-encoded EPUB file content
generate_coverGenerate an AI book cover image using FLUX. Describe your vision, pick a genre, and get a portrait JPEG cover — 768×1152 when the model honours the requested size, otherwise its default square. The AI enhances your prompt with professional composition guidance while preserving...5 params

Generate an AI book cover image using FLUX. Describe your vision, pick a genre, and get a portrait JPEG cover — 768×1152 when the model honours the requested size, otherwise its default square. The AI enhances your prompt with professional composition guidance while preserving...

Parameters* required
authorstring
Author name (for context, not rendered on cover)
descriptionstring
Creative description of the desired book cover (max 2000 chars). Either description or title is required.
genrestring
Book genre — affects style and compositionone of fantasy · romance · thriller · sci-fi · literary · non-fiction
seedinteger
Random seed for reproducible generation
titlestring
Book title — used to synthesize a cover concept when no description is given (not rendered on cover)
upgrade_to_proGet a checkout link so the user can upgrade THIS account to Epublys Pro. Call this when another tool is refused with `daily_limited` or a Pro-only error, or when the user asks to upgrade. Returns a Stripe checkout URL to hand to the user — they complete payment in their own br...1 params

Get a checkout link so the user can upgrade THIS account to Epublys Pro. Call this when another tool is refused with `daily_limited` or a Pro-only error, or when the user asks to upgrade. Returns a Stripe checkout URL to hand to the user — they complete payment in their own br...

Parameters* required
planstring
monthly is $9/month; yearly is $72/year (4 months free, 33% off). Defaults to monthly.one of monthly · yearlydefault: monthly

Sponsors

Readme

Epublys MCP Server

Remote MCP server for EPUB and PDF ebook manipulation — merge, split, compress, convert, edit metadata, validate, and generate AI covers. Backed by epublys.com, running on Cloudflare Workers.

This is a hosted server (Streamable HTTP). There is nothing to install — this repository holds the public manifests, configuration examples, and documentation.

Quickstart

Without a key (free tier)

Claude Code:

claude mcp add --transport http epublys https://epublys.com/mcp

Any other MCP client (claude_desktop_config.json, cline_mcp_settings.json, etc.):


View the full README on GitHub

Details

Repository
github.com/takyon236/epublys-mcp
Website
epublys.com
Category
Documents & Knowledge
Transport
HTTP
Auth
Required
Registry
MCP registry, active
Tools verified
Nov 6, 2026

Related Documents & Knowledge MCP servers

View all
1hellobasestation avatarPDF Kitcom.hellobasestation/pdfkitAI-powered PDF tools: fill forms via natural language0stars
2kogcat avatarKogcat Mcpkogcat/cc-kogcatLocal-first judgment layer: counter-examples & blind spots from your own knowledge base.0stars
3laddro-app avatarLaddro Careerladdro-app/laddro-career-mcpTailor resumes, generate cover letters, render CVs as PDF, and browse 22+ templates.0stars
4steamdiesel avatarmd2signsteamdiesel/md2sign-claude-pluginSend markdown contracts for legally binding e-signatures. Draft, preview, send and track signing.0stars
5meetdewey avatarDeweymeetdewey/mcpAgentic search over your Dewey document collections from any MCP-compatible client.0stars
6pdfvera avatarpdfverapdfvera/pdfvera-mcpPDF invoices to XRechnung/ZUGFeRD; Brazilian bank statement PDFs to OFX, CSV and Excel.0stars