{
  "markdown": "# Nutrient Document Engine MCP Server\n\n![Document workflows using natural language](https://raw.githubusercontent.com/PSPDFKit/nutrient-document-engine-mcp-server/main/resources/readme-header.png)\n\n[![npm](https://img.shields.io/npm/v/%40nutrient-sdk/document-engine-mcp-server)](https://www.npmjs.com/package/@nutrient-sdk/document-engine-mcp-server)\n\n**Connect AI agents to document processing.**\n\nThis MCP server exposes document processing capabilities through natural language, supporting both direct human interaction and AI agent tool calling.\n\n## Which MCP Server Should I Use?\n\n| Server | Best for | Deployment | Core capabilities |\n|---|---|---|---|\n| [Nutrient DWS MCP Server](https://github.com/PSPDFKit/nutrient-dws-mcp-server) | Cloud document workflows | Nutrient-hosted API (API key) | Convert, OCR, redact, sign, extract, watermark, automation |\n| [Nutrient Document Engine MCP Server](https://github.com/PSPDFKit/nutrient-document-engine-mcp-server) | Self-hosted document workflows | On-prem/private cloud | Document processing with deployment control and data residency |\n\nYou are in the **Document Engine MCP Server** repo. Choose this when you need self-hosted/on-prem document workflows and deployment control.\n\n- Ecosystem overview: [Nutrient AI Infrastructure](https://www.nutrient.io/ai/infrastructure/)\n- Product landing page: [Nutrient MCP Server](https://www.nutrient.io/mcp-server-pdf-automation-llm/)\n\n## Example Conversations\n\nOnce configured, you (or your agent) can interact with documents through natural language:\n\n**You:** *\"What documents do I have available?\"*  \n**AI:** *\"I can see you have 3 documents: annual-report.pdf, contract-draft.pdf, and tax-form-2023.pdf. Would you like me to analyze any of these?\"*\n\n**You:** *\"Extract all the names and phone numbers from these invoices\"*  \n**AI:** *\"I found 12 contacts: John Smith (555-0123), Sarah Johnson (555-0456)...\"*\n\n**You:** *\"Redact all social security numbers from these tax forms\"*  \n**AI:** *\"I've identified and redacted 3 SSNs across 2 documents. The redacted versions are ready.\"*\n\n**You:** *\"Split this 50-page contract into separate sections\"*  \n**AI:** *\"I've split the contract into 5 sections: Terms (pages 1-8), Payment (pages 9-15)...\"*\n\n## Setup with Claude Desktop\n\n![Document Engine MCP Server + Claude Desktop](https://raw.githubusercontent.com/PSPDFKit/nutrient-document-engine-mcp-server/main/resources/claude-document-engine-mcp.gif?raw=true)\n\n### Prerequisites\n- **Claude Desktop** - [Download from Anthropic](https://claude.ai/download).\n- **Docker Compose** - [Download from Docker](https://docs.docker.com/compose/). For running Nutrient Document Engine locally.\n- **Node.js 18+** - This MCP server runs via `npx`.\n\n### Licensing\n\nNutrient Document Engine runs with an evaluation license by default. Please see [Removing Evaluation Limitations](#removing-evaluation-watermarks-and-limitations) section on how to remove the evaluation limitations.\n\n### 1. Start Nutrient Document Engine\nOpen a terminal window, then run:\n\n```bash\ngit clone https://github.com/PSPDFKit/nutrient-document-engine-mcp-server.git\ncd nutrient-document-engine-mcp-server\ndocker-compose up -d\n```\n\n### 2. Connect Claude Desktop\n\nAdd this to your Claude Desktop config (Settings → Developer → Edit Config):\n\n```json\n{\n  \"mcpServers\": {\n    \"nutrient-document-engine\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@nutrient-sdk/document-engine-mcp-server\"],\n      \"env\": {\n        \"DASHBOARD_USERNAME\": \"admin\",\n        \"DASHBOARD_PASSWORD\": \"password\",\n        \"DOCUMENT_ENGINE_BASE_URL\": \"http://localhost:5000\",\n        \"DOCUMENT_ENGINE_API_AUTH_TOKEN\": \"secret\"\n      }\n    }\n  }\n}\n```\n\n### 3. Restart Claude Desktop\n\n### 4. Upload and Process Documents\n1. Open your web browser and go to http://localhost:5100/dashboard.\n2. Upload the documents you want to work with by using the drag-and-drop interface.\n3. Switch back to Claude Desktop and ask questions like:\n   *\"List my documents and extract text from the contract\"*\n\n## HTTP Transport Security\n\nThe optional HTTP transport binds to `127.0.0.1` by default. A non-loopback `MCP_HOST` requires\n`MCP_HTTP_AUTH_TOKEN`; the server refuses to start without a nonempty token. Clients must send the\ntoken on every `/mcp` request as `Authorization: Bearer <token>`. If a token is set for a loopback\nHTTP server, `/mcp` requires it there too. This token does not protect `/health` or `/dashboard`;\ndashboard access uses `DASHBOARD_USERNAME` and `DASHBOARD_PASSWORD`.\n\n```bash\n# Local-only HTTP transport; no MCP bearer token required.\nMCP_TRANSPORT=http npx @nutrient-sdk/document-engine-mcp-server\n\n# Network-accessible HTTP transport; bearer authentication is required.\nMCP_TRANSPORT=http MCP_HOST=0.0.0.0 MCP_HTTP_AUTH_TOKEN=replace-with-a-secret \\\n  npx @nutrient-sdk/document-engine-mcp-server\n```\n\nThe default stdio transport is unchanged and never requires `MCP_HTTP_AUTH_TOKEN`.\n\n## Features\n\nThis MCP server provides document processing tools in these areas:\n\n**Content Access**: Extract text, search documents, render pages as images, extract form data and table structures.\n\n**Document Editing**: Split documents, add watermarks, duplicate documents, fill PDF forms.\n\n**Security**: Create and apply redactions for sensitive data using preset patterns (SSNs, credit cards, etc.) or custom regex.\n\n**Annotations**: Add, read, and delete document annotations including highlights, notes, and stamps.\n\n**System**: Document discovery, metadata retrieval, and health monitoring.\n\n## Use with Other AI Platforms\n\nThis MCP server works with any AI platform that supports the Model Context Protocol:\n\n- **Claude Desktop** - Quick setup with the configuration above.\n- **LangGraph** - Integrate with [LangGraph agents](examples/langgraphjs) for complex workflows.\n- **OpenAI APIs** - Connect through MCP-compatible frameworks.\n- **Custom agents** - Any MCP-compatible AI system.\n\n## Examples and Documentation\n\n### Examples\n- [LangGraph Document Processing](examples/langgraphjs) - Workflow examples for contract processing, form filling, and report generation.\n- [OpenAI Agents SDK Document Processing](examples/openai-agents) - Workflow examples for contract processing, form filling, and report generation.\n- [Document Chat Interface](examples/document-chat) - Web application with React and LangGraph.\n- [Procurement AI Agent](examples/procurement-agent-ts) - An AI Agent written with Langgraph.js, that classifies and collates POs, invoices, and payment documents into groups and flags for human review\n\n### Documentation\n- [Configuration Guide](docs/configuration.md) - Environment variables, transport modes, dashboard.\n- [Features Reference](docs/features.md) - Detailed description of all document processing tools.\n- [Evaluation Framework](evaluation) - Testing and benchmarking tools.\n\n## Removing Evaluation Watermarks and Limitations\n\nDocument Engine runs in evaluation mode with limitations by default. To remove them:\n\n1. **Contact Sales to purchase a license** from [Nutrient](https://www.nutrient.io/contact-sales)\n2. **Configure your license** by setting the `ACTIVATION_KEY` environment variable in your [Docker Compose configuration](docker-compose.yml) or Document Engine setup\n3. **Restart Document Engine** to apply the license\n\nFor detailed licensing configuration, see the [Document Engine licensing guide](https://www.nutrient.io/guides/document-engine/about/licensing/).\n\n## Server Based Document Engine Setups\n\n**On-Premise Installation:** Follow the [Nutrient Document Engine installation guide](https://www.nutrient.io/getting-started/document-engine/).\n\n**Managed Cloud:** Use a hosted Document Engine instance - [setup guide](https://www.nutrient.io/guides/document-engine/deployment/managed-document-engine/).\n\n## Contributing\n\nWe welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup, testing guidelines, and how to submit pull requests.\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n",
  "bytes": 8017,
  "sha": "3fdbf4e5d43d970a385d904802c8129baa10c6ed42ab308f3214dcba2ae05d74",
  "repo_slug": "pspdfkit/nutrient-document-engine-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_pspdfkit_nutrient_document_eng_14fc5089/readme"
}