El presupuesto tiene tres hojas de cálculo, y finanzas quiere que se cambien dos celdas en la segunda. Entregar todo el libro de trabajo a un agente de IA para “actualizar Q3” le invita a reconstruir los tres. Con el servidor GroupDocs.Editor MCP ejecutándose localmente, Claude, Cursor o Copilot extraen solo esa hoja como HTML editable, cambian lo que pediste y lo guardan de nuevo en una copia del libro original, de modo que las demás hojas nunca pasan por el modelo. Las diapositivas funcionan de la misma manera:

En budget.xlsx, en la hoja 2 (Q3), establecer Travel a 12,500 y renombrar Training a “Training (external)”. Dejar las demás hojas sin cambios.

La versión paso a paso está en la documentación: Cómo editar una hoja de cálculo o diapositiva y volver a insertarla en el original.

¿Por qué no entregar el archivo completo al agente?

Porque un modelo no puede contener un libro de trabajo. Puede contener texto. Cada hoja que le das es una hoja que puede “útilmente” reformular: números reformateados, una fórmula convertida en su valor, una columna que no entendió eliminada. Incluso cuando no ocurre nada, no puedes saberlo a partir de la respuesta. La solución es limitar el alcance: dale al agente exactamente la parte que se le pidió cambiar y mantén el resto fuera de su alcance.

HTML es la forma adecuada para esa parte. Las tablas, estilos, fuentes e imágenes se conservan en él, los modelos lo leen y escriben bien, y se corresponde con la estructura original. El texto plano perdería el formato; el XML bruto de .xlsx es un laberinto que ningún agente debería editar.

El proceso de ida y vuelta

budget.xlsx  (3 worksheets: Summary, Q3, Q4)
   |-- extract_html {"file":{...},"worksheet":2} --> budget_worksheet2.html
   |        agent edits the HTML: Travel 9000 -> 12500,
   |        "Training" -> "Training (external)"
   '-- save_from_html {"htmlFile":{"filePath":"budget_worksheet2.html"},
                       "format":"xlsx",
                       "sourceFile":{"filePath":"budget.xlsx"},
                       "worksheet":2}
         --> budget-q3-revised.xlsx : worksheet 2 replaced, 1 and 3 untouched
evaluation mode: worksheets/slides 1-2 can be edited; the server refuses 3+

Qué devolvió el servidor

Capturado de GroupDocs.Editor.Mcp 26.10.0 contra un presupuesto sintético:

-> extract_html {"file":{"filePath":"budget.xlsx"},"worksheet":2}
<- Extracted worksheet 2 of 3 of 'budget.xlsx' as editable HTML
   Saved to: …/budget_worksheet2.html
   Next: edit the saved .html and call save_from_html to write it back
   as DOCX, XLSX, PPTX, PDF or another format.
   Preview (plain text): ... Cost centre Planned (EUR) Owner Hosting
   57600 IT Support 14400 IT Travel 9000 Sales Training 6000 HR

-> save_from_html {"htmlFile":{"filePath":"budget_worksheet2.html"},
     "format":"xlsx","sourceFile":{"filePath":"budget.xlsx"},
     "worksheet":2,"outputName":"budget-q3-revised.xlsx"}
<- Saved 'budget_worksheet2.html' into a copy of 'budget.xlsx',
   replacing worksheet 2 of 3 (XLSX)
   Saved to: …/budget-q3-revised.xlsx

Abrir el resultado confirma el alcance: en Q3, Travel es 12500 y la fila muestra “Training (external)”; Hosting y Support no han cambiado; Summary y Q4 están como estaban. El budget.xlsx original no fue modificado.

Las herramientas se refieren a hojas de cálculo y diapositivas por número, no por nombre; get_document_info devuelve el recuento, por eso el prompt dice “worksheet 2 (Q3)”. La respuesta de extracción incluye una vista previa en texto plano, de modo que el agente pueda comprobar que tiene la hoja correcta antes de editar cualquier cosa, y una línea “Next:” que le indica qué llamada sigue. Los agentes siguen bien esas pistas. Para una diapositiva, la vista previa puede comenzar con el texto de marcador de posición del maestro (“Click to edit Master title style”), por lo que el agente debe revisar el HTML directamente.

