# io.github.CloudCorpRecords/bookbind (oci · ghcr.io/cloudcorprecords/bookbind)

EPUB and PDF ebook tools: merge, split, compress, convert, edit metadata, validate and covers.

- Trust score: 36/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- npm · `@reneturcios/bookbind`: 65/100, [markdown](https://verifymcp.io/servers/cloudcorprecords-bookbind/reneturcios-bookbind.md), [page](https://verifymcp.io/servers/cloudcorprecords-bookbind/reneturcios-bookbind)
- oci · `ghcr.io/cloudcorprecords/bookbind`: 36/100 (this document), [markdown](https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind.md), [page](https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind)

## Channel facts

- Registry: `oci`
- Package: `ghcr.io/cloudcorprecords/bookbind`
- Version: `0.1.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 0/100
  - No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.
  - Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.
  - Install-script risk not yet assessed.
  - Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 59/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 2830 tokens (~235/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 93/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 79% of tool parameters carry a description.
- **Tool Safety**: 75/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "merge_epub" implies "merge" and declares no destructiveHint at all, which the MCP spec reads as destructive by default.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the io.github.CloudCorpRecords/bookbind MCP server?

io.github.CloudCorpRecords/bookbind runs locally as a container image, launched with docker run --rm -i ghcr.io/cloudcorprecords/bookbind:0.1.0. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add cloudcorprecords-bookbind -- docker run --rm -i ghcr.io/cloudcorprecords/bookbind:0.1.0
```

### Cursor

```json
{
  "mcpServers": {
    "cloudcorprecords-bookbind": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/cloudcorprecords/bookbind:0.1.0"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "cloudcorprecords-bookbind": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/cloudcorprecords/bookbind:0.1.0"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add cloudcorprecords-bookbind -- docker run --rm -i ghcr.io/cloudcorprecords/bookbind:0.1.0
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cloudcorprecords-bookbind": {
      "type": "local",
      "command": [
        "docker",
        "run",
        "--rm",
        "-i",
        "ghcr.io/cloudcorprecords/bookbind:0.1.0"
      ],
      "enabled": true
    }
  }
}
```

### Hermes

```yaml
mcp_servers:
  cloudcorprecords-bookbind:
    command: "docker"
    args: ["run", "--rm", "-i", "ghcr.io/cloudcorprecords/bookbind:0.1.0"]
```

### Netclaw

```json
{
  "McpServers": {
    "cloudcorprecords-bookbind": {
      "Transport": "stdio",
      "Command": "docker",
      "Arguments": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/cloudcorprecords/bookbind:0.1.0"
      ]
    }
  }
}
```

### Other

```json
{
  "mcpServers": {
    "cloudcorprecords-bookbind": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/cloudcorprecords/bookbind:0.1.0"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 36)

First indexed and scored.

## MCP tools (12)

### `merge_epub` (~256 tokens)

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 operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `author` (string): Author for the merged EPUB (optional)
- `dividers` (boolean): Insert divider pages between books
- `files` (array, required): Array of base64-encoded EPUB files to merge (order preserved)
- `names` (array): 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
- `title` (string): Title for the merged EPUB (optional)

### `split_epub` (~314 tokens)

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 base64-encoded ZIP archive holding one EPUB per 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 operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `chapterEnd` (integer): Last chapter to include (inclusive, optional)
- `chapterStart` (integer): First chapter to include (1-indexed, optional). Giving either bound returns one EPUB of the range instead of a ZIP
- `file` (string, required): Base64-encoded EPUB file content
- `keepMetadata` (boolean): Preserve the original author, publisher and description in the output
- `name` (string): 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_epub` (~233 tokens)

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 operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `file` (string, required): Base64-encoded EPUB file content
- `level` (integer): Compression level (1=fastest, 9=smallest)
- `name` (string): 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
- `stripUnused` (boolean): Remove assets not referenced by any chapter

### `read_epub_metadata` (~163 tokens)

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): 30MB per operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `file` (string, required): Base64-encoded EPUB file content

### `edit_epub_metadata` (~319 tokens)

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): 30MB per operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `author` (string)
- `authors` (string): Comma-separated list of authors
- `cover` (string): Base64-encoded cover image (JPEG or PNG, max 5MB)
- `date` (string)
- `description` (string)
- `file` (string, required): Base64-encoded EPUB file content
- `isbn` (string)
- `language` (string)
- `name` (string): 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
- `publisher` (string)
- `series` (string)
- `seriesPosition` (string)
- `subjects` (string): Comma-separated list of subjects/tags
- `title` (string)

### `epub_to_pdf` (~175 tokens)

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

