docling.rs — конвертер документов с MCP-сервером

docling.rs

Порт docling на Rust превращает PDF, Office, HTML и сканы в Markdown и JSON одним бинарником, с режимом MCP-сервера

  • 135 ★ репозитория
  • Последний коммит
  • MIT
MCP-сервер

Расширенный доступ

Почему такой уровень

  • Читает файлы из папки `--root` и при включенном флаге загружает документы по ссылкам
  • Содержимое документов уходит в модель
Все причины и проверки

docling-project/docling.rs

Установка

Ручная установка

claude mcp add docling -- docling-rs mcp --root ~/Documents

Из README, бинарник docling-rs должен быть установлен.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Читает файлы из папки `--root` и при включенном флаге загружает документы по ссылкам
  • Содержимое документов уходит в модель

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

docling.rs превращает документы в Markdown, JSON docling и другие формы, удобные для языковой модели и конвейеров RAG. Это полный порт IBM docling на Rust: тот же вывод из одного статического бинарника, без Python и PyTorch. Поддерживаются PDF, форматы Office, HTML, сканы с распознаванием текста и аудио, а структура сохраняется: заголовки по порядку, таблицы как таблицы. Команда `docling-rs mcp` запускает MCP-сервер из того же бинарника. У агента три инструмента: `convert_to_markdown(uri)` с именем и контрактом как у MarkItDown, `convert(uri, to, options)` для других форматов вывода и `list_input_formats()`. Чтение локальных файлов ограничено папкой из `--root`, а загрузка по ссылкам включается флагом `--allow-url-fetch`. Есть и привычные способы: CLI, пакеты для Python и Node.js, крейт для Rust и образы Docker. Слой совместимости позволяет заменить импорт MarkItDown, Marker или MinerU на `docling_rs` и оставить свой код.

Для кого. Тем, кто готовит документы для RAG и агентов и хочет заменить Python-стек конвертации одним быстрым бинарником, в том числе вместо MarkItDown.

Подходит, если

  • Агенту нужно читать PDF с таблицами и сканами, и ответ в Markdown должен сохранить структуру
  • Используется `markitdown-mcp`, и хочется сменить только команду запуска, оставив имя инструмента
  • Идет пакетная подготовка корпуса документов для индекса, а Python с PyTorch слишком тяжел
  • В проекте на Node.js или Rust нужен конвертер как библиотека, без отдельного сервиса

Не подходит, если

  • Нужен сервис для документов с мгновенной загрузкой по ссылкам без настройки: адреса выключены, пока не передан `--allow-url-fetch`
  • Ваш стек полностью на Python docling с собственными моделями: выигрыш будет невелик
  • Требуется редактировать документы: конвертер только читает и преобразует

Пример запроса к агенту

Конвертируй `~/Documents/report.pdf` в Markdown и сохрани таблицы, а затем перечисли заголовки второго уровня.

MCP

Транспорт
stdio, http
Авторизация
не нужна

Ограничения

Локальные файлы MCP-сервер читает только внутри папки из `--root`, а загрузка по адресам выключена, пока не передан `--allow-url-fetch`. Модели для разметки страниц, таблиц и распознавания текста ставятся отдельным скриптом или идут в образе Docker, и установка через `curl` из README запускает сценарий из сети.

Проект заявляет совпадение вывода с Python docling и приводит замеры скорости и памяти, но числа авторские и сделаны на их тестовом наборе. Предварительные сборки есть для Linux x64 и arm64, s390x и macOS на arm64, на остальных платформах идет сборка из исходников. Последний коммит сделан в ноябре 2026 года.

Как отключить. Удалите сервер docling из конфигурации клиента командой `claude mcp remove docling` и снимите пакет или бинарник тем способом, которым ставили. Скачанные модели лежат в отдельной папке и удаляются вручную.

Частые вопросы

Как подключить docling.rs к Claude Code?

Командой `claude mcp add docling -- docling-rs mcp --root ~/Documents`, если бинарник уже стоит. Тот же сервер запускается из PyPI через `uvx docling-rs-mcp --root ~/Documents`.

Чем docling.rs отличается от Python docling?

Это порт на Rust с тем же выводом, одним статическим бинарником и без Python и PyTorch. По замерам авторов, PDF обрабатываются быстрее при меньшем объеме памяти, а Office и HTML намного быстрее.

Можно ли заменить MarkItDown?

Да: инструмент `convert_to_markdown(uri)` сохраняет имя и контракт, поэтому при настройке `markitdown-mcp` меняется только команда запуска. В Python достаточно заменить импорт на `docling_rs.markitdown`.

Как разрешить загрузку документов по ссылкам?

Запустить сервер с флагом `--allow-url-fetch`. Без него загружаются только локальные файлы внутри папки из `--root`.

Какие форматы поддерживаются?

PDF, форматы Office, HTML, сканы и аудио. Полный список выдает инструмент `list_input_formats`.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы
Официальный

MCP-сервер на базе Docling: переводит PDF в структурированный документ, собирает новые документы и загружает их в RAG

MCP-серверРасширенный доступ791Звезды репозитория

Docling — CLI для смешанного архива: PDF, документы и таблицы можно привести к общему формату для поиска и ИИ.

CLIРасширенный доступ70,5 тыс.Звезды репозитория
Официальный

Утилита Microsoft и MCP-сервер, которые переводят PDF, Word, Excel, PowerPoint, HTML и другие файлы в Markdown для модели

MCP-серверРасширенный доступ195 тыс.Звезды репозитория

MCP-сервер, который превращает PDF, DOCX, XLSX, PPTX, изображения, аудио, веб-страницы и расшифровки YouTube в Markdown

MCP-серверРасширенный доступ3 тыс.Звезды репозитория

MCP-сервер на базе pandoc: агент конвертирует Markdown, HTML, DOCX, LaTeX, EPUB, ODT и другие форматы друг в друга

MCP-серверРасширенный доступ587Звезды репозитория

Doc-Ops MCP конвертирует DOCX, Markdown, HTML и PDF между собой и ставит водяной знак или QR-код на готовые PDF.

MCP-серверРасширенный доступ140Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
docling.rs — конвертер документов с MCP-сервером (эта карточка)нетне нужна135
Docling MCPдане нужна791сервер для Python docling, а здесь порт на Rust одним бинарником
MarkItDownдане нужна195 008тот же контракт `convert_to_markdown`, но с анализом разметки страниц, таблицами и распознаванием текста

Коротко о README

README рассказывает о порте docling на Rust и его скорости, дает способы миграции с MarkItDown, Marker и MinerU заменой импорта, способы установки (скрипт, `cargo`, `pip`, `npm`, Docker), сравнения с замерами, раздел MCP-сервера и RAG-подсистему.

Бейдж для README

Сообщить о проблеме