Files
Michele Dolfi b418ec61b1 feat!: Use remote Docling within tool - with local fallback as optional (#97)
* make MCP use remote docling via service client

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* add missing file and tests

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* fix mcpb manifest

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* format test files

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* use stdio for the tests

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* apply linter and formatter

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* fix launch of tests

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* make api key secret

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

* use sensitive

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>

---------

Signed-off-by: Michele Dolfi <dol@zurich.ibm.com>
2026-05-15 15:14:39 +02:00

153 lines
4.6 KiB
JSON

{
"manifest_version": "0.2",
"name": "docling-mcp",
"display_name": "Docling MCP",
"version": "1.3.4",
"description": "Docling MCP Server - Document processing and analysis with remote API and local conversion support",
"author": {
"name": "Docling team",
"email": "deepsearch-core@zurich.ibm.com"
},
"homepage": "https://docling.ai",
"support": "https://github.com/docling-project/docling-mcp/issues",
"icon": "assets/logo.png",
"screenshots": [
"assets/screenshot-summary.png",
"assets/screenshot-thumbnail.png",
"assets/screenshot-creation.png",
"assets/screenshot-extraction.png"
],
"server": {
"type": "python",
"entry_point": "docling-mcp-server",
"mcp_config": {
"command": "python3",
"args": [
"-m",
"pipx",
"run",
"--spec",
"docling-mcp${user_config.install_extras}==${user_config.version}",
"docling-mcp-server"
],
"env": {
"PYTHONPATH": "${__dirname}/lib",
"DOCLING_SERVICE_URL": "${user_config.service_url}",
"DOCLING_SERVICE_API_KEY": "${user_config.service_api_key}",
"DOCLING_CONVERSION_MODE": "${user_config.conversion_mode}",
"DOCLING_SERVICE_TIMEOUT": "${user_config.service_timeout}",
"DOCLING_FALLBACK_TO_LOCAL": "${user_config.fallback_to_local}",
"DOCLING_MCP_KEEP_IMAGES": "${user_config.keep_images}",
"DOCLING_MCP_DO_OCR": "${user_config.do_ocr}",
"DOCLING_MCP_DO_TABLE_STRUCTURE": "${user_config.do_table_structure}"
}
}
},
"user_config": {
"version": {
"type": "string",
"title": "Version",
"description": "Version of the docling-mcp package to install.",
"default": "1.3.4",
"required": false
},
"install_extras": {
"type": "string",
"title": "Installation Extras",
"description": "Optional extras to install. Options: '' (remote-only, lightweight), '[local]' (local conversion), '[local,llama-index-rag]', '[local,llama-stack]'",
"default": "",
"required": false
},
"conversion_mode": {
"type": "string",
"title": "Conversion Mode",
"description": "Choose 'remote' (requires service_url) or 'local' (requires [local] extra). Default: remote",
"default": "remote",
"required": true
},
"service_url": {
"type": "string",
"title": "Docling Service URL",
"description": "URL of the Docling Serve API endpoint (required for remote mode). Example: https://your-docling-service.example.com",
"default": "",
"required": false
},
"service_api_key": {
"type": "string",
"title": "Service API Key",
"description": "API key for authenticating with Docling Serve (optional, if required by your service). Leave empty if not needed.",
"default": "",
"sensitive": true,
"required": false
},
"service_timeout": {
"type": "number",
"title": "Service Timeout (seconds)",
"description": "Timeout in seconds for remote API requests. Range: 10-3600, Default: 300",
"default": 300.0,
"required": false
},
"fallback_to_local": {
"type": "boolean",
"title": "Fallback to Local",
"description": "If remote service is unavailable, automatically fall back to local conversion (requires [local] extra).",
"default": false,
"required": false
},
"keep_images": {
"type": "boolean",
"title": "Keep Images",
"description": "Generate and store page images while converting documents (applies to local mode).",
"default": false,
"required": false
},
"do_ocr": {
"type": "boolean",
"title": "Enable OCR",
"description": "Enable Optical Character Recognition for scanned documents (applies to local mode).",
"default": true,
"required": false
},
"do_table_structure": {
"type": "boolean",
"title": "Enable Table Structure",
"description": "Enable table structure recognition (applies to local mode).",
"default": true,
"required": false
}
},
"keywords": [
"docling",
"document",
"pdf",
"docx",
"pptx",
"html",
"markdown",
"processing",
"convert",
"creation",
"remote-api",
"service-client"
],
"license": "MIT",
"privacy_policies": [
"https://github.com/docling-project/docling-mcp/blob/main/docs/PRIVACY.md"
],
"repository": {
"type": "git",
"url": "https://github.com/docling-project/docling-mcp"
},
"compatibility": {
"claude_desktop": ">=0.13.0",
"platforms": [
"darwin",
"win32",
"linux"
],
"runtimes": {
"python": ">=3.10"
}
}
}