Ви можете попросити LLM або AI‑агента витягнути дані з документів і отримати відповідь від документального движка, а не від читання моделі вставленого файлу. За допомогою сервера GroupDocs.Parser.Mcp, що працює локально в Docker‑контейнері, один запит повертає текст, таблицю, вбудовані зображення або значення штрих‑коду:
Що говорить invoice.pdf і що міститься в його таблиці?
Крок‑за‑кроком з конфігурацією та усуненням проблем можна ознайомитися в документації: Як витягнути дані документу за допомогою AI‑агентів, використовуючи MCP.
Чому AI‑агенту потрібен інструмент витягування?
Чат‑модель знає лише те, що розміщено у її вікні контексту. Якщо вставити PDF у чат, модель працює лише з тим текстом, який клієнт встиг «розплющити», тому колонки можуть зникнути, скани залишитися порожніми, і ніхто не зможе сказати, що саме сталося. Сервер витягування переносить цей крок поза модель: агент викликає інструмент, документальний движок читає файл всередині контейнера, а агент отримує результат. Потім модель робить те, що вона вміє найкраще — розмірковує над отриманими значеннями.
GroupDocs.Parser.Mcp надає сім інструментів клієнтам, сумісним з MCP, таким як Claude Desktop, Claude Code, Cursor, VS Code з GitHub Copilot та Windsurf. П’ять інструментів витягують дані (extract_text, extract_tables, extract_images, extract_barcodes, extract_metadata), один — перевіряє (get_document_info), і один — повідомляє про ліцензування (get_license_status).
Спосіб 1: Запитати значення і дозволити агенту вибрати інструмент
Сформулюйте запит як питання про документ. Агент зіставляє питання з інструментом.
| Ви запитуєте | Інструмент, який викликає агент |
|---|---|
| «Що в ньому сказано?» | extract_text |
| «Що міститься в таблиці?» | extract_tables |
| «Хто її написав і коли?» | extract_metadata |
| «Збережи зображення.» | extract_images |
| «Що кодує штрих‑код?» | extract_barcodes |
extract_text підтримує PDF, DOCX, XLSX, PPTX, TXT, HTML, CSV, EML, MSG, RTF, ODT, EPUB та понад 50 інших форматів, тому той самий запит працює і з електронною поштою, і з електронною таблицею. Дуже великі виводи обрізаються маркером, тому для довгих звітів запитуйте по сторінках:
Витягни текст цього 40‑сторінкового звіту по сторінках і підсумуй кожен розділ.
Приклад сесії (скорочений):
You: What does invoice.pdf say, and what is in its table?
Agent: [calls extract_text, extract_tables]
Invoice 2026-0412 from Northwind Supplies, dated 3 October.
The table has 3 rows (item, quantity, amount); the amounts add up to 1,240.00.
Спосіб 2: Перевірити текстовий шар перед тим, як довіряти порожньому результату
PDF, створений у цифровому вигляді, містить текстовий шар; скан — ні. На сканованій сторінці extract_text повертає мало або нічого, що є коректним описом файлу. Змусьте агента спочатку протестувати це перед витягуванням:
Скільки це сторінок і чи містить він витягуваний текст?
get_document_info повертає назву файлу, тип, кількість сторінок і розмір без будь‑яких змін, а односторінковий виклик extract_text показує, чи існує текст. Два недорогих виклики розрізняють «цей файл порожній» і «цей файл — зображення». У цьому сервері немає кроку OCR, тому надруковані слова у скані залишаються пікселями. Коди — виняток, і про них розповідає Спосіб 3.
Спосіб 3: Витягнути те, чого не може досягти текстове витягування
Таблиці, зображення та штрих‑коди мають окремі інструменти, бо їх перетворення у текст втрачає їхню корисність.
extract_tablesповертає таблиці у форматі Markdown, які відображаються в чаті, або рядки JSON, якщо передатиformat: "json".extract_imagesзберігає кожне вбудоване зображення у вихідну папку як<basename>_image<N>.<ext>.extract_barcodesрозкодує Code128, QR Code, PDF417, DataMatrix, EAN‑13, EAN‑8, UPC, Aztec та інші, включно зі сканованими сторінками, оскільки моделі движка виявляють коди у растровому зображенні.
Витягни позиції рядків з invoice.pdf у форматі JSON, а потім збережи зображення зі сторінки 1.
Чи потрібен агенту інструмент витягування чи конвертації?
Це різні завдання, і вибір неправильного сервера призводить до плутанини.
| Вам потрібно | Сервер |
|---|---|
| Значення з документа: текст, таблиця, штрих‑код, властивості | GroupDocs.Parser.Mcp |
| Документ у іншому форматі, збережено макет | GroupDocs.Conversion.Mcp |
| Чистий Markdown усього документа для RAG | GroupDocs.Markdown.Mcp |
| Метадані, які потрібно редагувати або видалити, а не лише читати | GroupDocs.Metadata.Mcp |
Багато конвеєрів використовують два сервери: конвертація для завантаження, парсинг для витягування.
Запустити локально за допомогою Docker
Цей сервер постачається лише як Docker‑образ. Движок вбудовує близько 234 МБ моделей ONNX, що перевищує ліміт у 250 МБ для NuGet‑пакету, тому команди dnx немає. Підключіть папку з документами як /data:
docker run --rm -i -v $(pwd)/documents:/data \
ghcr.io/groupdocs-parser/parser-net-mcp:latest
Ваш AI‑клієнт запускає контейнер як дочірній процес через stdio. Вхідних портів немає, і документи залишаються на вашій машині. Конфігурація для кожного клієнта (Claude Desktop, Claude Code, VS Code, Cursor, Windsurf, Cline та Codex) знаходиться в розділі Реєстрація в AI‑клієнтах.
Які обмеження?
- Режим оцінки. Без ліцензії витягування обмежене; точні обмеження зазначені на сторінці бібліотеки ліцензування. Попросіть агента спочатку виконати
get_license_statusі розглядайте результат без ліцензії як тест, а не як повне читання. - Немає OCR. Текст у скані не може бути витягнутий.
- Лише Docker. Потрібен встановлений Docker; образ великий, тому його варто завантажити один раз.
FAQ
Чи можу я витягнути текст з PDF за допомогою Claude локально, без завантаження?
Так. Сервер працює в контейнері на вашій машині, а Claude Desktop спілкується з ним через stdio, тому файл читається з підключеної папки і не надсилається до сервісу витягування.
Чому агент не повертає нічого для деяких PDF?
Швидше за все, це скан без текстового шару. Попросіть агента виконати get_document_info і односторінковий виклик extract_text для підтвердження, потім використайте extract_barcodes для кодів або OCR‑інструмент для слів.
Чи існує команда dnx для GroupDocs.Parser.Mcp?
Ні. Цей продукт доступний лише через Docker, тому кожна інсталяція використовує docker run або запис у клієнті MCP, який запускає Docker.
Поглибити знання
- Документація, канонічний посібник: Як витягнути дані документу за допомогою AI‑агентів, використовуючи MCP
- Центр документації: GroupDocs.Parser MCP Server
- Далі: Таблиці з PDF у JSON без вгадування клітинок LLM
- Далі: Забезпечення послідовного захоплення даних автоматичними процесами витягування за допомогою MCP
- Далі: Автоматизація скан‑до‑запису за допомогою AI‑агентів
- On‑premise та модель безпеки: 3 архітектури для AI‑обробки документів, і та, що тримає файли всередині вашої мережі
- Питання: Форум GroupDocs Parser
- Джерело: GroupDocs.Parser.Mcp на GitHub