Ebook File Check
Guest access is available after setup. Full account linking verified by PowMCP: Claude only.
Use in your browser
Run EPUBCheck on a public EPUB URL or a file you upload: pass or fail, exact rule ids, and file locations. Compare two builds of one book to see what changed.
Guest includes 50 lifetime app requests. Create a free account for 100 app requests each calendar month. One allowance across every app, in your browser and your agent.One allowance across every app, in your browser and your agent. Manage usage
Guest access is available after setup. Full account linking verified by PowMCP: Claude only.
Connect this app on its own. Add other PowMCP apps whenever your agent needs another job done.
Open the apps workspace
Choose your agent. Each button opens a new tab with only this app's endpoint ready to add.
Copy one ready-to-send prompt for any agent that supports remote MCP connections.
For clients that require manual configuration, use this app-only endpoint, its JSON entry, or one terminal command.
ChatGPT: enable Developer mode in Settings → Security and login, then add this MCP endpoint from the Plugins page. Availability depends on your account and workspace policy. PowMCP has not yet verified ChatGPT account linking. OpenAI setup guide
https://powmcp.com/epub-check/mcp {
"mcpServers": {
"powmcp-epub-check": {
"type": "http",
"url": "https://powmcp.com/epub-check/mcp"
}
}
}Terminal agents add this app with one command:
claude mcp add --transport http powmcp-epub-check https://powmcp.com/epub-check/mcpcodex mcp add powmcp-epub-check --url https://powmcp.com/epub-check/mcpgemini mcp add --transport http powmcp-epub-check https://powmcp.com/epub-check/mcpManage, disable, or remove this connection in your agent's own MCP settings. PowMCP does not label an external connection as installed without confirmation from that client.
Proof
Check an EPUB against the spec before upload
Check one EPUB from a public URL or chat attachment for EPUB 2/3 specification problems using EPUBCheck, with exact rule IDs and file locations, or compare two builds under identical limits. This is specification preflight before upload, not a prediction of bookstore acceptance. Accessibility and how the book looks and reads require separate review.
Request cost1 completed result
Guests get 50 lifetime app requests. Free accounts get 100 each calendar month.
ebook_check
Validates one EPUB (a directly hosted public URL or a file attached in chat) against the EPUB 2/3 specification using a pinned local EPUBCheck 5.3.0 engine run in a no-network sandbox. Each call takes exactly one source: the url parameter or the file attachment, never both. Returns the automated verdict: pass boolean, EPUB version, message counts by severity (fatal/error/warning/usage), findings grouped most-severe-first with EPUBCheck rule id (RSC-005, OPF-014, …), file path and line/column, plus a structural inventory (spine items, media types, remote-resource state), SHA-256 of the exact bytes, and truncation metadata. Use for one-file readiness and diagnosis: 'is this ebook valid', 'does this EPUB have specification problems before upload', 'what is wrong with it'. A pass means only that the bytes satisfied the automated profile; it never renders the book, judges accessibility, or guarantees any store will accept it, and human review of how the book reads and looks is always required. Downloads and validates a live EPUB under a 110-second call deadline; tell the user before the call.
ebook_compare
Runs the identical pinned EPUBCheck 5.3.0 validation over exactly two EPUB builds (directly hosted public URLs or files attached in chat, baseline first, revised second) sequentially under one shared 110-second deadline, then reports which spec findings regressed or were fixed between them. Returns per-build hashes, EPUB versions, pass verdicts and severity counts, a regressions list (rules that appear or worsen in the revised build) and a fixed list (rules removed or reduced), and a ranking by pass state then fewer blocking findings. Use for 'did my re-export get worse', 'which build has fewer problems', and revision-over-revision questions. The ranking orders automated conformance only (it never means one build renders, reads, or sells better), and when both builds tie on pass state and blocking count it names no winner rather than crowning the first submission. It also flags when the two files declare different titles, since that usually means they are not two builds of one book. Human review remains required for both builds. A comparison can take up to 110 seconds under its shared deadline; tell the user before the call.
Other apps for the jobs next to Ebook File Check.
Scope and boundaries for Ebook File Check.
Validate the IDPF children's-literature EPUB sample with up to 200 messages, or compare the two Voyage of Life sample builds as baseline and revision to see whether a re-export changed spec findings.
Read pass and the fatal and error counts first: pass means pinned EPUBCheck reported no blocking finding, although warnings and usage messages may remain. Fix the first fatal or error at its internal path and line, rerun, then inspect warnings and test the book in reading systems. An undetected EPUB version or truncated findings makes the diagnosis incomplete; equal pass state and blocking counts support no comparison winner.
A pass means the submitted bytes satisfied the pinned automated EPUBCheck profile. It does not render the publication, assess accessibility or editorial quality, guarantee store acceptance, or show how the book reads across devices; human inspection remains necessary.