mcpField
G
groupdocs-total-mcp

groupdocs-total-mcp

Local
github.com/groupdocs-totalProductivity0Updated 8w ago

About groupdocs-total-mcp

A unified Docker-based MCP server exposing GroupDocs.Total document tools for annotation, conversion, parsing, redaction, signing, and more. It combines these functions in one server, including document inspection and page previews.

Key features

  1. 01Add, edit, import, and export annotations
  2. 02Compare, convert, merge, and split documents
  3. 03Convert documents to and from Markdown
  4. 04Extract text, images, tables, and barcodes
  5. 05Redact content and manage metadata
  6. 06Sign documents and manage watermarks

Use cases

  1. 01Convert and sign a contract, then add a watermark
  2. 02Compare document versions and preview a page
  3. 03Extract spreadsheet tables and redact email addresses
  4. 04Inspect and clean metadata across PDF files

MCP support

Exposes 38 GroupDocs.Total tools to MCP clients, spanning document processing and cross-product inspection. It is distributed as a Docker image.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"groupdocs-total-groupdocs-total": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GROUPDOCS_MCP_STORAGE_PATH",
"-e",
"GROUPDOCS_MCP_OUTPUT_PATH",
"-e",
"GROUPDOCS_LICENSE_PATH",
"ghcr.io/groupdocs-total/total-net-mcp:26.7.3"
],
"env": {
"GROUPDOCS_MCP_STORAGE_PATH": "<GROUPDOCS_MCP_STORAGE_PATH>",
"GROUPDOCS_MCP_OUTPUT_PATH": "<GROUPDOCS_MCP_OUTPUT_PATH>",
"GROUPDOCS_LICENSE_PATH": "<GROUPDOCS_LICENSE_PATH>"
}
}
}
}
Run commanddocker run -i --rm -e GROUPDOCS_MCP_STORAGE_PATH -e GROUPDOCS_MCP_OUTPUT_PATH -e GROUPDOCS_LICENSE_PATH ghcr.io/groupdocs-total/total-net-mcp:26.7.3
Environment variables to set
GROUPDOCS_MCP_STORAGE_PATH
GROUPDOCS_MCP_OUTPUT_PATH
GROUPDOCS_LICENSE_PATH

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocighcr.io/groupdocs-total/total-net-mcp:26.7.3

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

GroupDocs.Total MCP Server

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.

GHCR MCP Registry Integration tests License: MIT

Installation

Install in VS Code Install in VS Code Insiders Add to Cursor Codex CLI setup Windsurf setup

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).

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.9.0). 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)
ToolDescription
GetDocumentInfoFile type, page count, size as JSON for any document (170+ formats via Parser engine)
GetDocumentPageImageRender up to 5 pages as inline PNG images (Viewer engine, 170+ formats)
Annotation (8)
ToolDescription
AnnotationAddAnnotationAdd textfield / area / point / arrow / highlight / underline / strikeout annotation
AnnotationGetAnnotationsList all annotations as JSON (id, type, message, page, box, user, replies)
AnnotationUpdateAnnotationModify an existing annotation's message and/or bounding box by id
AnnotationRemoveAnnotationsRemove annotations by id list, or all
AnnotationAddReplyAdd a reply / comment thread to an existing annotation
AnnotationRemoveRepliesRemove replies by id, by user name, or all
AnnotationImportAnnotationsImport annotations from XML or another annotated document
AnnotationExportAnnotationsExtract annotations to XML (re-importable via Import)
Signature (7)
ToolDescription
SignatureSignSign with text / qrcode / barcode / digital certificate signature
SignatureVerifyVerify signatures, return JSON validity report
SignatureSearchTextSignaturesFind embedded text signatures with optional substring filter
SignatureSearchBarcodesFind barcode signatures with optional decoded-text filter
SignatureSearchQrCodesFind QR code signatures with optional decoded-text filter
SignatureSearchDigitalSignaturesFind digital certificate signatures (signer, issuer, validity)
SignatureSearchImageSignaturesFind embedded image signatures, return as base64 PNGs
Comparison (1) · Conversion (2) · Markdown (2)
ToolDescription
ComparisonCompareCompare two documents, produce annotated diff document
ConversionConvertConvert between PDF, Office, image, HTML, and 50+ more formats
ConversionGetSupportedFormatsList every output format the document can be converted TO
MarkdownConvertToMarkdownConvert PDF / Office / EPUB / MOBI to clean Markdown
MarkdownComposeFromMarkdownCompose DOCX / PDF / HTML from Markdown source
Merger (2) · Metadata (2)
ToolDescription
MergerMergeCombine up to 4 documents into one (PDF / Office / HTML / images)
MergerSplitSplit a document into separate files by page numbers
MetadataReadMetadataRead all metadata properties (author, title, EXIF, XMP, IPTC, custom) as JSON
MetadataRemoveMetadataStrip all metadata and save a clean copy
Parser (5) · Redaction (4) · Watermark (3)
ToolDescription
ParserExtractTextExtract plain text (page-by-page or whole document)
ParserExtractImagesExtract embedded images and save them to storage
ParserExtractTablesExtract tables as Markdown or JSON
ParserExtractMetadataExtract metadata fields (separate from MetadataReadMetadata; Parser-format-aware)
ParserExtractBarcodesFind and decode embedded barcodes in document pages
RedactionRedactTextRedact text matching a regex with a replacement string
RedactionRedactImageAreaBlack out a rectangular region of a document page
RedactionRedactAnnotationsRedact or delete annotations matching a regex
RedactionEraseMetadataStrip metadata via the Redaction engine (handles formats Metadata can't)
WatermarkAddWatermarkAdd a text watermark with configurable font, rotation, opacity
WatermarkSearchWatermarksList existing watermarks (type, text, position, page) as JSON
WatermarkRemoveWatermarksRemove 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):

Configuration

VariableDescriptionDefault
GROUPDOCS_MCP_STORAGE_PATHBase folder for input and output filescurrent directory
GROUPDOCS_MCP_OUTPUT_PATH(Optional) separate folder for output filesGROUPDOCS_MCP_STORAGE_PATH
GROUPDOCS_LICENSE_PATHPath to GroupDocs license file(evaluation mode)

Usage with Claude Desktop

{
  "mcpServers": {
    "groupdocs-total": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "-v", "/path/to/documents:/data", "ghcr.io/groupdocs-total/total-net-mcp:latest"]
    }
  }
}

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.

Usage with VS Code / GitHub Copilot

Use the Install in VS Code button above, or add to .vscode/mcp.json (also in install/generated/vscode-mcp.json):

{
  "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

cd docker
docker compose up

Edit docker/docker-compose.yml to point volumes at your local documents folder.

License

MIT — see LICENSE

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.