MCP Docling Server

by zanetworker

19 248 downloads Not rated yet MIT
GitHub

About

An MCP server to help you "play with your documents" via Docling 🐥

Details

License
MIT

Explore

- Convert documents to Markdown format
- Extract tables as structured data
- Process multiple documents in batch mode
- Generate Q&A documents (requires IBM Watson X)
- Enable OCR for scanned documents
- Cache processed documents for performance

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Docling Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install via pip (pip install -e .) and start the server with mcp-server-lls using stdio (default) or SSE transport (--transport sse --port 8000). Tools are then available to any MCP client; the README includes a detailed example with Llama Stack.

source

URL or local file path to the document (required)

enable_ocr

Whether to enable OCR for scanned documents (optional, default: false)

ocr_language

List of language codes for OCR, e.g. ["en", "fr"] (optional)

sources

List of URLs or file paths to documents (required)

no_of_qnas

Number of expected Q&As (optional, default: 5)

WATSONX_PROJECT_ID

Your Watson X project ID

WATSONX_APIKEY

Your IBM Cloud API key

WATSONX_URL

The Watson X API URL (default: https://us-south.ml.cloud.ibm.com)

The server exposes the following tools:

1. convert_document: Convert a document from a URL or local path to markdown format
- source: URL or local file path to the document (required)
- enable_ocr: Whether to enable OCR for scanned documents (optional, default: false)
- ocr_language: List of language codes for OCR, e.g. ["en", "fr"] (optional)

2. convert_document_with_images: Convert a document and extract embedded images
- source: URL or local file path to the document (required)
- enable_ocr: Whether to enable OCR for scanned documents (optional, default: false)
- ocr_language: List of language codes for OCR (optional)

3. extract_tables: Extract tables from a document as structured data
- source: URL or local file path to the document (required)

4. convert_batch: Process multiple documents in batch mode
- sources: List of URLs or file paths to documents (required)
- enable_ocr: Whether to enable OCR for scanned documents (optional, default: false)
- ocr_language: List of language codes for OCR (optional)

5. qna_from_document: Create a Q&A document from a URL or local path to YAML format
- source: URL or local file path to the document (required)
- no_of_qnas: Number of expected Q&As (optional, default: 5)
- Note: This tool requires IBM Watson X credentials to be set as environment variables:
- WATSONX_PROJECT_ID: Your Watson X project ID
- WATSONX_APIKEY: Your IBM Cloud API key
- WATSONX_URL: The Watson X API URL (default: https://us-south.ml.cloud.ibm.com)

6. get_system_info: Get information about system configuration and acceleration status

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp docling server": {
            "mcp-docling": {
                "command": "uv",
                "args": [
                    "run",
                    "mcp-server-lls"
                ]
            }
        }
    }
}

McpServers

{
    "mcp-docling": {
        "command": "uv",
        "args": [
            "run",
            "mcp-server-lls"
        ]
    }
}

An MCP server that provides document processing capabilities using the Docling library.

Installation

You can install the package using pip:

pip install -e .

Usage

Start the server using either stdio (default) or SSE transport:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.