Diapositivas, y la única regla para presentaciones

El mismo par funciona en una presentación: extract_html con "slide": 2, editar, save_from_html con "slide": 2 y el original como sourceFile. En nuestra ejecución, la diapositiva 2 de una presentación de revisión de tres diapositivas se exportó como HTML, “12 percent” se convirtió en “14 percent”, y volvió como review-revised.pptx con las diapositivas 1 y 3 intactas.

Para PowerPoint, sourceFile no es opcional. HTML solo no lleva un maestro de diapositivas, y el servidor lo indica en lugar de producir una presentación rota:

-> save_from_html {"htmlFile":{"filePath":"review_slide2.html"},
                   "format":"pptx"}
<- Save from HTML failed for 'review_slide2.html' (-> pptx): 'pptx' output
   cannot be created from HTML alone; pass the original document as
   'sourceFile'.

El mensaje nombra el argumento faltante, por lo que un agente corrige la llamada por sí mismo.

Cuando el proceso de ida y vuelta supera buscar‑y‑reemplazar

replace_text es la vía más corta para una palabra o un nombre. El proceso de ida y vuelta es para todo lo demás: cambiar varias celdas a la vez, reformular una etiqueta y un número juntos, reestructurar una tabla en una diapositiva, o una frase que replace_text no puede ver porque está dividida en dos ejecuciones de formato. También es la forma en que el agente lee una parte antes de decidir qué cambiar.

Leer antes de escribir

La primera mitad del proceso de ida y vuelta es útil por sí sola. Un agente al que se le pregunte “¿qué está planeado para travel en Q3 y quién lo posee?” puede extraer la hoja Q3 y responder desde el HTML sin tocar nada, y un agente que está a punto de editar debe hacer exactamente eso primero: leer la parte, indicar el cambio que pretende hacer, luego escribir. Incluye ese orden en las instrucciones de tu proyecto para que sea la norma:

To change a worksheet or slide, use the groupdocs-editor MCP server:
extract_html for that one part, edit the HTML, save_from_html with the
original as sourceFile and the same worksheet/slide number. Never rebuild
the whole workbook or deck. Say which cells or text you changed.

La última línea es la más importante. “Cambié Travel de 9000 a 12500 y renombré Training en Q3” es una respuesta que un revisor puede verificar contra el archivo en segundos.

Límites honestos

  • El modo de evaluación solo edita las dos primeras hojas de cálculo o diapositivas, y el servidor rechaza la tercera con una razón: “Evaluation mode edits only the first 2 visible worksheets of a workbook; worksheet 3 is beyond them.”
  • Las guardas sin licencia son borradores: la hoja editada obtiene una fila de banner en la parte superior y el libro de trabajo gana una hoja adicional “Evaluation Warning”.
  • El HTML extraído de una ejecución sin licencia comienza con la misma línea de evaluación (la vista previa anterior la muestra), por lo que el agente debe editar las celdas, no esa línea.
  • Los números de hoja y diapositiva comienzan en 1, contando los ocultos. Una diapositiva oculta necesita showHidden: true; una hoja oculta es rechazada sin importar lo que diga showHidden, así que primero hazla visible en el libro.

Preguntas frecuentes

¿Editar una hoja cambia las demás?
No. El HTML editado reemplaza solo la hoja que nombras, en una copia del original; el resto se mantiene del archivo fuente.

¿Puedo hacer esto con diapositivas de PowerPoint?
Sí, usando "slide" en lugar de "worksheet", y pasando el original como sourceFile, que requiere la salida de PowerPoint.

¿Dónde se guarda el resultado?
A un nuevo archivo en la carpeta de almacenamiento, budget-q3-revised.xlsx aquí porque pasamos outputName; el original permanece sin cambios.

Profundizar