NestDaddy

Docling MCP

io.github.docling-project/docling-mcp · v3.5.0

Convert PDFs and other documents to structured formats via Docling, for AI applications.

Connect Runs on your machine

Terminal
claude mcp add docling-mcp -e DOCLING_MCP_CONVERSION_MODE=<DOCLING_MCP_CONVERSION_MODE> -e DOCLING_MCP_SERVICE_URL=<DOCLING_MCP_SERVICE_URL> -e DOCLING_MCP_SERVICE_API_KEY=<DOCLING_MCP_SERVICE_API_KEY> -e DOCLING_MCP_SERVICE_TIMEOUT=<DOCLING_MCP_SERVICE_TIMEOUT> -e DOCLING_MCP_SERVICE_MAX_RETRIES=<DOCLING_MCP_SERVICE_MAX_RETRIES> -e DOCLING_MCP_FALLBACK_TO_LOCAL=<DOCLING_MCP_FALLBACK_TO_LOCAL> -e DOCLING_MCP_KEEP_IMAGES=<DOCLING_MCP_KEEP_IMAGES> -e DOCLING_MCP_IMAGES_SCALE=<DOCLING_MCP_IMAGES_SCALE> -e DOCLING_MCP_DO_OCR=<DOCLING_MCP_DO_OCR> -e DOCLING_MCP_OCR_ENGINE=<DOCLING_MCP_OCR_ENGINE> -e DOCLING_MCP_OCR_LANG=<DOCLING_MCP_OCR_LANG> -e DOCLING_MCP_DO_TABLE_STRUCTURE=<DOCLING_MCP_DO_TABLE_STRUCTURE> -e DOCLING_MCP_DO_PICTURE_DESCRIPTION=<DOCLING_MCP_DO_PICTURE_DESCRIPTION> -e DOCLING_MCP_PICTURE_DESCRIPTION_PRESET=<DOCLING_MCP_PICTURE_DESCRIPTION_PRESET> -e DOCLING_MCP_IMAGE_EXPORT_MODE=<DOCLING_MCP_IMAGE_EXPORT_MODE> -e DOCLING_MCP_CACHE_MAX_DOCUMENTS=<DOCLING_MCP_CACHE_MAX_DOCUMENTS> -- uvx docling-mcp==3.5.0
claude_desktop_config.json
{
  "mcpServers": {
    "docling-mcp": {
      "command": "uvx",
      "args": [
        "docling-mcp==3.5.0"
      ],
      "env": {
        "DOCLING_MCP_CONVERSION_MODE": "<DOCLING_MCP_CONVERSION_MODE>",
        "DOCLING_MCP_SERVICE_URL": "<DOCLING_MCP_SERVICE_URL>",
        "DOCLING_MCP_SERVICE_API_KEY": "<DOCLING_MCP_SERVICE_API_KEY>",
        "DOCLING_MCP_SERVICE_TIMEOUT": "<DOCLING_MCP_SERVICE_TIMEOUT>",
        "DOCLING_MCP_SERVICE_MAX_RETRIES": "<DOCLING_MCP_SERVICE_MAX_RETRIES>",
        "DOCLING_MCP_FALLBACK_TO_LOCAL": "<DOCLING_MCP_FALLBACK_TO_LOCAL>",
        "DOCLING_MCP_KEEP_IMAGES": "<DOCLING_MCP_KEEP_IMAGES>",
        "DOCLING_MCP_IMAGES_SCALE": "<DOCLING_MCP_IMAGES_SCALE>",
        "DOCLING_MCP_DO_OCR": "<DOCLING_MCP_DO_OCR>",
        "DOCLING_MCP_OCR_ENGINE": "<DOCLING_MCP_OCR_ENGINE>",
        "DOCLING_MCP_OCR_LANG": "<DOCLING_MCP_OCR_LANG>",
        "DOCLING_MCP_DO_TABLE_STRUCTURE": "<DOCLING_MCP_DO_TABLE_STRUCTURE>",
        "DOCLING_MCP_DO_PICTURE_DESCRIPTION": "<DOCLING_MCP_DO_PICTURE_DESCRIPTION>",
        "DOCLING_MCP_PICTURE_DESCRIPTION_PRESET": "<DOCLING_MCP_PICTURE_DESCRIPTION_PRESET>",
        "DOCLING_MCP_IMAGE_EXPORT_MODE": "<DOCLING_MCP_IMAGE_EXPORT_MODE>",
        "DOCLING_MCP_CACHE_MAX_DOCUMENTS": "<DOCLING_MCP_CACHE_MAX_DOCUMENTS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "docling-mcp": {
      "command": "uvx",
      "args": [
        "docling-mcp==3.5.0"
      ],
      "env": {
        "DOCLING_MCP_CONVERSION_MODE": "<DOCLING_MCP_CONVERSION_MODE>",
        "DOCLING_MCP_SERVICE_URL": "<DOCLING_MCP_SERVICE_URL>",
        "DOCLING_MCP_SERVICE_API_KEY": "<DOCLING_MCP_SERVICE_API_KEY>",
        "DOCLING_MCP_SERVICE_TIMEOUT": "<DOCLING_MCP_SERVICE_TIMEOUT>",
        "DOCLING_MCP_SERVICE_MAX_RETRIES": "<DOCLING_MCP_SERVICE_MAX_RETRIES>",
        "DOCLING_MCP_FALLBACK_TO_LOCAL": "<DOCLING_MCP_FALLBACK_TO_LOCAL>",
        "DOCLING_MCP_KEEP_IMAGES": "<DOCLING_MCP_KEEP_IMAGES>",
        "DOCLING_MCP_IMAGES_SCALE": "<DOCLING_MCP_IMAGES_SCALE>",
        "DOCLING_MCP_DO_OCR": "<DOCLING_MCP_DO_OCR>",
        "DOCLING_MCP_OCR_ENGINE": "<DOCLING_MCP_OCR_ENGINE>",
        "DOCLING_MCP_OCR_LANG": "<DOCLING_MCP_OCR_LANG>",
        "DOCLING_MCP_DO_TABLE_STRUCTURE": "<DOCLING_MCP_DO_TABLE_STRUCTURE>",
        "DOCLING_MCP_DO_PICTURE_DESCRIPTION": "<DOCLING_MCP_DO_PICTURE_DESCRIPTION>",
        "DOCLING_MCP_PICTURE_DESCRIPTION_PRESET": "<DOCLING_MCP_PICTURE_DESCRIPTION_PRESET>",
        "DOCLING_MCP_IMAGE_EXPORT_MODE": "<DOCLING_MCP_IMAGE_EXPORT_MODE>",
        "DOCLING_MCP_CACHE_MAX_DOCUMENTS": "<DOCLING_MCP_CACHE_MAX_DOCUMENTS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "docling-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "docling-mcp==3.5.0"
      ],
      "env": {
        "DOCLING_MCP_CONVERSION_MODE": "<DOCLING_MCP_CONVERSION_MODE>",
        "DOCLING_MCP_SERVICE_URL": "<DOCLING_MCP_SERVICE_URL>",
        "DOCLING_MCP_SERVICE_API_KEY": "<DOCLING_MCP_SERVICE_API_KEY>",
        "DOCLING_MCP_SERVICE_TIMEOUT": "<DOCLING_MCP_SERVICE_TIMEOUT>",
        "DOCLING_MCP_SERVICE_MAX_RETRIES": "<DOCLING_MCP_SERVICE_MAX_RETRIES>",
        "DOCLING_MCP_FALLBACK_TO_LOCAL": "<DOCLING_MCP_FALLBACK_TO_LOCAL>",
        "DOCLING_MCP_KEEP_IMAGES": "<DOCLING_MCP_KEEP_IMAGES>",
        "DOCLING_MCP_IMAGES_SCALE": "<DOCLING_MCP_IMAGES_SCALE>",
        "DOCLING_MCP_DO_OCR": "<DOCLING_MCP_DO_OCR>",
        "DOCLING_MCP_OCR_ENGINE": "<DOCLING_MCP_OCR_ENGINE>",
        "DOCLING_MCP_OCR_LANG": "<DOCLING_MCP_OCR_LANG>",
        "DOCLING_MCP_DO_TABLE_STRUCTURE": "<DOCLING_MCP_DO_TABLE_STRUCTURE>",
        "DOCLING_MCP_DO_PICTURE_DESCRIPTION": "<DOCLING_MCP_DO_PICTURE_DESCRIPTION>",
        "DOCLING_MCP_PICTURE_DESCRIPTION_PRESET": "<DOCLING_MCP_PICTURE_DESCRIPTION_PRESET>",
        "DOCLING_MCP_IMAGE_EXPORT_MODE": "<DOCLING_MCP_IMAGE_EXPORT_MODE>",
        "DOCLING_MCP_CACHE_MAX_DOCUMENTS": "<DOCLING_MCP_CACHE_MAX_DOCUMENTS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
DOCLING_MCP_CONVERSION_MODE
Optional
Conversion mode: 'remote' (default) or 'local' (requires docling-mcp[local] extra).
DOCLING_MCP_SERVICE_URL
Optional
Base URL of the Docling Serve instance. Required when conversion mode is remote.
DOCLING_MCP_SERVICE_API_KEY
Optional, secret
API key for authenticating with Docling Serve.
DOCLING_MCP_SERVICE_TIMEOUT
Optional
Request timeout in seconds for the remote Docling Serve API. Default: 300.0.
DOCLING_MCP_SERVICE_MAX_RETRIES
Optional
Maximum number of retry attempts for remote API requests. Default: 3.
DOCLING_MCP_FALLBACK_TO_LOCAL
Optional
Set to 'true' to fall back to local conversion when Docling Serve is unreachable.
DOCLING_MCP_KEEP_IMAGES
Optional
Set to 'true' to retain page images in converted documents. Default: false.
DOCLING_MCP_IMAGES_SCALE
Optional
Image scale factor (e.g. 1.0, 2.0). Increase to avoid tensor batching errors. Default: 1.0.
DOCLING_MCP_DO_OCR
Optional
Set to 'false' to disable the OCR pipeline. Default: true.
DOCLING_MCP_OCR_ENGINE
Optional
OCR engine kind: 'auto' (default), 'easyocr', 'tesseract', 'tesserocr', 'ocrmac', 'rapidocr'. Must be installed on the conversion backend.
DOCLING_MCP_OCR_LANG
Optional
Comma-separated OCR languages (e.g. 'iso:en,iso:de' or 'eng,deu'). When unset the engine's default languages apply.
DOCLING_MCP_DO_TABLE_STRUCTURE
Optional
Set to 'false' to disable table structure detection. Default: true.
DOCLING_MCP_DO_PICTURE_DESCRIPTION
Optional
Set to 'true' to run a vision-language model to generate textual descriptions for figures and pictures. Requires a VLM to be available on the conversion backend. Default: false.
DOCLING_MCP_PICTURE_DESCRIPTION_PRESET
Optional
Preset ID for the picture-description VLM (e.g. 'smolvlm', 'granite_vision'). When unset the backend default is used. Only applies when DOCLING_MCP_DO_PICTURE_DESCRIPTION=true.
DOCLING_MCP_IMAGE_EXPORT_MODE
Optional
Controls how images are rendered when exporting to Markdown. Accepted values: 'placeholder' (default, emits <!-- image -->), 'embedded' (base64 data-URI), 'referenced' (file path / URL).
DOCLING_MCP_CACHE_MAX_DOCUMENTS
Optional
Maximum number of documents to keep in the in-memory cache. Oldest (least-recently-used) documents are evicted when the limit is reached. Default: 10.

Details

Package[email protected] (PYPI, stdio)
First published4 Nov 2026
Last updated4 Nov 2026
Registry nameio.github.docling-project/docling-mcp

More files and documents servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.