MCP server for GroupDocs.Total — annotate, sign, convert, watermark, parse, redact documents via AI.
MCP server for GroupDocs.Total. It provides capabilities to annotate, sign, convert, watermark, parse, and redact documents via AI, exposing these functions through the Model Context Protocol for use by compatible clients.
🛠️ Key Features
Document operations via AI: annotate
Document operations via AI: sign
Document operations via AI: convert
Document operations via AI: watermark
Document operations via AI: parse
Document operations via AI: redact
🚀 Use Cases
Annotating documents using AI
Signing documents using AI
Converting document formats using AI
Adding watermarks with AI
Parsing documents with AI
Redacting sensitive content with AI
⚡ Developer Benefits
Single MCP server interface for multiple document workflows
Clearly scoped document processing functions (annotate, sign, convert, watermark, parse, redact) via AI
⚠️ Limitations
Available capabilities are limited to the operations listed in the provided description (no additional features documented here).
Unified MCP server that exposes the full GroupDocs.Total document-processing toolset — annotation, comparison, conversion, markdown, merging, metadata, parsing, redaction, signing, watermarking, plus cross-product document inspection and page preview — as AI-callable tools for Claude, Cursor, GitHub Copilot, and other MCP agents. Designed to be used standalone — attaching the individual product MCPs (GroupDocs.Annotation.Mcp, GroupDocs.Signature.Mcp, …) alongside is unnecessary and would duplicate tools.
One-click installs pre-fill every supported setting: edit the placeholder host path in
the volume mount after install; an empty GROUPDOCS_LICENSE_PATH runs in evaluation mode.
More clients - ready-made configs for Claude Code, Codex CLI, Visual Studio 2022,
Cursor, Windsurf, Cline, and JetBrains Rider live in install/generated/.
This product ships via Docker (GHCR) only. GroupDocs.Total bundles every engine (including Parser's embedded ONNX models), so the packed tool far exceeds NuGet.org's 250 MB limit - so dnx and
dotnet tool install are not available for it. When upstream ships a
slimmer engine that packs under the limit, the standard NuGet flow returns
(see the revert notes in .github/workflows/publish_prod.yml).
bash
docker run --rm -i \
-v $(pwd)/documents:/data \
ghcr.io/groupdocs-total/total-net-mcp:latest
Images are multi-arch (linux/amd64 + linux/arm64), tagged latest plus an
immutable version tag per release (e.g. :26.7.3). To pin, replace :latest
with the version tag - recommended for shared configs and CI.
Available MCP Tools (38 total)
Tools follow {Product}{Verb}{Noun} PascalCase to disambiguate across domains. Cross-product tools stay short.
Cross-product (2)
Tool
Description
GetDocumentInfo
File type, page count, size as JSON for any document (170+ formats via Parser engine)
GetDocumentPageImage
Render up to 5 pages as inline PNG images (Viewer engine, 170+ formats)
Annotation (8)
Tool
Description
AnnotationAddAnnotation
Add textfield / area / point / arrow / highlight / underline / strikeout annotation
AnnotationGetAnnotations
List all annotations as JSON (id, type, message, page, box, user, replies)
AnnotationUpdateAnnotation
Modify an existing annotation's message and/or bounding box by id
AnnotationRemoveAnnotations
Remove annotations by id list, or all
AnnotationAddReply
Add a reply / comment thread to an existing annotation
AnnotationRemoveReplies
Remove replies by id, by user name, or all
AnnotationImportAnnotations
Import annotations from XML or another annotated document
AnnotationExportAnnotations
Extract annotations to XML (re-importable via Import)
Signature (7)
Tool
Description
SignatureSign
Sign with text / qrcode / barcode / digital certificate signature
SignatureVerify
Verify signatures, return JSON validity report
SignatureSearchTextSignatures
Find embedded text signatures with optional substring filter
SignatureSearchBarcodes
Find barcode signatures with optional decoded-text filter
SignatureSearchQrCodes
Find QR code signatures with optional decoded-text filter
SignatureSearchDigitalSignatures
Find digital certificate signatures (signer, issuer, validity)
SignatureSearchImageSignatures
Find embedded image signatures, return as base64 PNGs
Comparison (1) · Conversion (2) · Markdown (2)
Tool
Description
ComparisonCompare
Compare two documents, produce annotated diff document
ConversionConvert
Convert between PDF, Office, image, HTML, and 50+ more formats
ConversionGetSupportedFormats
List every output format the document can be converted TO
MarkdownConvertToMarkdown
Convert PDF / Office / EPUB / MOBI to clean Markdown
MarkdownComposeFromMarkdown
Compose DOCX / PDF / HTML from Markdown source
Merger (2) · Metadata (2)
Tool
Description
MergerMerge
Combine up to 4 documents into one (PDF / Office / HTML / images)
MergerSplit
Split a document into separate files by page numbers
MetadataReadMetadata
Read all metadata properties (author, title, EXIF, XMP, IPTC, custom) as JSON
MetadataRemoveMetadata
Strip all metadata and save a clean copy
Parser (5) · Redaction (4) · Watermark (3)
Tool
Description
ParserExtractText
Extract plain text (page-by-page or whole document)
ParserExtractImages
Extract embedded images and save them to storage
ParserExtractTables
Extract tables as Markdown or JSON
ParserExtractMetadata
Extract metadata fields (separate from MetadataReadMetadata; Parser-format-aware)
ParserExtractBarcodes
Find and decode embedded barcodes in document pages
RedactionRedactText
Redact text matching a regex with a replacement string
RedactionRedactImageArea
Black out a rectangular region of a document page
RedactionRedactAnnotations
Redact or delete annotations matching a regex
RedactionEraseMetadata
Strip metadata via the Redaction engine (handles formats Metadata can't)
WatermarkAddWatermark
Add a text watermark with configurable font, rotation, opacity
WatermarkSearchWatermarks
List existing watermarks (type, text, position, page) as JSON
WatermarkRemoveWatermarks
Remove watermarks by text filter or all
Example prompts
"Convert contract.docx to PDF, then sign it with a QR code containing 'Signed by Alice', then watermark every page with 'CONFIDENTIAL'"
"Compare old.pdf and new.pdf, list every annotation in the result, and preview page 1"
"Extract all tables from report.xlsx as Markdown and redact every email address"
"Read the metadata of every PDF in /uploads, then strip it, then preview the cleaned page 1 of each"
"Find every barcode in invoice.pdf, then merge invoice.pdf + receipt.pdf into combined.pdf"
Licensing
The MCP server itself is MIT; the underlying GroupDocs engines require a license
for production use. Without one the server runs in evaluation mode:
Each bundled engine applies its own evaluation limits: output watermarks / evaluation notices, page limits, and per-process document-open caps (1-15 documents depending on the engine).
To lift the limits, mount your GroupDocs.Total.lic into the container and point
GROUPDOCS_LICENSE_PATH at it (see the Claude Desktop example above):
To use a license, add "-v", "/path/to/license-folder:/license", "-e", "GROUPDOCS_LICENSE_PATH=/license/GroupDocs.Total.lic" before the image name.
To pin a version, replace :latest with the release tag.
{"inputs":[{"type":"promptString","id":"storage_path","description":"Base folder for input and output files.","password":false}],"servers":{"groupdocs-total":{"command":"docker","args":["run","--rm","-i","-v","${input:storage_path}:/data","ghcr.io/groupdocs-total/total-net-mcp:latest"]}}}
Usage with Docker Compose
bash
cd docker
docker compose up
Edit docker/docker-compose.yml to point volumes at your local documents folder.