На GitHub появился PaperPilot: PDF-движок на Rust с MCP и WASM

На GitHub появился PaperPilot: PDF-движок на Rust с MCP и WASM

PaperPilot, набор инструментов для PDF и документов, написанный на Rust. В README он подан так: «PDF-инструменты для вашего ИИ-агента и для вас. Чистый Rust. Работает локально. Файлы не покидают ваш компьютер». Авторы подчёркивают, что для работы не нужны ни Chromium, ни рантайм C++, ни обращения к облаку.

Один и тот же движок доступен в нескольких видах: десктопное приложение (Tauri), командная строка, REST-сервер (Axum), MCP-сервер (stdio) и WASM-модуль для браузера и периферийных окружений. По README, все эти поверхности используют общее ядро на Rust, поэтому поведение у них одинаковое. Ядро, это рабочее пространство из семи крейтов: paperpilot-core, paperpilot-pdf, paperpilot-nlp, paperpilot-gateway, paperpilot-mcp, paperpilot-wasm и paperpilot-storage. Проект собран на библиотеках lopdf, pdf_oxide, rten и других и описан как небольшой и малозависимый.

Для ИИ-агентов предусмотрен MCP-сервер: нужно скачать бинарник paperpilot-mcp из релизов и прописать его в claude_desktop_config.json, затем перезапустить Claude и попросить, например: «Объедини эти два PDF и сожми результат». В командной строке работают команды вроде 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. Команда paperpilot serve --port 7823 запускает локальный REST-сервер: запрос POST на /api/v1/pdf/merge объединяет файлы, а Swagger-документация лежит на localhost:7823/docs. Есть и веб-демо на usepaperpilot.com: по словам README, если открыть вкладку Network в браузере, загрузок файлов видно не будет. Кроме того, в README приведён фрагмент для встраивания виджета на сайт с выбором инструментов (например, merge, compress, ocr).

Сейчас в составе: организация страниц (объединение, разделение, поворот, удаление, перестановка, извлечение страниц, брошюровка, сетка N-up), сжатие, извлечение текста и OCR (PaddleOCR на чистом Rust через rten), инструменты безопасности (водяной знак, проверка и удаление подписей, поиск персональных данных, глубокая очистка) и конвертация Excel в JSON и CSV.

Дорожная карта: в v0.7, PDF в Markdown, HTML, JSON и обратно; в v0.8, PDF в Word, Excel, PowerPoint; в v0.9, шифрование, расшифровка, подпись, редактирование (redact), формы и аннотации; в v1.0, рендеринг, сведение слоёв, восстановление, сравнение, PDF/A и нумерация Бейтса. Сроки в README не указаны.

Собрать из исходников можно командой cargo build --release; нужны Rust 1.75+, Node.js и pnpm (последние два, для десктопного приложения). Community Edition в репозитории распространяется под лицензией Apache 2.0 и включает CLI, MCP-сервер, REST-шлюз, WASM-движок и десктопное приложение. Отдельно разрабатывается Enterprise Edition (SSO, RBAC, журналы аудита, DLP). Авторы приглашают присылать баги с примером PDF, запросы новых инструментов и правки документации.

Ключевые факты

  • PaperPilot, набор инструментов для PDF на Rust; по README работает локально, без Chromium, рантайма C++ и обращений к облаку.
  • Один движок доступен как десктопное приложение, CLI, REST-сервер, MCP-сервер (stdio) и WASM-модуль для браузера.
  • MCP-сервер подключается к Claude через claude_desktop_config.json; сейчас есть объединение, разделение, сжатие, OCR, извлечение текста, водяные знаки, проверка и удаление подписей, поиск персональных данных.
  • Community Edition открыта под Apache 2.0; Enterprise Edition (SSO, RBAC, аудит, DLP) разрабатывается отдельно.
  • Дорожная карта: v0.7, конвертация в Markdown/HTML/JSON, v0.8, в Word/Excel/PowerPoint, v0.9, шифрование и подпись, v1.0, PDF/A и сравнение документов.

Почему это важно

Агентам для работы с документами обычно приходится либо отправлять файлы во внешний сервис, либо тянуть тяжёлые зависимости. PaperPilot предлагает другой путь: локальный движок на Rust, к которому агент обращается по MCP, а файлы остаются на машине пользователя. По README, эти же возможности доступны человеку через CLI, REST, десктоп и браузер на одном и том же ядре. Это не крупный релиз известной компании, а небольшой открытый проект, но идея «PDF-инструменты как MCP-сервер без облака» стоит внимания.

Кому это важно

Разработчикам, которые подключают к Claude и другим агентам работу с PDF и не хотят отправлять документы в облако. Тем, кому нужен единый инструмент для скриптов (CLI), локального REST и браузера. Разработчикам на Rust, интересующимся WASM-сборкой PDF-движка. Командам, которые смотрят на открытое ядро с возможной корпоративной редакцией (SSO, RBAC, аудит, DLP).

Как это применить

Для агента: скачайте paperpilot-mcp из релизов, добавьте путь к бинарнику в claude_desktop_config.json в раздел mcpServers, перезапустите Claude и попросите объединить и сжать файлы. Для скриптов: команды paperpilot merge, compress, rotate в CLI или paperpilot serve --port 7823 для локального REST с документацией Swagger на /docs. Для проверки без установки есть веб-демо на usepaperpilot.com. Для сборки из исходников нужны Rust 1.75+, Node.js и pnpm. Лицензия Community Edition, Apache 2.0; цены и условия Enterprise Edition в README не названы.

Можно ли доверять

Все сведения о проекте взяты из README самого репозитория, то есть это самоописание. Утверждение об отсутствии облачных вызовов проверяемо: README предлагает смотреть вкладку Network в браузере на веб-демо, а код открыт. Цифр производительности в тексте нет: README лишь отсылает к файлу SYSTEM_BENCHMARK_REPORT.md и команде cargo bench --workspace. Сведений об авторах и команде, о сторонних сравнениях с другими PDF-инструментами и о независимом аудите безопасности в README нет, как нет и качества OCR и списка поддерживаемых языков.

Риски и подводные камни

Многое из заявленного пока в планах: шифрование, расшифровка, подпись, редактирование, формы и аннотации запланированы на v0.9, конвертация в Word, Excel и PowerPoint, на v0.8, а сроков нет. Поэтому для задач вроде шифрования или PDF/A проект пока не подойдёт. Качество OCR и сжатия не подтверждено цифрами в README, перед использованием на важных документах стоит проверить на своих файлах. MCP-сервер даёт агенту доступ к операциям над файлами на вашей машине, а в наборе есть и удаление подписей, поэтому права и пути стоит ограничивать. Enterprise Edition развивается отдельно от открытой версии, поэтому часть возможностей может оказаться только в ней.

«Чистый Rust. Работает локально. Файлы не покидают ваш компьютер.»

— README проекта PaperPilot