“Rename ACME Corp to Globex in this contract” bir kişi için üç saniyelik bir iştir ve bir AI ajanı için bir tuzaktır. Açık yol, belgeyi okuyup yenisini yazmak, stilleri, tablo kenarlıklarını, başlıkları ve gözden geçirenin başka bir şeyin hareket etmediği konusundaki güvenini ortadan kaldırır. GroupDocs.Editor MCP sunucusu yerel olarak çalışırken, Claude, Cursor veya Copilot dosyayı yeniden yazmak yerine düzenler: kelimeleri bulur, yerinde değiştirir, formatlamayı korur ve kaç tane değiştiğini size söyler:

contract.docx içinde ACME Corp’u Globex Ltd ile yeniden adlandırın ve formatlamayı koruyun.

Kurulum, istemler ve sorun giderme adımlarını içeren adım adım sürüm belgelerde bulunabilir: How to edit documents with AI agents using MCP.

Model dosyayı yeniden yazdığında ne yanlış gider?

Bir dil modeli bir .docx dosyasını tutmaz. Metin tutar. Ona “sözleşmeyi güncelle” dediğinizde doğal yol, kelimeleri okuyup değiştirmek ve kendi kopyasından yeni bir belge üretmektir. Bu süreçte üç şey kaybolur:

Biçimlendirme. Kalın taraf isimleri, numaralı başlıklar, tablo ızgara çizgileri, ücret tablosunun sütun genişlikleri, sayfa numaralı alt bilgi: bunların hiçbiri modelin okuduğu metnin bir parçası değildir, bu yüzden bir şey yeniden inşa etmedikçe yolculuktan sağ çıkmaz.

Modelin dokunması istenmeyen her şey. Yeniden üretim, her cümlenin tekrar modele geçmesi demektir. Bir madde “düzenlenebilir”, bir sayı yeniden biçimlendirilebilir, bağlam penceresi dolduğu için bir cümle atılabilir. Gözden geçiren artık üç kelimelik bir değişikliğe güvenmek için tüm belgeyi karşılaştırmak zorunda.

Denetim izi. “Sözleşmeyi güncelledim” modeli bir isim mi yoksa yedi isim mi değiştirdiği fark etmeksizin aynı yanıttır. Bir sayı yoktur ve dikkatli bir düzenlemeyi kendinden emin bir düzenlemeden ayırt etmenin bir yolu yoktur.

Zaten var olan yalnızca DOCX düzenleme sunucuları bu ilk sorunu Word için çözdü. Diğer ikisi ve Word olmayan her format hâlâ açık.

Hedefli bir düzenleme nasıl görünür?

İki çağrı. “ACME Corp” ifadesinin yedi kez geçtiği sentetik bir hizmet sözleşmesi üzerinde GroupDocs.Editor.Mcp 26.10.0’dan yakalanmıştır:

-> get_document_info {"file":{"filePath":"contract.docx"}}
<- { "family": "WordProcessing", "pageCount": 1, "canEdit": true,
     "canSaveTo": [ "docx", "doc", "rtf", "odt", "pdf", "md", ... ] }

-> replace_text {"file":{"filePath":"contract.docx"},
                 "find":"ACME Corp","replace":"Globex Ltd","wholeWord":true}
<- Replaced 6 occurrence(s) of 'ACME Corp' in 'contract.docx'
   Saved to: …/contract_edited.docx

-> replace_text {"file":{"filePath":"contract.docx"},
                 "find":"Initech","replace":"Globex Ltd"}
<- Text replacement found no matches for 'Initech' in 'contract.docx'.
   No file was written.

Düzenlenmiş kopya kalın taraf adını, başlık stillerini ve ücret tablosunu korur. Orijinal dokunulmaz; sonuç, depolama klasöründeki yeni bir dosya contract_edited.docx.

Neden altı ve yedi değil?

Bu, iki kez okunmaya değer bir detaydır. Yedinci “ACME Corp” bildirim maddesinde yer alır; burada “ACME” italik, " Corp" ise normaldir. Dosyada bunlar iki biçimlendirme akışıdır ve replace_text bir akış içinde eşleşir. Tahmin etmedi ve eşleşmeyi zorlamak için stilleri birleştirmedi; altıyı raporladı ve yedinci hâlâ “ACME Corp”.

