Un agente de IA debe preguntar tres cosas a un documento antes de renderizar una sola página: cuántas páginas tiene, cuán grande es cada página y si necesita una contraseña. El servidor GroupDocs.Viewer.Mcp responde a las dos primeras con una llamada barata (get_view_info), ejecutada localmente en su máquina, y la cuestión de la contraseña se resuelve en el prompt. Entonces el agente renderiza solo las páginas que importan:
¿Qué es contract.docx — cuántas páginas y cuál es el tamaño de página?
La versión paso a paso con configuración y solución de problemas está en la documentación: Cómo comprobar las páginas de un documento antes de renderizarlas.
Por qué inspeccionar primero?
Cada página que la herramienta render_page produce vuelve al agente como un PNG incrustado, a menudo de unos pocos cientos de kilobytes. Un agente que renderiza un archivo de 60 páginas para encontrar una tabla paga por 59 imágenes que no necesitaba, tanto en tiempo como en la ventana de contexto. La herramienta de inspección, get_view_info, no renderiza nada. Devuelve un pequeño objeto JSON, de modo que la decisión sobre qué renderizar se basa en hechos y no en conjeturas.
El patrón es reutilizable en cualquier cliente: Claude Desktop, Claude Code, Cursor, VS Code con GitHub Copilot o Windsurf. Es un hábito que pones en un prompt, no una característica que configuras.
Pregunta 1: ¿Cuántas páginas hay?
get_view_info devuelve pageCount. Esta es la única protección contra un borde afilado documentado: render_page no verifica el número de página contra el documento. Pide la página 40 de un archivo de 12 páginas y aún recibirás una imagen, guardada como <name>_page40.png, de una página que no es la 40.
Un prompt que construye la protección:
¿Cuántas páginas tiene el informe? Luego muéstrame la última.
Para hojas de cálculo el recuento importa aún más. El motor divide una hoja en páginas, y el número puede ser mucho mayor de lo que la hoja parece. Conocerlo primero evita que el agente renderice todas ellas.
Pregunta 2: ¿Cuál es el tamaño de cada página?
¿Cuál es el tamaño de las páginas en este PDF — Letter o A4?
La respuesta enumera number, width y height para cada página, en puntos. 612 por 792 es US Letter; aproximadamente 595 por 842 es A4. Un documento con una página en orientación horizontal entre páginas en orientación vertical lo muestra en los tamaños, y esa página suele ser la tabla o el dibujo que alguien está preguntando.
Otros dos campos, name y visible, se rellenan donde el formato los tiene, por ejemplo nombres de hojas de cálculo y diapositivas u hojas ocultas. De lo contrario son null y true.
Pregunta 3: ¿El archivo necesita una contraseña?
get_view_info no tiene un campo de protección, por lo que el tipo de archivo y el recuento de páginas no indican si se necesita una contraseña. Un archivo protegido por contraseña necesita su contraseña en cada llamada, a cualquiera de las herramientas. Proporciónala desde el principio en el prompt:
La contraseña para contract.pdf está en mi mensaje. Verifica cuántas páginas tiene, luego muéstrame la página 2.
Sin la contraseña la llamada falla, y el agente puede pedirte la contraseña en lugar de adivinar. Si la llamada falla, get_view_info devuelve texto que comienza con View-info lookup failed for seguido del tipo de excepción y el mensaje, de modo que el agente pueda leer la razón y solicitar la contraseña o el nombre correcto del archivo.
Un prompt reutilizable de inspeccionar y luego renderizar
Antes de renderizar cualquier cosa del archivo nombrado a continuación, verifica su tipo de archivo, número de páginas y tamaños de página. Dime lo que encontraste, luego renderiza solo las páginas necesarias para responder a mi pregunta. Archivo: contract.docx. Pregunta: ¿dónde está la cláusula de terminación?
El agente llama a get_view_info, informa el tipo de archivo y el recuento de páginas, elige páginas y llama a render_page para cada una. La herramienta get_license_status es la tercera herramienta en el servidor; úsala cuando necesites saber si las páginas renderizadas tendrán marca de agua.
Sesión de ejemplo
Una ilustración basada en la forma de respuesta documentada, no una captura de pantalla.
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?
¿Qué decide el agente y qué hace el motor?
| Paso | Agente | Motor |
|---|---|---|
| Elegir el archivo | Toma el nombre del archivo de tu prompt | Lo resuelve en la carpeta de almacenamiento, lista los archivos disponibles si el nombre no coincide |
| Inspeccionar | Decide qué preguntas importan | Devuelve el tipo de archivo, número de páginas y tamaños de página |
| Seleccionar páginas | Mapea tu pregunta a números de página | Nada |
| Renderizar | Llama a render_page para cada página elegida |
Produce el PNG |
Límites honestos
- Modo de evaluación. Las páginas renderizadas llevan una marca de agua de evaluación y un proceso del servidor abre como máximo 15 documentos. Pregunta “Is the viewer server licensed?” para que el agente llame a
get_license_statusantes de que confíes en la salida. - El recuento de páginas no elige páginas por ti.
get_view_infoindica qué páginas existen, no cuál contiene la respuesta. Para eso, renderiza una página de contenido o algunas candidatas. - Solo PNG. No hay opción de formato en
render_page.
Preguntas frecuentes
¿Cómo puede un agente de IA obtener el número de páginas de un PDF? Si el servidor Viewer está conectado, Claude puede llamar a get_view_info y leer pageCount sin renderizar nada. La respuesta proviene del documento, no de una suposición.
¿Puede una herramienta MCP de información de documento decirle al agente qué páginas renderizar? Sí. Proporciónale primero el recuento de páginas y los tamaños, luego indícale lo que buscas. Renderiza las páginas que responden a la pregunta.
¿La inspección de un documento lo sube a algún lugar? No. El servidor lee el archivo de la carpeta que configuras y devuelve un pequeño objeto JSON a tu cliente.
Profundiza
- Documentación, guía canónica: Cómo comprobar las páginas de un documento antes de renderizarlas
- Centro de documentación: GroupDocs.Viewer MCP Server
- Comienza aquí: Los agentes multimodales necesitan píxeles, no solo texto
- Relacionado: Automatizar imágenes de página de calidad de captura de pantalla para informes con MCP
- Relacionado: Cuando la respuesta está en el gráfico: agentes de IA leyendo diagramas y escaneos mediante MCP
- En local y modelo de seguridad: 3 arquitecturas para el procesamiento de documentos con IA, y la que mantiene los archivos dentro de tu red
- Preguntas: GroupDocs Viewer forum
- Fuente: GroupDocs.Viewer.Mcp on GitHub