# pdfrender

Turns HTML and CSS into PDF over MCP, with headers, footers and page numbers set in CSS. Useful when a document has to come out of a template.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI
- Author: pdfrender-dev
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/pdfrender-dev/pdfrender
- Updated: 2026-10-02
- HTML: https://affpapa.org/en/nevibecode/mcp/pdfrender

## What it does

pdfrender exposes HTML-to-PDF rendering through an MCP server and a REST API. WeasyPrint 70 handles layout: paper size, margins, headers, footers and page numbers all come from the print CSS inside your HTML. No JavaScript runs and no URLs are fetched, so images and fonts have to arrive as `data:` URIs.

One render takes up to 2 MB of HTML and 50 pages. Anonymous calls need no key, just at a lower rate; a key goes in the `X-API-Key` header. The free plan covers 100 credits a month and asks for no card. Servers sit in Germany.

Wiring it into Claude is a single command, and other clients get a JSON block or a one-click install. The repo also ships manifests for Gemini CLI, Agent Plugins 1.0 and the MCP Registry, plus a skill under `skills/`.

## Requirements
- Remote server: `https://api.pdfrender.dev/mcp/`

## Install

### Claude Code (native platform)

**Platform CLI: remote server**
```bash
claude mcp add --transport http pdfrender https://api.pdfrender.dev/mcp/
```

### Codex

**Platform CLI: remote server**
```bash
codex mcp add pdfrender --url https://api.pdfrender.dev/mcp/
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "pdfrender": {
            "url": "https://api.pdfrender.dev/mcp/"
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "pdfrender": {
            "type": "http",
            "url": "https://api.pdfrender.dev/mcp/"
        }
    }
}
```

### Gemini CLI

**Platform CLI: remote server**
```bash
gemini mcp add -t http pdfrender https://api.pdfrender.dev/mcp/
```

## When to use it
- render an HTML template into a finished PDF
- add page numbers and running headers to a report
- produce a PDF without installing a headless browser
- generate an invoice PDF straight from the agent
- control paper size and margins from CSS

## Example prompts
- Render `invoice.html` to PDF and save it as `invoice.pdf`
- Build a PDF from this HTML with page numbers at the bottom
- Use pdfrender to turn `report.html` into a PDF

## Similar
- [kami-document-design](https://affpapa.org/en/nevibecode/skills/kami-document-design.md) — skill · 387 installs
- [mcp-document-converter](https://affpapa.org/en/nevibecode/mcp/mcp-document-converter.md) — MCP server · ★ 12
- [slide-creator](https://affpapa.org/en/nevibecode/skills/slide-creator.md) — skill · 4100 installs
- [pdf-creator](https://affpapa.org/en/nevibecode/skills/pdf-creator.md) — skill · 1000 installs
- [Fullbleed PDF Engine](https://affpapa.org/en/nevibecode/mcp/fullbleed-pdf-engine.md) — MCP server · ★ 94
- [Maket](https://affpapa.org/en/nevibecode/mcp/maket.md) — MCP server · ★ 20

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
