Puedes hacer que un agente de IA coloque sus comentarios de revisión dentro del documento en lugar de en el chat. El servidor GroupDocs.Annotation.Mcp permite que un LLM en Claude, Cursor o GitHub Copilot añada resaltados, notas y tachados a un archivo PDF, Word, Excel o PowerPoint, y los escribe localmente en tu máquina:

Resalta la cláusula de pago en la página 2 y añade una nota pidiendo al área legal que lo confirme.

La versión paso a paso con configuración y solución de problemas está en la documentación: How to annotate documents with AI agents using MCP.

¿Por qué se pierde la retroalimentación de IA en una ventana de chat?

Pides a un asistente que revise un contrato y obtienes una lista: “La cláusula 4 traslada la responsabilidad, la cláusula 7 tiene una fecha abierta”. La lista vive en la conversación. El colega que abre el contrato la semana siguiente no ve nada de eso, y tienes que copiar cada punto al párrafo correcto a mano.

El agente no es el problema. Le falta una forma de escribir dentro del archivo. Una revisión solo es útil donde el lector la encontrará, es decir, junto al texto al que se refiere.

¿Cómo se ve el enfoque incorrecto?

El atajo común es pegar el texto del documento en un chat y pedir comentarios. Tres cosas salen mal, y puedes comprobar cada una en un documento propio:

  • Los comentarios no tienen posición. “Página 2, segundo párrafo” es una descripción que debes resolver tú mismo.
  • El resultado es una transcripción, no un entregable. No se puede enviar nada al siguiente revisor excepto una captura de pantalla o un bloque pegado.
  • El documento permanece sin cambios, por lo que la revisión no puede filtrarse, contarse o trasladarse al siguiente borrador.

¿Cuál es el enfoque correcto: anotar documentos con un agente de IA?

Divide el trabajo según lo que cada parte hace mejor. El agente entiende la instrucción “marca cualquier cosa que traslade el riesgo a nosotros”. El motor escribe una anotación real dentro del archivo real. La herramienta que realiza la escritura es add_annotation. Acepta siete tipos de anotación: textfield, area, point, arrow, highlight, underline y strikeout. Sus argumentos son el archivo, el tipo, el texto, un número de página basado en 1 y las coordenadas de documento x/y.

El resultado se guarda como <name>_annotated.<ext> junto a tu original. El original nunca se modifica. La misma llamada funciona en los más de 50 formatos que maneja el motor, de modo que un borrador de Word y un PDF se marcan de la misma manera.

¿Qué herramientas hacen que la ubicación sea correcta?

Las coordenadas son el punto débil de cualquier agente que no pueda ver la página, y la documentación lo dice claramente. Tres herramientas reducen la conjetura:

  • get_document_info devuelve el tipo de archivo, el número de páginas y el tamaño, además del ancho y alto por página cuando el motor los informa, lo que le brinda al agente una caja de página para razonar.
  • get_annotations devuelve las anotaciones existentes con sus cajas delimitadoras, que el agente puede usar como anclas.
  • generate_pages_preview renderiza una página como imagen para que un modelo con capacidad visual pueda localizar el texto antes de anotarlo. Actualmente falla con archivos PDF en Linux; consulta los límites más abajo.

¿Cuál es la trampa en anotaciones encadenadas?

Cada herramienta de escritura guarda un archivo nuevo. Una segunda anotación debe aplicarse al archivo que produjo la primera llamada, no al original, o la primera anotación quedará en un archivo que nadie vuelve a abrir. Dilo en el prompt:

Resalta la cláusula de pago y, luego, en el archivo resultante, tacha la fecha de entrega antigua.

Sesión de ejemplo (abreviada)

Esta es una ilustración construida a partir del comportamiento documentado de las herramientas, no una captura de pantalla.

You:   Highlight the payment clause on page 2 of contract.pdf and add a note
       asking legal to confirm.

Agent: [calls get_document_info on contract.pdf]
       contract.pdf is a PDF with 6 pages.
       [calls add_annotation: type=highlight, page=2, x=100, y=250,
        text="Legal to confirm these payment terms"]
       Added highlight annotation to contract.pdf on page 2.
       The annotated copy is contract_annotated.pdf. Your original is unchanged.

¿Cómo inicio el servidor de anotaciones en mi cliente de IA?

Para ejecutarlo como contenedor, monta la carpeta con tus documentos en /data:

docker run --rm -i -v $(pwd)/documents:/data \
  -e GROUPDOCS_MCP_OUTPUT_PATH=/data/output \
  ghcr.io/groupdocs-annotation/annotation-net-mcp:latest

Si prefieres no usar un contenedor, instala el SDK .NET 10 y lanza dnx GroupDocs.Annotation.Mcp --yes; en Windows esto también es el canal a usar para vistas previas de páginas PDF. La página hub tiene fragmentos de registro listos para Claude Desktop, Claude Code, VS Code con GitHub Copilot, Cursor, Windsurf y otros clientes. Establece GROUPDOCS_MCP_OUTPUT_PATH a una carpeta distinta de la carpeta de almacenamiento antes de encadenar ediciones en un archivo producido. Con la configuración predeterminada (las salidas se guardan en la carpeta de almacenamiento) la segunda escritura falla con being used by another process; con una carpeta de salida separada add_reply, update_annotation y remove_annotations en el archivo producido funcionan todas. Con la imagen Docker, pasa -e GROUPDOCS_MCP_OUTPUT_PATH=/data/output. Después del registro, el cliente lanza el servidor por sí mismo y se comunica con él a través de stdio, de modo que nada escucha en un puerto de red y el servidor no envía contenido del documento a un servicio en la nube.

Límites honestos

  • Modo de evaluación. Sin una licencia, se estampa una insignia de prueba en la parte superior de cada página, por lo que la salida anotada no es distribuible. Pregunta primero “What is the license status of the annotation server?”; el agente llama a get_license_status.
  • La ubicación es aproximada sin ayuda. Un agente que adivina x/y a partir de un prompt coloca una anotación area o point de forma aproximada. Lee primero o renderiza primero para una ubicación precisa.
  • Vista previa en Linux. generate_pages_preview actualmente falla con archivos PDF en Linux, incluida la imagen Docker (TypeInitializationException para Gdip: System.Drawing.Common no es compatible con plataformas que no sean Windows); los documentos Word y otros de Office se renderizan, y en Windows con dnx se renderiza cada formato. Las otras diez herramientas no se ven afectadas.

Preguntas frecuentes

¿Puede Claude añadir comentarios a un PDF? Sí, a través de un servidor MCP que expone una herramienta de anotación. Con GroupDocs.Annotation.Mcp el agente llama a add_annotation y el comentario se escribe en <name>_annotated.pdf.

¿Necesita la IA subir mi documento para anotarlo? No, no a través del servidor: abre el archivo en tu carpeta montada y guarda la copia anotada junto a él. Sólo lo que el modelo ve directamente, como texto que pegues o imágenes de página que el agente visualice, se envía a tu proveedor de modelo.

¿Funciona en Word y Excel, no solo en PDF? Sí. Los mismos tipos de anotación funcionan en PDF, DOCX, XLSX, PPTX e imágenes, con los más de 50 formatos listados en la documentación.

Profundiza