Input parameters:

- `file` (string, required): Base64-encoded EPUB file content
- `fontFamily` (string)
- `fontSize` (integer): Font size in points
- `margins` (integer): Page margins in points
- `name` (string): 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
- `pageNumbers` (boolean)
- `pageSize` (string)

### `pdf_to_epub` (~196 tokens)

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 illustrated PDFs.
Upgrade at https://epublys.com/pricing

Input parameters:

- `chapterMode` (string): How to split into chapters
- `extractImages` (boolean): Pro only — ignored on free tier
- `file` (string, required): Base64-encoded PDF file content
- `language` (string): Language code for the output EPUB
- `name` (string): 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
- `pagesPerChapter` (integer): Pages per chapter (only for every-n mode)

### `markdown_to_epub` (~230 tokens)

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 pdf-to-epub, 15MB for split), 3 operations/day, 15 req/min, output includes Epublys branding.
Pro ($9/mo): 30MB per operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `author` (string): Author (defaults to frontmatter)
- `files` (array, required): Markdown files, one per chapter, in reading order
- `language` (string)
- `title` (string): Book title (defaults to frontmatter or first heading)

### `docx_to_epub` (~309 tokens)

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 the title and author from the document's properties. No Pandoc, no Calibre.

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 operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `author` (string): Author (defaults to the document author)
- `chapterMode` (string): Where chapters start
- `file` (string, required): Base64-encoded .docx file content
- `language` (string): dc:language of the generated EPUB (BCP 47)
- `name` (string): Original filename — used as the title fallback; the output is named after its stem
- `title` (string): Book title (defaults to the document title, then its first heading)

### `epub_to_markdown` (~255 tokens)

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 vault or any notes pipeline.

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 operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `file` (string, required): Base64-encoded EPUB file content
- `includeImages` (boolean): Copy referenced images into an images/ folder
- `name` (string): 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_epub` (~199 tokens)

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 ($9/mo): 30MB per operation, unlimited daily operations, 60 req/min, no branding.

When a call is refused with daily_limited or a Pro-only error, call the `upgrade_to_pro` tool — it returns a checkout link to hand the user. Details: https://epublys.com/pricing

Input parameters:

- `autoFix` (boolean): Auto-fix common issues and return repaired EPUB
- `deepScan` (boolean): Perform deep scan (XHTML well-formedness, broken links, etc.)
- `file` (string, required): Base64-encoded EPUB file content

### `generate_cover` (~181 tokens)

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 your creative vision.

Pro only ($9/mo). Upgrade at https://epublys.com/pricing

Input parameters:

- `author` (string): Author name (for context, not rendered on cover)
- `description` (string): Creative description of the desired book cover (max 2000 chars). Either description or title is required.
- `genre` (string): Book genre — affects style and composition
- `seed` (integer): Random seed for reproducible generation
- `title` (string): Book title — used to synthesize a cover concept when no description is given (not rendered on cover)

## Diagnostics

Captured diagnostic sections: Provenance. The full working is on the page: https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind#diagnostics

## Score history

- 2026-11-05: 36
- 2026-11-04: 36

## Common questions

### What is the io.github.CloudCorpRecords/bookbind MCP server?

io.github.CloudCorpRecords/bookbind is an MCP server listed in the public MCP registry as io.github.CloudCorpRecords/bookbind. EPUB and PDF ebook tools: merge, split, compress, convert, edit metadata, validate and covers. This page covers its container image (ghcr.io/cloudcorprecords/bookbind).

### Is the io.github.CloudCorpRecords/bookbind MCP server safe to use?

io.github.CloudCorpRecords/bookbind scores 36 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.CloudCorpRecords/bookbind MCP server expose?

io.github.CloudCorpRecords/bookbind exposes 12 tools: merge_epub, split_epub, compress_epub, read_epub_metadata, edit_epub_metadata, and 7 more. Their descriptions and schemas cost roughly 2,830 tokens of context every time the server is loaded.

### Is the io.github.CloudCorpRecords/bookbind MCP server still maintained?

io.github.CloudCorpRecords/bookbind is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the io.github.CloudCorpRecords/bookbind MCP server under?

io.github.CloudCorpRecords/bookbind declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- GitHub Container Registry: https://ghcr.io/cloudcorprecords/bookbind
- Repository: https://github.com/CloudCorpRecords/bookbind
- Changelog RSS feed: https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind.xml
- Changelog JSON feed: https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind.json
- HTML version of this page: https://verifymcp.io/servers/cloudcorprecords-bookbind/ghcr-io-cloudcorprecords-bookbind
