# docling.rs

MCP-сервер docling.rs превращает PDF, Office, HTML и сканы в Markdown с сохранением структуры — заголовки, таблицы и OCR для агентов.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed · ★ 111
- Автор: docling-project
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/docling-project/docling.rs
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/mcp/doclingrs

## Что делает

docling.rs разбирает документы и отдаёт их содержимое в формате, который понимает агент: Markdown с заголовками по порядку, таблицы ячейка в ячейку, отсканированные страницы через OCR. Внутри — модели анализа layout, распознавания таблиц TableFormer и Whisper для аудио, всё работает из одного бинарника на Rust без Python и PyTorch.

Обрабатывает PDF, Office (Word, Excel, PowerPoint), HTML, e-mail, изображения и аудио. PDF конвертируется в 4.3 раза быстрее, чем Python-версия docling, Office и HTML — в 20–60 раз. Точность распознавания ячеек таблиц 0.94, у MarkItDown — 0.31. Для Office, HTML и Markdown модели не нужны, для PDF и изображений сервер скачивает ONNX-модели при первом запуске (меньше 1 ГБ).

Выдаёт результат в Markdown, JSON, HTML, LaTeX. Умеет читать URL, `data:` URI и YouTube (титры). Работает через stdio, подключается ко всем платформам с поддержкой MCP.

## Требования
- Нужно: Python и uv (команды через uvx)
- Переменные окружения: `DOCLING_RS_CACHE_DIR`, `DOCLING_RS_OCR_LANG` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env DOCLING_RS_CACHE_DIR=<DOCLING_RS_CACHE_DIR> --env DOCLING_RS_OCR_LANG=<DOCLING_RS_OCR_LANG> --transport stdio doclingrs -- uvx docling-rs-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from docling-rs-mcp <команда>

### Codex

**Командой платформы**
```bash
codex mcp add doclingrs --env DOCLING_RS_CACHE_DIR=<DOCLING_RS_CACHE_DIR> --env DOCLING_RS_OCR_LANG=<DOCLING_RS_OCR_LANG> -- uvx docling-rs-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from docling-rs-mcp <команда>

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "doclingrs": {
            "command": "uvx",
            "args": [
                "docling-rs-mcp"
            ],
            "env": {
                "DOCLING_RS_CACHE_DIR": "<DOCLING_RS_CACHE_DIR>",
                "DOCLING_RS_OCR_LANG": "<DOCLING_RS_OCR_LANG>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from docling-rs-mcp <команда>

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "doclingrs": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "docling-rs-mcp"
            ],
            "env": {
                "DOCLING_RS_CACHE_DIR": "<DOCLING_RS_CACHE_DIR>",
                "DOCLING_RS_OCR_LANG": "<DOCLING_RS_OCR_LANG>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from docling-rs-mcp <команда>

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e DOCLING_RS_CACHE_DIR=<DOCLING_RS_CACHE_DIR> -e DOCLING_RS_OCR_LANG=<DOCLING_RS_OCR_LANG> doclingrs uvx docling-rs-mcp
```
Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from docling-rs-mcp <команда>

## Когда брать
- Извлечь текст из PDF с сохранением структуры заголовков и таблиц
- Распознать текст на сканах и изображениях через OCR
- Конвертировать Office-документы в Markdown для обработки агентом
- Расшифровать аудио и видео в текст с помощью Whisper
- Разобрать HTML и e-mail в структурированный формат

## Примеры запросов агенту
- Преобразуй `report.pdf` в Markdown и покажи таблицы
- Извлеки текст из скана `scan.png` и сохрани в `output.md`
- Разбери все PDF из папки `./docs` и выведи структуру заголовков

## Похожие
- [Reactive Resume](https://affpapa.org/nevibecode/mcp/reactive-resume.md) — MCP-сервер · ★ 44874
- [Sui Knowledge Base (kapa.ai)](https://affpapa.org/nevibecode/mcp/sui-knowledge-base-kapaai.md) — MCP-сервер · ★ 7784
- [Claude Code Ultimate Guide](https://affpapa.org/nevibecode/mcp/claude-code-ultimate-guide.md) — MCP-сервер · ★ 6237
- [Zotero MCP](https://affpapa.org/nevibecode/mcp/zotero-mcp.md) — MCP-сервер · ★ 5548
- [RevoGrid DataGrid MCP Pro](https://affpapa.org/nevibecode/mcp/revogrid-datagrid-mcp-pro.md) — MCP-сервер · ★ 3450
- [Claude Code Explorer MCP](https://affpapa.org/nevibecode/mcp/codeaashu-claude-code-explorer-mcp.md) — MCP-сервер · ★ 3409

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