Bu, sözleşmeleri düzenleyen bir araçta istediğiniz davranıştır. Beklediğinizden düşük bir sayı, bakmanız için bir ipucu olur; sessiz bir “tam” yeniden yazma değildir. Ajan, sunucunun sunduğu diğer yolu izleyebilir: o kısmı HTML olarak çıkart, düzenle ve geri kaydet. round-trip post bunu kapsar.

Çağrılar, sırayla

user              agent                        Editor MCP server
 |  "Rename ACME Corp to Globex Ltd in contract.docx"          |
 |---------------->|                                           |
 |                 |-- get_document_info {"file":...} -------->|
 |                 |<- WordProcessing, 1 page, canEdit --------|
 |                 |-- replace_text {"find":"ACME Corp",       |
 |                 |     "replace":"Globex Ltd",               |
 |                 |     "wholeWord":true} ------------------->|
 |                 |<- "Replaced 6 occurrence(s) ...           |
 |                 |    Saved to: .../contract_edited.docx" ---|
 |<- "6 changed; one more is split across formatting - check  |
 |    the notices clause. The original is kept."               |
      (a find that matches nothing: 'No file was written.')

Bunun sadece bir Word hilesinden daha fazlası olmasının nedeni

Aynı çağrı bir çalışma sayfası, bir slayt, bir PDF veya bir metin dosyasında çalışır. Testimizde, “worksheet”: 1 bütçenin özet sayfasındaki tedarikçiyi yeniden adlandırdı ve diğer iki sayfayı olduğu gibi bıraktı; “slide”: 1 aynı şeyi bir inceleme sunumunda yaptı. “format”: “pdf” bir çağrıda düzenler ve dönüştürür, böylece “adı düzelt ve bana bir PDF gönder” tek adımdır. “regex”: true sürüm dizeleri gibi kalıpları işler.

Düzenlemeden önce, get_document_info ajanı neyle uğraştığı konusunda bilgilendirir: aile, sayfa, çalışma sayfası veya slayt sayısı, dosyanın şifre korumalı olup olmadığı ve hangi formatlara kaydedebileceği. Dikkatli bir ajan önce bunu çağırır ve siz de ona sorabilirsiniz.

Kurulum

dnx GroupDocs.Editor.Mcp --yes

GROUPDOCS_MCP_STORAGE_PATH‘i ajanın düzenleyebileceği klasöre işaret edecek şekilde ayarlayın veya Docker imajı ghcr.io/groupdocs-editor/editor-net-mcp kullanın. Müşteri başına yapılandırma documentation hub içinde bulunur. Motorun kendisinde ne değiştiği GroupDocs.Editor for .NET 26.6 release notes içinde yer alır.

Dürüst sınırlamalar

  • replace_text bir biçimlendirme akışı içinde eşleşir; stiller arasında bölünmüş bir ifade bulunmaz ve sayı bunu gösterir.
  • İzlenen değişiklikler ve yorumlar yoktur: sonuç bir düzenlenmiş kopyadır, kırmızı çizgi (redline) değildir.
  • Değerlendirme modu: her çıktı bir değerlendirme banner satırıyla başlar, kaydedilen çalışma kitapları ekstra bir çalışma sayfası alır ve yalnızca ilk iki çalışma sayfası veya slayt düzenlenebilir. Sunucu üçüncüyü reddeder ve nedenini söyler.
  • PDF düzenleme, düzenlenebilir HTML veya Word’e dönüştürüp geri dönüştürmedir; yerinde PDF düzenleme değildir.

SSS

Ajan orijinal dosyamı üzerine yazacak mı?
Hayır. Her düzenleme varsayılan olarak yeni bir dosya yazar, <name>_edited.<ext> ya da verdiğiniz outputName, depolama klasörüne.

Metin belgede yoksa ne olur?
Hiçbir şey yazılmaz. Sunucu “found no matches … No file was written.” yanıtını verir, böylece ajan size söyleyebilir, değişmemiş bir kopya geri vermek yerine.

Word yüklü olmadan çalışır mı?
Evet. Sunucu, GroupDocs.Editor motoru ile yerel olarak çalışır; Office kurulumu ve yükleme gerekmez.

Daha derine in