█

AI/TLDR

PaperPilot

One pure-Rust PDF engine behind a CLI, an MCP server, a REST API, a desktop app and a browser build, with files kept on your machine

Office Documents & SpreadsheetsOpen source
Latest
v0.6.1
Updated
26 Oct 2026
Language
Rust
License
Apache-2.0
Coverage
1 story
$git clone https://github.com/KrushnaVardhanReddy/PaperPilot.git

What's new

v0.6.126 Oct 2026

Adds MCP setup for Codex, Claude Code, Kimi Code and Pi, automatic page rotation, PDF attachments, dark-mode colour inversion, a scanned-book spine splitter and an embedded libSQL store.

Latest news

Overview

PaperPilot is an open-source PDF and document toolkit written in Rust. A single engine powers five surfaces: an MCP server for AI agents, a command-line tool for batch jobs, a WebAssembly build that runs in the browser tab, a Tauri and Svelte desktop app with a viewer, markup and diff, and a local REST API on port 7823. The project's promise is that files stay on your machine — the browser version processes documents in the tab without uploading them.

The toolset covers the everyday PDF jobs people usually hand to an online converter: merging, splitting, rotating, reordering and extracting pages, booklet and N-up layouts, lossy compression with stream deduplication, watermarks, signature validation, a PII scan and deep sanitising. For AI pipelines it extracts structured text and Markdown tables, runs OCR with PaddleOCR on the pure-Rust `rten` runtime, and exposes Tika-style endpoints so tools such as Open WebUI can use it as a document extraction server.

Claude Desktop calling the PaperPilot MCP merge tool to combine two PDFs and compress the result locally
An agent merges and compresses two PDFs through the PaperPilot MCP server.github.com ↗

The MCP server is the agent-facing part: it runs as a local stdio server and can print ready-made client configuration for Codex, Claude Code, Kimi Code, Pi, Claude Desktop and Cursor, so an assistant can act on a request like "merge these two PDFs and compress the result" without sending the files to a cloud service. The repository is the Apache-2.0 Community Edition; an Enterprise Edition with SSO, RBAC, audit logs and DLP is developed separately under a commercial licence.

What it does

  • One Rust engine shared by the MCP server, CLI, browser WASM build, Tauri desktop app and local REST API
  • Page organisation and layout: merge, split, rotate, delete, reorder, extract, booklet imposition, N-up grids and poster tiling
  • Compression with lossy image settings, stream deduplication and CMYK safety guards
  • Structured text and Markdown-table extraction plus pure-Rust OCR (PaddleOCR on `rten`)
  • Tika-compatible endpoints (`/tika/text`, `/tika/json/md`, `/rmeta/text`) for Open WebUI and other RAG ingestion
  • Security tools: watermarking, signature validation and removal, PII scanning and deep sanitising
  • `paperpilot-mcp --client-config` prints setup for Codex, Claude Code, Kimi Code, Pi, Claude Desktop and Cursor

Getting started

Pre-built `paperpilot-mcp` binaries are on the GitHub Releases page, and the browser version runs at usepaperpilot.com with no install. To build everything from source you need Rust 1.75+ (plus Node.js and pnpm for the desktop app).

Build from source

Clone the repository and build the CLI, the MCP server and the REST gateway in release mode.

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

Connect it to your agent

The MCP server prints the configuration for a named client. Other supported values are claude-code, kimi-code, pi, claude-desktop and cursor.

bashbash
paperpilot-mcp --client-config codex

Use the CLI

Merge, compress and rotate files from the command line or a script.

bashbash
paperpilot merge --inputs doc1.pdf doc2.pdf --output merged.pdf
paperpilot compress --input in.pdf --quality 75 --output compressed.pdf
paperpilot rotate --input in.pdf --pages 1,3-5 --angle 90 --output out.pdf

Run the local REST API

`serve` starts the API on localhost; Swagger docs are at http://localhost:7823/swagger-ui.

bashbash
paperpilot serve --port 7823
curl -X PUT http://localhost:7823/tika/text \
  -H "Content-Type: application/pdf" \
  --data-binary @sample.pdf

Try the desktop app

The Tauri and Svelte app adds a viewer, markup and diff on top of the same engine.

bashbash
cd apps/desktop && pnpm install && pnpm tauri dev

Commands and code are distilled from the project's own documentation — always check the official repo for the latest.

When to use it

  • Let Claude Code, Codex or Cursor merge, compress or OCR PDFs through MCP without uploading confidential documents
  • Replace online PDF converters with a browser tool that never sends the file to a server
  • Feed scanned or text PDFs into a RAG pipeline through the Tika-compatible extraction endpoints
  • Script bulk page operations and compression in CI or n8n through the CLI or the local REST API

How PaperPilot compares

PaperPilot alongside other open-source office documents & spreadsheets tools AI/TLDR tracks, ranked by GitHub stars.

ToolStarsWhat it does
Next AI Draw.io★ 36.4kAn open-source web app, desktop app and MCP server that draws and edits real draw.io diagrams from chat, with every AI change saved as a version you can compare, restore or undo, across 25 model providers.
OfficeCLI★ 32.6kA single-binary command-line Office suite built for AI agents: create, read and edit Word, Excel and PowerPoint files, render them to HTML or PNG, and drive it all over MCP.
Univer★ 22.7kAn open-source TypeScript SDK that embeds spreadsheets, docs, slides, boards and bases in your product, with a headless Node.js runtime and an AI SDK for agents.
GenOffice★ 11.1kA desktop office suite for macOS, Windows and Linux that opens and saves native .docx, .xlsx and .pptx files with an AI panel beside every document, plus a CLI and agent skill for editing the same files headlessly.
Edit Banana★ 5.5kAn open-source pipeline from BIT-DataLab that rebuilds flowcharts, architecture figures and formulas from static images as editable draw.io (DrawIO XML) files, using fine-tuned SAM 3 segmentation, OCR and Pix2Text.
Doory★ 1.9kA free, self-hostable browser design editor for posters, social posts, slides and videos, with a built-in MCP server that lets Claude, Cursor and other assistants create, edit, fill and export designs.
PaperPilot★ 654One pure-Rust PDF engine behind a CLI, an MCP server, a REST API, a desktop app and a browser build, with files kept on your machine