Turn a document or an AI draft into a publish-ready PDF with a cover, contents and your branding.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Your assistant writes the ebook or report. Unplain designs it and hands back a publish-ready PDF.
Unplain is a hosted Model Context Protocol server. Ask for a document and your assistant writes it, picks a design (or applies a brand you have saved), generates a cover, and exports a finished PDF with a composed cover, a table of contents built from the headings, real pagination and a closing call-to-action page. You never leave the chat, and you never open a design tool.
Two things follow from that, and they are the reason to use this rather than asking a model for a PDF directly:
Unplain does not write your content, and through MCP it does not take file
uploads: your assistant supplies the words as Markdown. Uploading a .docx or a
.txt is a web app feature, not an MCP one.
https://app.unplain.io/api/mcpAuthorization: Bearer <api-key> (a bare Authorization: <api-key> is also accepted)This repository is documentation. The server is hosted, so there is no package to install and no source to run. Issues and questions are welcome here.
Publishing to the official MCP Registry: see PUBLISHING.md. The manifest is server.json.
Create one at account settings. It is shown once. A free account works for everything below.
Claude Code
Full guide: https://unplain.io/mcp/claude-code
Codex
Full guide: https://unplain.io/mcp/codex
Anything else
Any client that can add a remote MCP server and send an Authorization header
works. You need two values:
A client that only supports servers running on your own machine cannot connect yet.
An empty list is still a success: the connection is live, you have not saved a theme yet.
Twelve tools. Names and behaviour are current as of the version in CHANGELOG.md.
| Tool | What it does |
|---|---|
get_account | Report the plan this key belongs to and the limits that apply. Worth calling before writing anything long. |
get_design_options | The font catalog, the built-in presets, and the allowed range of each typography and spacing setting. |
list_brand_themes | List saved Brand Themes. |
create_brand_theme | Save a new Brand Theme: colors, fonts, links. |
update_brand_theme | Change a theme's name, colors, fonts or links. |
create_ebook | Create a project from a title and Markdown. |
list_ebooks | Find the caller's projects. |
get_ebook | Read a project back as a structured outline. |
update_ebook | Rewrite paragraphs, headings and lists, change cover copy and style, apply a theme, or replace the body. |
generate_cover_image | AI cover artwork, drawn from the section headings or from your direction. |
export_ebook | Render the designed PDF. |
get_export_status | Poll a running export and get the download link. |
The MCP is an interface, not a tier. A key carries exactly the capabilities of the account behind it, and the same limits apply whether you work in the web app or through an assistant.
| Free | Pro | |
|---|---|---|
| Content pages per exported PDF | 5 | Unlimited |
| Saved projects | 5 | Unlimited |
| Brand Themes | 1 | 25 |
| AI covers | 1 lifetime | 30 per period |
| "Made with Unplain" badge | Always | Removable |
Cover, contents and call-to-action pages never count toward the page limit. Current pricing: https://unplain.io/pricing
See examples/prompts.md for a fuller set. A few to start:
Treat it like a password.
-s project writes a .mcp.json in the project root. Do not
commit a real key in it. Use a placeholder and have each person supply their
own; a key acts in the account it belongs to.| Symptom | Cause |
|---|---|
| Every tool call fails | The key is not reaching the server. The header must be Bearer (with the space) then the key, and the URL must end in /api/mcp with no trailing slash. A bad key returns 401, which most clients report as a failed connection. |
| Tools do not appear | Restart the client. New servers are picked up at session start. |
| Codex cannot find the key | It reads the environment at launch. Export it in your shell profile and start Codex from a shell that has it. |
| "No Brand Themes" | The connection works, you have not saved one. Your assistant can create one, or design from the built-in presets. |
| Export says the ebook is too long | Free exports up to 5 content pages. Shorten it or upgrade. The project is saved either way. |
| Too many requests | Per-account rate limits on creates and exports. Wait a minute. |
More: https://unplain.io/mcp
Documentation and examples in this repository are MIT licensed. The Unplain service itself is governed by its terms and privacy policy.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/unplain)<a href="https://allmcps.com/mcp/unplain"><img src="https://allmcps.com/api/badge/unplain?style=directory" alt="Unplain on AllMCPs" /></a>