Ihr Lieferant wurde übernommen, und „ACME Corp“ ist jetzt „Globex Ltd“ in jedem Vertrag, Zeitplan, Budget und jeder Präsentationsfolie, die ihn erwähnt. Mit dem lokal laufenden GroupDocs.Editor MCP‑Server erledigt Claude Desktop, Cursor oder Copilot das als Batch: Für jede Datei im Ordner ruft er replace_text auf, behält die Formatierung bei, meldet, wie viele Vorkommen geändert wurden, und schreibt nichts für Dateien, die den alten Namen nie erwähnten. Es wird nichts hochgeladen und kein Original wird überschrieben:
Benennen Sie ACME Corp in Globex Ltd in jedem Dokument im Ordner contracts um, behalten Sie die Formatierung bei und geben Sie mir eine Zählung pro Datei.
Die Schritt‑für‑Schritt‑Version befindet sich in der Dokumentation: Wie man Text in einem Ordner von Dokumenten findet und ersetzt, ohne die Formatierung zu zerstören.
Warum ist das eine Aufgabe für ein Werkzeug und nicht für das Modell?
Weil das Ergebnis überprüfbar sein muss. Vierzig Dokumente sind zu viele, um sie visuell zu vergleichen, und ein Modell, das „alle Verträge aktualisiert“, liefert Ihnen nichts zum Gegenüberstellen. Ein Find‑and‑Replace‑Werkzeug gibt Ihnen eine Zahl pro Datei. Die Zahlen bilden die Prüfspur: Sie wissen, welche Dateien geändert wurden, um wie viel, und welche nicht geändert werden mussten.
Es muss außerdem auf die richtige Art langweilig sein. Der fette Firmenname bleibt fett, die Gebührentabelle behält ihr Raster, die Überschriften behalten ihre Stile. Das Modell tippt das Dokument nie neu: Die Engine öffnet es, ersetzt die Wörter und schreibt eine Kopie. Ein Haken bei Server 26.10.0: Diese Kopie wird aus dem HTML‑Bearbeitungsmodell der Engine geschrieben, und ein Word footer wird dabei nicht übernommen. Ein Vertrag, der den Lieferanten im Footer nennt, benötigt stattdessen den paginierten HTML‑Round‑Trip; die FAQ listet auf, was ein Word‑Dokument beibehält.
Was der Agent sieht
Erfasst von GroupDocs.Editor.Mcp 26.10.0 an einem kleinen synthetischen Datensatz: ein Dienstleistungsvertrag, ein NDA, ein Willkommensschreiben, ein dreiseitiges Budget und ein dreifolien‑Review‑Deck.
-> replace_text {"file":{"filePath":"contracts/msa-northwind.docx"},
"find":"ACME Corp","replace":"Globex Ltd","wholeWord":true}
<- Replaced 6 occurrence(s) of 'ACME Corp' in 'msa-northwind.docx'
Saved to: …/msa-northwind_edited.docx
-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"}, ...}
<- Replaced 1 occurrence(s) of 'ACME Corp' in 'nda-northwind.docx'
-> replace_text {"file":{"filePath":"contracts/welcome-letter.docx"}, ...}
<- Text replacement found no matches for 'ACME Corp' in
'welcome-letter.docx'. No file was written.
-> replace_text {"file":{"filePath":"budget.xlsx"}, ..., "worksheet":1}
<- Replaced 1 occurrence(s) of 'ACME Corp' in worksheet 1 of 3 of
'budget.xlsx'
-> replace_text {"file":{"filePath":"review.pptx"}, ..., "slide":1}
<- Replaced 1 occurrence(s) of 'ACME Corp' in slide 1 of 3 of
'review.pptx'
Der Bericht des Agenten schreibt sich von selbst: sechs im Vertrag, eins im NDA, keiner im Willkommensschreiben, eins in der Budget‑Zusammenfassung, eins auf der ersten Folie.
Die Schleife
contracts/ + budget.xlsx + review.pptx
|
+-- for each file:
| replace_text {"find":"ACME Corp","replace":"Globex Ltd",
| "wholeWord":true} (+ "worksheet"/"slide")
| -> "Replaced N occurrence(s) ..." -> <name>_edited.<ext>
| -> "found no matches ... No file was written."
|
'-- report: file -> count; files with 0 listed separately
Zwei Gewohnheiten machen die Schleife zuverlässig. Verwenden Sie wholeWord: true für Namen, damit „ACME Corp“ nicht innerhalb von „ACME Corporation Holdings“ gefunden wird. Und bitten Sie den Agenten, die Dateien mit null Treffern aufzulisten, weil ein Null‑Ergebnis in einer Datei, die Sie ändern wollten, das Einzige ist, das einen zweiten Blick wert ist.
Überprüfung des Batches, bevor Sie etwas ersetzen
Die bearbeiteten Kopien liegen neben den Originalen, bis Sie etwas anderes entscheiden, und das ist der Moment zur Prüfung. Drei einfache Kontrollen fangen fast jedes Problem ab. Vergleichen Sie die pro‑Datei‑Zählungen mit Ihren Erwartungen: Ein Vertrag, der den Lieferanten auf jeder Seite nennt, sollte nicht nur ein Vorkommen melden. Verlassen Sie sich nicht darauf, die gleiche Ersetzung erneut auszuführen: Ein über Formatierung aufgeteilter Ausdruck wird beim zweiten Mal ebenfalls übersehen, und „found no matches“ würde wie ein All‑Clear aussehen. Bitten Sie den Agenten, stattdessen extract_html auf jede bearbeitete Kopie anzuwenden; seine Nur‑Text‑Vorschau verbindet die Formatierungs‑Runs, sodass ein übrig gebliebenes „ACME Corp“ dort erscheint. Varianten der Schreibweise („Acme Corp.“ mit Punkt, „ACME Corporation“) verdienen einen eigenen Durchlauf mit matchCase: false oder einem regulären Ausdruck. Und öffnen Sie je eine bearbeitete Datei jedes Typs – einen Vertrag, eine Arbeitsmappe und ein Deck –, um die Formatierung und den Footer zu bestätigen. Erst dann verschieben Sie die _edited‑Dateien über die Originale oder lassen Ihr Dokumentensystem sie versionieren.
Muster, Groß‑/Kleinschreibung und Format im selben Aufruf
Die Umbenennung ist der häufigste Fall, aber dasselbe Werkzeug deckt den Rest der „Formulierung konsistent machen“-Familie ab. Im selben Testlauf:
-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"},
"find":"v2\\.3\\b","replace":"v2.4","regex":true,
"outputName":"nda-northwind-v2.4.docx"}
<- Replaced 1 occurrence(s) of 'v2\.3\b' in 'nda-northwind.docx'
-> replace_text {"file":{"filePath":"contracts/nda-northwind.docx"},
"find":"acme corp","replace":"Globex Ltd","matchCase":false,
"format":"pdf"}
<- Replaced 1 occurrence(s) of 'acme corp' in 'nda-northwind.docx'
Saved to: …/nda-northwind_edited.pdf
regex: true verwendet einen .NET‑Regulären Ausdruck, mit dem ein Versionssprung oder eine Datumsformat‑Änderung in einem Ordner durchgeführt wird. matchCase: false fängt inkonsistente Groß‑/Kleinschreibung auf. format: "pdf" bearbeitet und konvertiert in einem Schritt, für die Kopie, die an die andere Seite geht.
Ein Hinweis für Coding‑Agenten
Dasselbe Muster funktioniert in einem Repository. Release‑Notes in DOCX und Specs in XLSX sind für sed unsichtbar; Claude Code mit diesem Server kann die Versionszeichenkette in beiden im Rahmen der Release‑Aufgabe erhöhen. Platzieren Sie die Regel in den Projektanweisungen, damit der Agent das Werkzeug nutzt, anstatt zu versuchen, Office‑Dateien zu entzippen:
To change wording in .docx/.xlsx/.pptx/.pdf files in this repo, use the
groupdocs-editor MCP server's replace_text (wholeWord for names, regex for
versions). Report the count per file. Never rewrite an Office file by hand.
Ehrliche Grenzen
- Das Matching erfolgt innerhalb eines einzelnen Formatierungs‑Runs. In unserem Vertrag wurde ein siebtes „ACME Corp“, bei dem „ACME“ kursiv war, nicht ersetzt, und die Zählung von sechs zeigte das. Phrasen, die über Stile hinweg aufgeteilt sind, benötigen den HTML‑Round‑Trip.
- Jeder Ergebnis wird im Stammverzeichnis des Ausgabeverzeichnisses als
<name>_edited.<ext>abgelegt, selbst wenn das Original in einem Unterordner lag. Es wird nichts überschrieben: Ein bereits vergebenes Name erhält eine Nummer (msa-northwind_edited (1).docx), geben Sie alsooutputNamean, wenn Namen kollidieren könnten. - Auf Server 26.10.0 verliert die bearbeitete Kopie eines Word‑Dokuments ihren Footer, und Inhaltssteuerelemente werden zu einfachem Text abgeflacht. Prüfen Sie Dokumente, die den alten Namen im Footer enthalten.
- Tabellenkalkulationen und Präsentationen werden pro Aufruf ein Arbeitsblatt bzw. eine Folie bearbeitet. Im Evaluationsmodus können nur die ersten beiden bearbeitet werden, und der Server gibt dies aus: “Evaluation mode edits only the first 2 slides of a presentation; slide 3 is beyond them.”
- Der Evaluationsmodus fügt außerdem jeder Ausgabe eine Banner‑Zeile hinzu, und ein PDF mit mehr als zwei Seiten wird abgelehnt.
FAQ
Kann es Text in Word, Excel und PowerPoint in einem Batch ersetzen?
Ja. Der Agent ruft das gleiche Werkzeug pro Datei auf und fügt worksheet bzw. slide für Arbeitsmappen und Decks hinzu.
Wie erfahre ich, welche Dateien geändert wurden?
Jeder Aufruf gibt die Zählung zurück, und Dateien ohne Treffer werden überhaupt nicht geschrieben. Bitten Sie den Agenten um eine Tabelle pro Datei.
Werden die Originale überschrieben?
Nein. Jede Bearbeitung schreibt eine neue Datei; die Originale bleiben unverändert, bis Sie sie selbst ersetzen.
Weiterführende Informationen
- Dokumentation, kanonische Anleitung: Wie man Text in einem Ordner von Dokumenten findet und ersetzt, ohne die Formatierung zu zerstören
- Dokumentations‑Hub: GroupDocs.Editor MCP Server
- GroupDocs.Editor MCP product page — Ein‑Klick‑Installation für VS Code und Cursor, Konfigurationen für jeden anderen Client
- Starten Sie hier: Warum ein KI‑Agent Ihr Dokument nicht neu schreiben sollte, um drei Wörter zu ändern
- Verwandt: Word‑Formulare aus einer Tabellenkalkulation mit einem KI‑Agenten ausfüllen, lokal
- Verwandt: Ein Arbeitsblatt bearbeiten, die Arbeitsmappe behalten: chirurgische Bearbeitungen mit einem HTML‑Round‑Trip
- Verwandt: Ein PDF mit einem KI‑Agenten bearbeiten? Zuerst lokal in Word umwandeln
- Vor Ort und Sicherheitsmodell: 3 Architekturen für KI‑Dokumentenverarbeitung und die, die Dateien innerhalb Ihres Netzwerks hält
- Fragen: GroupDocs Editor forum
- Quelle: GroupDocs.Editor.Mcp on GitHub · NuGet package