GroupDocs.Editor MCP server lets AI agents like Claude, Cursor, and Copilot make targeted edits to documents — find and replace that keeps the formatting, fill Word forms, edit one worksheet or slide and put it back, turn a PDF into editable Word — in Word, Excel, PowerPoint, PDF, e-book and email formats, locally on your machine, without rewriting the document.
Run it with one command. The Docker image is self-contained — the runtime and every native dependency the engine needs are inside it:
docker run --rm -i -v $(pwd)/documents:/data \
ghcr.io/groupdocs-editor/editor-net-mcp:latest
With the .NET 10 SDK installed, the same server also runs without Docker:
dnx GroupDocs.Editor.Mcp --yes
Both are the .NET build of the server and run on Windows, Linux, and macOS. Other platforms will each get their own launcher — see Install for your platform.
Or use the guided installer to register the server in your AI client, verify the setup, and configure shared folders in one pass.
Then ask your agent, in plain language:
In contract.docx, replace ACME Corp with Globex Ltd and keep the formatting.
The pattern behind every scenario — captured from the server:
user agent Editor MCP server
| "Replace ACME Corp with Globex Ltd in contract.docx" |
|-------------->| |
| |-- get_document_info ------------------------->|
| | {"file":{"filePath":"contract.docx"}} |
| |<- {"family":"WordProcessing","pageCount":1} --|
| |-- replace_text ------------------------------>|
| | {"find":"ACME Corp","replace":"Globex Ltd", |
| | "wholeWord":true} |
| |<- "Replaced 6 occurrence(s) ... |
| | Saved to: .../contract_edited.docx" -------|
|<- "6 places changed, formatting kept; the original is untouched"
(a find that matches nothing: "No file was written")
The agent never re-types the document. It names the change, the engine applies it to the original file, and the response says how many places changed — so a find that matched nothing is visible, not silently “done”.
Edit, don’t regenerate
Ask a model to “change three words in this contract” without an editing tool and it reads the text and writes a new document: styles, tables and headers re-created from memory, and any clause it re-typed can drift without anyone noticing. An editing tool inverts that. The document stays the original file; only the named change is applied; the result is a copy with a count.
Regenerate the document Edit the document
------------------------------------- -------------------------------------
agent reads the text, writes a new agent names the change: find/replace,
file from memory one worksheet, one form field
styles, tables, headers re-typed everything else is the original file
silent drift in clauses it re-wrote a count of what changed, nothing else
no record of what changed no match = no file written
+--------------+ +--------------------+ +------------------+
| AI client | stdio | MCP server process | reads / | local filesystem |
| (Claude, VS | <-----> | (GroupDocs engine) | <-----> | storage / output |
| Code, agent) | JSON-RPC | child process | writes | folders |
+--------------+ +--------------------+ +------------------+
The server uses MCP’s local stdio transport: your AI client starts the server as a child process and talks to it over standard input/output. No inbound ports, no external endpoints, no telemetry — the data path is agent → local server → local filesystem. Edited copies are written next to the originals, which are never overwritten. Details: On-premise architecture.