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_status př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_page neexistuje 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í