GroupDocs.Parser MCP Server
MCP server that exposes GroupDocs.Parser as AI-callable tools for extracting text, images, metadata, tables, barcodes, and document info from 50+ document and image formats.
README
GroupDocs.Parser MCP Server
MCP server that exposes GroupDocs.Parser as AI-callable tools for Claude, Cursor, GitHub Copilot, and other MCP agents.
<!-- TODO(manual): record 30s demo per improvement-plan M1 -->
<!--
-->
Installation
<!-- install-buttons:start - generated by install/generate-install-links.ps1; do not edit by hand -->
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/. <!-- install-buttons:end -->
This product ships via Docker (GHCR) only. GroupDocs.Parser's managed DLL embeds ~234 MB of ONNX models, so the packed tool 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-parser/parser-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
| Tool | Description |
|---|---|
ExtractText |
Extracts plain text from a document (whole document or a single page). Truncates very large outputs. |
ExtractImages |
Extracts all embedded images and saves them to storage as <basename>_image<N>.<ext> files |
ExtractMetadata |
Extracts metadata (author, title, dates, custom properties, EXIF, XMP, IPTC) and returns it as JSON |
ExtractTables |
Extracts tables from a document as Markdown (default — renders in chat) or structured JSON |
ExtractBarcodes |
Detects all barcodes / QR codes and returns their decoded values, types, and positions as JSON |
GetDocumentInfo |
Returns the file type, page count, and size of a document as JSON (without modifying it) |
All tools support PDF, DOCX, XLSX, PPTX, HTML, EPUB, MSG, EML, JPG, PNG, TIFF, and 50+ more document and image formats.
Example prompts for AI agents
Copy any of these into Claude Desktop, Cursor, or GitHub Copilot Chat after the server is connected.
- Get a document's structure: "How many pages does invoice.pdf have, and what format is it?"
- Pull a text snippet: "Extract the text from page 2 of contract.docx."
- Mine the metadata: "What's the author and creation date of report.xlsx?"
- Read a structured table: "Pull the line items table out of invoice.pdf as Markdown."
- Scan for barcodes: "Are there any QR codes in shipping-label.png? If so, what do they decode to?"
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:
- Text output may include an evaluation watermark, and other outputs may be size-limited.
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
| Variable | Description | Default |
|---|---|---|
GROUPDOCS_MCP_STORAGE_PATH |
Base folder for input and output files | current directory |
GROUPDOCS_MCP_OUTPUT_PATH |
(Optional) separate folder for output files (used by ExtractImages) |
GROUPDOCS_MCP_STORAGE_PATH |
GROUPDOCS_LICENSE_PATH |
Path to GroupDocs license file. In evaluation mode, text outputs may include a watermark and other outputs may be size-limited | (evaluation mode) |
Usage with Claude Desktop
{
"mcpServers": {
"groupdocs-parser": {
"command": "docker",
"args": ["run", "--rm", "-i", "-v", "/path/to/documents:/data", "ghcr.io/groupdocs-parser/parser-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:latestwith 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-parser": {
"command": "docker",
"args": ["run", "--rm", "-i", "-v", "${input:storage_path}:/data", "ghcr.io/groupdocs-parser/parser-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.
Documentation & guides
Step-by-step deployment guides and a published-package integration test suite live in the companion repo GroupDocs.Parser.Mcp.Tests:
- Install from NuGet
- Run via Docker
- Verify on the MCP registry
- Use with Claude Desktop
- Use with VS Code / GitHub Copilot
- Run the integration tests
License
MIT — see LICENSE
<!-- mcp-name: io.github.groupdocs-parser/groupdocs-parser-mcp -->
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.