# MCP Document Reader

Открывает агенту доступ к PDF, DOCX, Excel и TXT с диска. Пригодится, когда нужно разобрать чужой отчёт или таблицу прямо в чате.

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

## Что делает

Сервер отдаёт один инструмент `read_document` с единственным обязательным аргументом `filename` — путём к файлу, абсолютным или относительным. Тип определяется по расширению, дальше подключается нужный обработчик: `python-docx` для DOCX, `pypdf` для PDF, `openpyxl` для Excel, обычное чтение для TXT. Агенту не нужно объяснять формат — он просто просит файл.

Внутри четыре ридера за общей фабрикой `DocumentReaderFactory`. Ту же библиотеку можно тянуть из своего Python-кода: проверить `is_supported` и вызвать `read`. Нужен Python 3.10+ и запуск через `uvx`, поэтому `uv` должен стоять в системе до того, как вы добавите сервер в конфиг.

Файлы берутся из файловой системы, то есть агенту доступно ровно то, что доступно процессу сервера. На PDF со сканами рассчитывать не стоит: `pypdf` вытаскивает текстовый слой, а не картинки. Это ограничение самой библиотеки, и для распознавания сканов понадобится отдельный инструмент.

## Требования
- Нужно: Python и uv (команды через uvx)

## Установка

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

**Командой платформы**
```bash
claude mcp add mcp-documents-reader -- uvx mcp-documents-reader
```
uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-documents-reader <команда>

### Codex

**Командой платформы**
```bash
codex mcp add mcp-document-reader -- uvx mcp-documents-reader
```
uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-documents-reader <команда>

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "mcp-document-reader": {
            "command": "uvx",
            "args": [
                "mcp-documents-reader"
            ]
        }
    }
}
```
uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-documents-reader <команда>

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "mcp-document-reader": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "mcp-documents-reader"
            ]
        }
    }
}
```
uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-documents-reader <команда>

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add mcp-document-reader uvx mcp-documents-reader
```
uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-documents-reader <команда>

## Когда брать
- прочитать PDF-договор и вытащить из него условия
- разобрать чужой Excel и найти нужные ячейки
- достать текст из DOCX без ручного копирования
- сверить данные из таблицы с текстом в отчёте
- загрузить в контекст агента локальный TXT-файл

## Примеры запросов агенту
- Прочитай `report.pdf` и перескажи основные выводы
- Открой `budget.xlsx` и покажи, в каких строках расходы выше плана
- Вытащи из `contract.docx` пункты про расторжение

## Похожие
- [Excel MCP Server](https://affpapa.org/nevibecode/mcp/excel-mcp-server.md) — MCP-сервер · ★ 4259
- [kordoc](https://affpapa.org/nevibecode/mcp/kordoc.md) — MCP-сервер · ★ 2726
- [Power BI Authoring MCP Server (Local)](https://affpapa.org/nevibecode/mcp/power-bi-authoring-mcp-server-local.md) — MCP-сервер · ★ 1247
- [Microsoft 365 MCP Server](https://affpapa.org/nevibecode/mcp/microsoft-365-mcp-server.md) — MCP-сервер · ★ 1074
- [anymd](https://affpapa.org/nevibecode/mcp/anymd.md) — MCP-сервер · ★ 1051
- [Docling MCP](https://affpapa.org/nevibecode/mcp/docling-mcp.md) — MCP-сервер · ★ 777

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