pdfforge
# PDFForge Pro
<!-- mcp-name: io.github.ouchi-dev/pdfforge -->
A native, professional PDF editor for Linux, with an MCP server that lets Claude and other AI assistants work on your PDFs locally.
[Version française (full documentation)](README.fr.md)

## Why
Linux has no free editor at the level of Acrobat, and most PDF tools for AI agents upload your files to a cloud service. PDFForge does everything on your machine.
## Editor features
- **Edit text in the document's own font.** The font embedded in the PDF is reused, not a lookalike. Only the changed characters are rewritten, and the rest of the line is repositioned to the exact point. When fidelity is impossible, the status bar says so instead of hiding it.
- **Annotate, comment, draw, sign** (including PAdES / PKCS#7 signatures with X.509 certificates and RFC 3161 timestamps)
- **Organise pages:** merge, split, reorder, rotate, delete
- **OCR** scanned documents into searchable text, with deskewing and per-word confidence
- **Redact for real:** find IBANs, card numbers, national IDs, emails, and remove them from the file, not just cover them
- **Forms:** fill AcroForms, with live recalculation of Acrobat formulas
- **Compare two versions** and detect tampering traces
- **Bank statements to Excel:** extract date, label and amount lines
- **Export** to Word (.docx), LibreOffice (.odt/.rtf), Excel, PowerPoint, images and text
- **Archive and repair:** PDF/A conversion with verification, web optimisation, repair of damaged files, PDF/UA accessibility audit and fixes
- Encryption (AES-256), watermarks, compression, unlimited undo/redo
- Stays fast on large documents
## MCP server
The editor's engines are exposed to any MCP client (Claude Code, Claude Desktop, Cursor...). Everything runs locally: no file is sent anywhere, and tools that change a document always write a new file (the source is only replaced with `overwrite=true`).
```bash
claude mcp add pdfforge -- uvx pdfforge-pro
```
Or with pip: `pip install pdfforge-pro`, then `claude mcp add pdfforge -- pdfforge-mcp`. OCR needs Tesseract (`sudo apt install tesseract-ocr`).
For Claude Desktop, in `claude_desktop_config.json`:
```json
{ "mcpServers": { "pdfforge": { "command": "uvx", "args": ["pdfforge-pro"] } } }
```
| Tool | What it does |
|---|---|
| `pdf_info`, `read_text`, `render_page`, `search` | Read a document, see a page as an image, search it |
| `merge`, `split`, `organize_pages` | Merge, split, keep, delete or rotate pages |
| `create_pdf`, `export` | Word, Excel, images to PDF; PDF to .docx, .txt, .html, .odt, .xlsx |
| `replace_text` | Replace a word everywhere, rewritten in the document's embedded fonts |
| `ocr` | Make a scan searchable, with deskewed pages and per-word confidence |
| `find_sensitive_data`, `redact` | Find IBANs, cards, national IDs, emails... and remove them for good |
| `list_form_fields`, `fill_form` | Read and fill a form |
| `extract_transactions` | Bank statement to date / label / amount rows, and Excel |
| `compare`, `detect_tampering` | Differences between two versions, signs of forgery |
| `watermark`, `protect`, `unlock`, `compress` | Watermark, AES-256 password, compression |
Example requests: "remove every IBAN and email from this folder before I send it", "put my September statements in a spreadsheet", "has this contract been changed since it was signed?".
## Install and run
```bash
pip install pdfforge-pro && pdfforge # or, from a clone:
make run # launch the editor
make test # run the test suite
make deb # build a Debian package
```
## License
AGPL-3.0-or-later, because PDFForge is built on [PyMuPDF](https://github.com/pymupdf/PyMuPDF) (AGPL-3.0).
TDQS
Scored across 22 tools
Most tools have clearly distinct actions and outputs: read_text vs search vs extract_transactions, and find_sensitive_data vs redact, are well differentiated. Minor overlap exists between pdf_info and list_form_fields for form-field information, and between export and extract_transactions for tabular output, but descriptions provide strong cues.
Names are almost entirely predictable snake_case and action-oriented (read_text, create_pdf, replace_text, detect_tampering, compress). Single-verb names for simple actions are readable, but pdf_info and ocr are minor deviations from a strict verb_noun pattern.
At 22 tools, the server is above the typical 3–15 range, but the PDF domain is broad and each tool maps to a distinct operation across reading, editing, conversion, security, and analysis. There is little redundancy, so the count is heavy but defensible rather than excessive.
The surface covers a full PDF lifecycle: creation, reading, OCR, editing, page organization, forms, redaction, protection, conversion, extraction, comparison, and tamper detection. Notable gaps include annotations/comments, digital signature verification/signing, metadata editing, and image extraction, but these are minor relative to the core workflows.