An AI agent by měl před tím, než vykreslí jedinou stránku, dokumentu položit tři otázky: kolik má stránek, jak velká je každá stránka a zda potřebuje heslo. Server GroupDocs.Viewer.Mcp odpovídá na první dvě jedním levným voláním (get_view_info), spuštěným lokálně na vašem počítači, a otázka hesla je vyřešena v promptu. Agent pak vykreslí jen stránky, které jsou podstatné:
Co je contract.docx — kolik stránek a jaká velikost stránky?
Verze krok za krokem s konfigurací a řešením problémů je v dokumentaci: Jak zkontrolovat stránky dokumentu před jejich vykreslením.
Proč nejprve kontrolovat?
Každá stránka, kterou nástroj render_page vytvoří, se vrátí agentovi jako vložený PNG, často o velikosti několika stovek kilobajtů. Agent, který vykresluje 60stránkový soubor, aby našel jednu tabulku, zaplatí za 59 obrázků, které nepotřeboval, jak časově, tak v kontextovém okně. Nástroj pro kontrolu, get_view_info, nic nevykresluje. Vrací malý JSON objekt, takže rozhodnutí o tom, co vykreslovat, je založeno na faktech, nikoli na odhadech.
Tento vzor je znovupoužitelný v jakémkoli klientovi: Claude Desktop, Claude Code, Cursor, VS Code s GitHub Copilot nebo Windsurf. Je to zvyk, který vložíte do promptu, nikoli funkce, kterou konfiguruje.
Otázka 1: Kolik stránek je?
get_view_info vrací pageCount. To je jediná ochrana proti zdokumentovanému ostrému okraji: render_page nekontroluje číslo stránky vůči dokumentu. Požádáte o stránku 40 v 12stránkovém souboru a stále obdržíte obrázek, uložený jako <name>_page40.png, stránky, která není stránkou 40.
Prompt, který tuto ochranu vytvoří:
Kolik stránek má zpráva? Pak mi ukaž poslední.
U tabulek je počet ještě důležitější. Engine rozděluje list na stránky a počet může být mnohem větší, než list vypadá. Znalost počtu předem zabraňuje agentovi v renderování všech.
Otázka 2: Jaká je velikost každé stránky?
Jaká je velikost stránek v tomto PDF — Letter nebo A4?
Odpověď uvádí number, width a height pro každou stránku v bodech. 612 x 792 je US Letter; přibližně 595 x 842 je A4. Dokument s jednou na šířku mezi stránkami na výšku to ukazuje ve velikostech a tato stránka je často tabulka nebo výkres, o který někdo žádá.
Dvě další pole, name a visible, jsou vyplněna, pokud formát obsahuje, například názvy listů a skryté snímky nebo listy. Jinak jsou null a true.
Otázka 3: Potřebuje soubor heslo?
get_view_info nemá pole ochrany, takže typ souboru a počet stránek neříkají, zda je potřeba heslo. Soubor chráněný heslem vyžaduje heslo u každého volání, pro oba nástroje. Poskytněte ho hned v promptu:
Heslo pro contract.pdf je v mé zprávě. Zkontrolujte, kolik stránek má, pak mi ukaž stránku 2.
Bez hesla volání selže a agent se vás může zeptat místo hádání. Pokud volání selže, get_view_info vrací text začínající View-info lookup failed for následovaný typem výjimky a zprávou, takže agent může přečíst důvod a požádat o heslo nebo správný název souboru.
Znovupoužitelný prompt pro kontrolu a pak vykreslení
Před vykreslením čehokoli ze souboru uvedeného níže zkontrolujte jeho typ souboru, počet stránek a velikosti stránek. Řekněte mi, co jste našli, a pak vykreslete jen stránky potřebné k odpovědi na mou otázku. Soubor: contract.docx. Otázka: kde je klauzule o ukončení?
Agent zavolá get_view_info, nahlásí typ souboru a počet stránek, vybere stránky a pro každou zavolá render_page. Nástroj get_license_status je třetí nástroj na serveru; použijte jej, když potřebujete vědět, zda budou vykreslené stránky opatřeny vodoznakem.
Příklad relace
Ilustrace založená na dokumentovaném tvaru odpovědi, ne zachycený snímek obrazovky.
You: Inspect report.pdf before rendering anything.
Agent: [calls get_view_info on report.pdf]
report.pdf: Portable Document Format File (.pdf), 2 pages.
Page 1: 612 x 792 points (US Letter). Page 2: 612 x 792 points.
Which page would you like me to render?
Co agent rozhodne a co engine udělá?
| Krok | Agent | Engine |
|---|---|---|
| Vyberte soubor | Vezme název souboru z vašeho promptu | Vyřeší jej ve složce úložiště, vypíše dostupné soubory, pokud název neodpovídá |
| Kontrola | Rozhodne, které otázky jsou podstatné | Vrátí typ souboru, počet stránek a velikosti stránek |
| Vyberte stránky | Mapuje vaši otázku na čísla stránek | Nic |
| Vykreslení | Volá render_page pro každou vybranou stránku |
Vytvoří PNG |
Upřímná omezení
- Evaluation mode. Vykreslené stránky nesou vodotisk pro hodnocení a proces serveru otevře maximálně 15 dokumentů. Zeptejte se „Je server Viewer licencovaný?“, aby agent zavolal
get_license_statuspřed tím, než se spolehnete na výstup. - Počet stránek vám nevybere stránky.
get_view_infoříká, které stránky existují, ne která obsahuje odpověď. Pro to vykreslete stránku obsahu nebo několik kandidátů. - Pouze PNG. Na
render_pageneexistuje volba formátu.
Často kladené otázky
Jak může AI agent získat počet stránek PDF? Pokud je server Viewer připojen, Claude může zavolat get_view_info a přečíst pageCount bez vykreslování čehokoli. Odpověď pochází z dokumentu, ne z odhadu.
Může nástroj MCP pro informace o dokumentu říci agentovi, které stránky vykreslit? Ano. Nejprve mu dejte počet stránek a velikosti, pak mu řekněte, co hledáte. Vykreslí stránky, které odpovídají na otázku.
Nahrává kontrola dokumentu soubor někam? Ne. Server čte soubor ze složky, kterou nakonfigurujete, a vrací malý JSON objekt vašemu klientovi.
Prohloubení
- Dokumentace, kanonický návod: Jak zkontrolovat stránky dokumentu před jejich vykreslením
- Středisko dokumentace: GroupDocs.Viewer MCP Server
- Začněte zde: Multimodální agenti potřebují pixely, ne jen text
- Související: Automatizujte snímky stránek pro zprávy pomocí MCP
- Související: Když je odpověď v grafu: AI agenti čtou diagramy a skeny pomocí MCP
- On-premise a bezpečnostní model: 3 architektury pro AI zpracování dokumentů a ta, která udržuje soubory uvnitř vaší sítě
- Otázky: GroupDocs Viewer forum
- Zdroj: GroupDocs.Viewer.Mcp on GitHub