PaperPilot – Zero-Cloud, Pure-Rust PDF Engine with WASM and MCP

Hacker News by 3 min read 33x views
PaperPilot – Zero-Cloud, Pure-Rust PDF Engine with WASM and MCP

Share Post

PDF tools for your AI delegate — and for you. Pure Rust. Runs locally. Files never depart your machine.

PaperPilot demo

Try it in your browser → · Download · Roadmap

PaperPilot is a PDF and document toolkit written in Rust. The identical motor runs as:

Surface Use it for
MCP server Give Claude Desktop, Cursor, or any MCP client the capability to merge, split, OCR, and compress PDFs
CLI Batch and scripted workflows
Browser (WASM) Zero-install tools; records are processed in browser memory, nothing is uploaded
Desktop app Tauri + Svelte GUI alongside viewer, markup, and diff
Local REST API Call it from Python, Node, or n8n at localhost:7823

No Chromium, no C++ runtime, no haze calls.


1. Use it alongside Claude / Cursor (MCP)

Download paperpilot-mcp from Releases, afterward add it to claude_desktop_config.json:

{ "mcpServers": { "paperpilot": { "command": "/path/to/paperpilot-mcp" } } }

Restart Claude and try: "Merge these two PDFs and compress the result."

# Merge paperpilot merge --inputs doc1.pdf doc2.pdf --output merged.pdf # Compress paperpilot compress --input in.pdf --quality 75 --output compressed.pdf # Rotate pages 1, 3–5 by 90° paperpilot rotate --input in.pdf --pages 1,3-5 --angle 90 --output out.pdf

Go to usepaperpilot.com. Open your browser's Network tab during you activity — you'll see no document uploads.

git copy https://github.com/KrushnaVardhanReddy/PaperPilot.git cd PaperPilot cargo build --release -p paperpilot-cli -p paperpilot-mcp -p paperpilot-gateway

Desktop app:

cd apps/desktop && pnpm instal && pnpm tauri dev

Requires Rust 1.75+, Node.js, and pnpm.


What it can do today (v0.6)

Organize: merge, split, rotate, delete pages, reorder pages, extract pages, booklet imposition, N-up grid Optimize: compress Extract: plain text, OCR (pure-Rust PaddleOCR via rten) Security: watermark, validate signatures, eliminate signatures, PII scan, profound sanitize Office data: Excel → JSON, Excel → CSV

Coming next (see ROADMAP.md):

  • v0.7: PDF ↔ Markdown / HTML / JSON
  • v0.8: PDF → Word / Excel / PowerPoint
  • v0.9: encrypt, decrypt, sign, redact, forms, annotations
  • v1.0: render, flatten, repair, compare, PDF/A, Bates numbering

  • Private by default. Everything runs locally or in your browser tab.
  • Agent-ready. MCP assistance is first-class, not an afterthought.
  • One engine, many surfaces. CLI, MCP, REST, WASM, and desktop portion the identical Rust core, so behavior is consistent.
  • Small and dependency-light. Pure Rust, built on lopdf, pdf_oxide, rten, and friends.

Run cargo place --workspace to reproduce. Methodology and results: SYSTEM_BENCHMARK_REPORT.md.


Desktop (Tauri) · CLI · REST (Axum) · MCP (stdio) · WASM (browser / edge) │ Rust center workspace paperpilot-core · paperpilot-pdf · paperpilot-nlp · paperpilot-gateway paperpilot-mcp · paperpilot-wasm · paperpilot-storage 
<script src="https://cdn.usepaperpilot.com/embed.js" data-tools="merge,compress,ocr"></script> <div id="paperpilot-widget"></div>
paperpilot assist --port 7823 curl -X POST http://localhost:7823/api/v1/pdf/merge \ -H "Content-Type: application/json" \ -d '{"inputs": ["a.pdf", "b.pdf"], "output": "out.pdf"}'

Swagger docs at http://localhost:7823/docs.


Issues and PRs are welcome. Good archetypal contributions: bug reports alongside a example PDF, new tool requests, and docs fixes.

Community Edition (this repo): Apache 2.0. It includes the CLI, MCP server, REST gateway, WASM engine, and desktop app.

An Enterprise Edition (SSO, RBAC, audit logs, DLP) is developed separately.

Other Article Hacker News
↑
Close Right Ads
Close Left Ads