Możesz poprosić model LLM lub agenta AI o wyodrębnienie danych z dokumentów i uzyskać odpowiedź pochodzącą z silnika dokumentów, a nie z odczytu modelu wklejonego pliku. Przy uruchomionym lokalnie serwerze GroupDocs.Parser.Mcp w kontenerze Docker, jedno polecenie zwraca tekst, tabelę, osadzone obrazy lub wartość kodu kreskowego:

Co mówi invoice.pdf i co znajduje się w jego tabeli?

Wersja krok po kroku z konfiguracją i rozwiązywaniem problemów znajduje się w dokumentacji: Jak wyodrębnić dane dokumentu przy użyciu agentów AI z MCP.

Dlaczego agent AI w ogóle potrzebuje narzędzia do wyodrębniania?

Model czatu zna tylko to, co znajduje się w jego oknie kontekstu. Wklejenie PDF‑a do czatu powoduje, że model pracuje na dowolnym tekście, który klient udało się z niego spłaszczyć, więc kolumny się zapadają, skany przychodzą puste i nikt nie może stwierdzić, co się stało. Serwer wyodrębniania przenosi ten krok poza model: agent wywołuje narzędzie, silnik dokumentów odczytuje plik wewnątrz kontenera, a agent otrzymuje wynik. Model następnie robi to, w czym jest dobry – rozumowanie nad przekazanymi wartościami.

GroupDocs.Parser.Mcp udostępnia siedem narzędzi klientom zgodnym z MCP, takim jak Claude Desktop, Claude Code, Cursor, VS Code z GitHub Copilot i Windsurf. Pięć wyodrębnia dane (extract_text, extract_tables, extract_images, extract_barcodes, extract_metadata), jedno inspekcjonuje (get_document_info) i jedno raportuje licencję (get_license_status).

Sposób 1: Zapytaj o wartość i pozwól agentowi wybrać narzędzie

Sformułuj żądanie jako pytanie o dokument. Agent mapuje pytanie na narzędzie.

Ty pytasz Narzędzie wywoływane przez agenta
“Co to mówi?” extract_text
“Co jest w tabeli?” extract_tables
“Kto to napisał i kiedy?” extract_metadata
“Zapisz obrazy.” extract_images
“Co kod kreskowy koduje?” extract_barcodes

extract_text obsługuje PDF, DOCX, XLSX, PPTX, TXT, HTML, CSV, EML, MSG, RTF, ODT, EPUB i ponad 50 kolejnych formatów, więc to samo polecenie działa zarówno na e‑mailu, jak i na arkuszu kalkulacyjnym. Bardzo duże wyniki są przycinane markerem, więc w przypadku długiego raportu pytaj strona po stronie:

Wyodrębnij tekst tego 40‑stronnicowego raportu strona po stronie i podsumuj każdą sekcję.

Przykładowa sesja (skrócona):

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.

Sposób 2: Sprawdź warstwę tekstową przed zaufaniem pustemu wynikowi

PDF powstały cyfrowo zawiera warstwę tekstową; skan jej nie ma. Na zeskanowanej stronie extract_text zwraca niewiele lub nic, co jest prawidłową informacją o pliku. Poproś agenta, aby to sprawdził przed wyodrębnieniem:

Ile stron ma ten dokument i czy posiada wyodrębnialny tekst?

get_document_info zwraca nazwę pliku, typ, liczbę stron i rozmiar bez modyfikacji, a jednorazowe wywołanie extract_text na jednej stronie pokazuje, czy tekst istnieje. Dwa tanie wywołania oddzielają „ten plik jest pusty” od „ten plik jest obrazem”. W tym serwerze nie ma kroku OCR, więc wydrukowane słowa w skanie pozostają pikselami. Kody są wyjątkiem, a Sposób 3 je obejmuje.

Sposób 3: Wyciągnij to, czego nie może osiągnąć wyodrębnianie tekstu

Tabele, obrazy i kody kreskowe mają dedykowane narzędzia, ponieważ spłaszczenie ich do tekstu traci to, co je czyni użytecznymi.

  • extract_tables zwraca tabele w formacie Markdown, które renderują się w czacie, lub wiersze JSON, gdy przekażesz format: "json".
  • extract_images zapisuje każdy osadzony obraz do folderu wyjściowego jako <basename>_image<N>.<ext>.
  • extract_barcodes dekoduje Code128, QR Code, PDF417, DataMatrix, EAN-13, EAN-8, UPC, Aztec i inne, także na zeskanowanych stronach, ponieważ modele silnika wykrywają kody w rasteryzowanym obrazie.

Wyodrębnij pozycje z invoice.pdf jako JSON, a następnie zapisz obrazy ze strony 1.

Czy agent potrzebuje wyodrębniania czy konwersji?

Są to różne zadania, a wybór niewłaściwego serwera powoduje zamieszanie.

Chcesz Serwer
Wartości z dokumentu: tekst, tabela, kod kreskowy, właściwości GroupDocs.Parser.Mcp
Dokument w innym formacie, zachowany układ GroupDocs.Conversion.Mcp
Czysty Markdown całego dokumentu dla RAG GroupDocs.Markdown.Mcp
Metadane edytowane lub usunięte, nie tylko odczytane GroupDocs.Metadata.Mcp

Wiele potoków używa dwóch serwerów: konwersji do wprowadzania, parsowania do wyodrębniania.

Uruchom lokalnie przy użyciu Docker

Ten serwer jest dostępny wyłącznie jako obraz Docker. Silnik zawiera około 234 MB modeli ONNX, co przekracza limit 250 MB dla pakietu NuGet, więc nie ma polecenia dnx. Zamontuj folder z dokumentami jako /data:

docker run --rm -i -v $(pwd)/documents:/data \
  ghcr.io/groupdocs-parser/parser-net-mcp:latest

Twój klient AI uruchamia kontener jako proces potomny przez stdio. Nie ma otwartych portów, a dokumenty pozostają na maszynie. Konfiguracja per‑klient dla Claude Desktop, Claude Code, VS Code, Cursor, Windsurf, Cline i Codex znajduje się w Rejestracja w klientach AI.

Jakie są limity?

  • Tryb ewaluacji. Bez licencji wyodrębnianie jest ograniczone; dokładne limity znajdują się na stronie licencjonowania. Poproś agenta najpierw o uruchomienie get_license_status i traktuj nielicencjonowany wynik jako test wstępny, a nie pełne odczytanie.
  • Brak OCR. Tekst w skanie nie może być wyodrębniony.
  • Tylko Docker. Musisz mieć zainstalowany Docker; obraz jest duży, więc pobierz go raz.

FAQ

Czy mogę wyodrębnić tekst z PDF‑a przy użyciu Claude lokalnie, bez przesyłania go?
Tak. Serwer działa w kontenerze na Twoim komputerze, a Claude Desktop komunikuje się z nim przez stdio, więc plik jest odczytywany z zamontowanego folderu i nie jest wysyłany do usługi wyodrębniania.

Dlaczego agent nie zwraca nic dla niektórych PDF‑ów?
Plik prawdopodobnie jest skanem bez warstwy tekstowej. Poproś agenta o uruchomienie get_document_info oraz jednorazowe wywołanie extract_text na jednej stronie, aby to potwierdzić, a następnie użyj extract_barcodes dla kodów lub narzędzia OCR dla słów.

Czy istnieje polecenie dnx dla GroupDocs.Parser.Mcp?
Nie. Ten produkt jest dostępny wyłącznie w Dockerze, więc każda instalacja używa docker run lub wpisu klienta MCP, który uruchamia Docker.

Zagłęb się