Ein KI‑Agent sollte ein Dokument drei Dinge fragen, bevor er eine einzelne Seite rendert: wie viele Seiten es hat, wie groß jede Seite ist und ob ein Passwort benötigt wird. Der GroupDocs.Viewer.Mcp‑Server beantwortet die ersten beiden mit einem günstigen Aufruf (get_view_info), der lokal auf Ihrem Rechner ausgeführt wird, und die Passwortfrage wird im Prompt geklärt. Der Agent rendert dann nur die Seiten, die wichtig sind:
Was ist contract.docx — wie viele Seiten und welche Seitengröße?
Die schrittweise Version mit Konfiguration und Fehlersuche finden Sie in der Dokumentation: Wie man die Seiten eines Dokuments prüft, bevor man sie rendert.
Warum zuerst prüfen?
Jede Seite, die das Werkzeug render_page erzeugt, wird dem Agenten als eingebettetes PNG zurückgesendet, oft ein paar hundert Kilobyte. Ein Agent, der eine 60‑seitige Datei rendert, um eine Tabelle zu finden, zahlt für 59 Bilder, die er nicht brauchte, sowohl in Zeit als auch im Kontextfenster. Das Prüf‑Werkzeug get_view_info rendert nichts. Es gibt ein kleines JSON‑Objekt zurück, sodass die Entscheidung, was gerendert wird, auf Fakten und nicht auf Vermutungen basiert.
Das Muster ist in jedem Client wiederverwendbar: Claude Desktop, Claude Code, Cursor, VS Code mit GitHub Copilot oder Windsurf. Es ist eine Gewohnheit, die Sie in einen Prompt einbauen, keine Funktion, die Sie konfigurieren.
Frage 1: Wie viele Seiten gibt es?
get_view_info gibt pageCount zurück. Dies ist die einzige Absicherung gegen einen dokumentierten scharfen Rand: render_page prüft die Seitennummer nicht gegen das Dokument. Wenn Sie nach Seite 40 einer 12‑seitigen Datei fragen, erhalten Sie trotzdem ein Bild, gespeichert als <name>_page40.png, einer Seite, die nicht Seite 40 ist.
Ein Prompt, der die Absicherung einbaut:
Wie viele Seiten hat der Bericht? Zeigen Sie mir dann die letzte.
Bei Tabellenkalkulationen ist die Anzahl noch wichtiger. Die Engine teilt ein Blatt in Seiten auf, und die Zahl kann viel größer sein, als das Blatt aussieht. Wenn man sie zuerst kennt, verhindert man, dass der Agent alle rendert.
Frage 2: Welche Größe hat jede Seite?
Welche Größe haben die Seiten in diesem PDF — Letter oder A4?
Die Antwort listet number, width und height für jede Seite in Punkten auf. 612 × 792 entspricht US Letter; etwa 595 × 842 entspricht A4. Ein Dokument mit einer Querformatseite unter Hochformatseiten zeigt dies in den Größen, und diese Seite ist oft die Tabelle oder die Zeichnung, nach der jemand fragt.
Zwei weitere Felder, name und visible, werden ausgefüllt, wenn das Format sie hat, zum Beispiel Arbeitsblattnamen und versteckte Folien oder Blätter. Andernfalls sind sie null bzw. true.
Frage 3: Benötigt die Datei ein Passwort?
get_view_info hat kein Schutzfeld, daher geben Dateityp und Seitenzahl keinen Aufschluss darüber, ob ein Passwort benötigt wird. Eine passwortgeschützte Datei benötigt ihr Passwort bei jedem Aufruf, für jedes Werkzeug. Geben Sie es im Prompt im Voraus an:
Das Passwort für contract.pdf befindet sich in meiner Nachricht. Prüfen Sie, wie viele Seiten es hat, und zeigen Sie mir dann Seite 2.
Ohne das Passwort schlägt der Aufruf fehl, und der Agent kann Sie danach fragen, anstatt zu raten. Wenn der Aufruf fehlschlägt, gibt get_view_info einen Text zurück, der mit View-info lookup failed for beginnt, gefolgt vom Ausnahme‑Typ und der Meldung, sodass der Agent den Grund lesen und nach dem Passwort oder dem richtigen Dateinamen fragen kann.
Ein wiederverwendbarer Prüfen‑dann‑Render‑Prompt
Bevor Sie irgendetwas aus der unten genannten Datei rendern, prüfen Sie deren Dateityp, Seitenzahl und Seitengrößen. Teilen Sie mir mit, was Sie gefunden haben, und rendern Sie dann nur die Seiten, die zur Beantwortung meiner Frage nötig sind. Datei: contract.docx. Frage: Wo befindet sich die Kündigungsklausel?
Der Agent ruft get_view_info auf, meldet den Dateityp und die Seitenzahl, wählt Seiten aus und ruft render_page für jede auf. Das Werkzeug get_license_status ist das dritte Werkzeug auf dem Server; verwenden Sie es, wenn Sie wissen müssen, ob gerenderte Seiten mit einem Wasserzeichen versehen werden.
Beispiel‑Sitzung
Eine Illustration basierend auf der dokumentierten Antwortstruktur, kein aufgenommenes Bildschirmfoto.
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?
Was entscheidet der Agent und was macht die Engine?
| Schritt | Agent | Engine |
|---|---|---|
| Datei auswählen | Nimmt den Dateinamen aus Ihrem Prompt | Löst ihn im Speicherordner auf, listet verfügbare Dateien auf, wenn der Name nicht übereinstimmt |
| Prüfen | Entscheidet, welche Fragen relevant sind | Gibt Dateityp, Seitenzahl und Seitengrößen zurück |
| Seiten auswählen | Ordnet Ihre Frage Seitenzahlen zu | Keine |
| Rendern | Ruft render_page für jede ausgewählte Seite auf |
Erzeugt das PNG |
Ehrliche Grenzen
- Evaluationsmodus. Gerenderte Seiten tragen ein Evaluations‑Wasserzeichen und ein Server‑Prozess öffnet höchstens 15 Dokumente. Fragen Sie „Ist der Viewer‑Server lizenziert?“, damit der Agent
get_license_statusaufruft, bevor Sie sich auf die Ausgabe verlassen. - Die Seitenzahl wählt nicht die Seiten für Sie aus.
get_view_infogibt an, welche Seiten existieren, nicht, welche die Antwort enthält. Dafür rendern Sie eine Inhaltsseite oder ein paar Kandidaten. - Nur PNG. Es gibt keine Format‑Option bei
render_page.
FAQ
Wie kann ein KI‑Agent die Seitenzahl eines PDFs erhalten? Wenn der Viewer‑Server verbunden ist, kann Claude get_view_info aufrufen und pageCount lesen, ohne etwas zu rendern. Die Antwort stammt aus dem Dokument, nicht aus einer Vermutung.
Kann ein Dokument‑Info‑MCP‑Tool dem Agenten sagen, welche Seiten gerendert werden sollen? Ja. Geben Sie zuerst die Seitenzahl und die Größen an, dann teilen Sie ihm mit, wonach Sie suchen. Es rendert die Seiten, die die Frage beantworten.
Lädt das Prüfen eines Dokuments es irgendwo hoch? Nein. Der Server liest die Datei aus dem von Ihnen konfigurierten Ordner und gibt ein kleines JSON‑Objekt an Ihren Client zurück.
Weiterführende Informationen
- Dokumentation, kanonische Anleitung: Wie man die Seiten eines Dokuments prüft, bevor man sie rendert
- Dokumentations‑Hub: GroupDocs.Viewer MCP Server
- Hier beginnen: Multimodale Agenten benötigen Pixel, nicht nur Text
- Verwandt: Automatisieren Sie screenshot‑Qualität Seitenbilder für Berichte mit MCP
- Verwandt: Wenn die Antwort in der Grafik liegt: KI‑Agenten lesen Diagramme und Scans über MCP
- On‑Premise und Sicherheitsmodell: 3 Architekturen für KI‑Dokumentenverarbeitung und die, die Dateien innerhalb Ihres Netzwerks hält
- Fragen: GroupDocs Viewer Forum
- Quelle: GroupDocs.Viewer.Mcp auf GitHub