Docling MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DOCLING_MCP_DO_OCR | No | Set to 'false' to disable the OCR pipeline. Default: true. | |
| DOCLING_MCP_KEEP_IMAGES | No | Set to 'true' to retain page images in converted documents. Default: false. | |
| DOCLING_MCP_SERVICE_URL | No | Base URL of the Docling Serve instance. Required when conversion mode is remote. | |
| DOCLING_MCP_IMAGES_SCALE | No | Image scale factor (e.g. 1.0, 2.0). Increase to avoid tensor batching errors. Default: 1.0. | |
| DOCLING_MCP_CONVERSION_MODE | No | Conversion mode: 'remote' (default) or 'local' (requires docling-mcp[local] extra). | |
| DOCLING_MCP_SERVICE_API_KEY | No | API key for authenticating with Docling Serve. | |
| DOCLING_MCP_SERVICE_TIMEOUT | No | Request timeout in seconds for the remote Docling Serve API. Default: 300.0. | |
| DOCLING_MCP_FALLBACK_TO_LOCAL | No | Set to 'true' to fall back to local conversion when Docling Serve is unreachable. | |
| DOCLING_MCP_IMAGE_EXPORT_MODE | No | Controls how images are rendered when exporting to Markdown. Accepted values: 'placeholder' (default), 'embedded' (base64 data-URI), 'referenced' (file path / URL). | |
| DOCLING_MCP_DO_TABLE_STRUCTURE | No | Set to 'false' to disable table structure detection. Default: true. | |
| DOCLING_MCP_SERVICE_MAX_RETRIES | No | Maximum number of retry attempts for remote API requests. Default: 3. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| is_document_in_local_cacheA | Verify if a Docling document is already converted and in the local cache. |
| convert_document_into_docling_documentA | Convert a document of any type from a URL or local path and store in local cache. This tool takes a document's URL or local file path, converts it using the configured converter (remote API or local), and stores the resulting Docling document in a local cache. It returns an output with a boolean set to False along with the document's unique cache key. If the document was already in the local cache, the conversion is skipped and the output boolean is set to True. |
| convert_directory_files_into_docling_documentA | Convert all files from a local directory path and store them in local cache. This tool takes a local directory path, converts every file in the directory using the configured converter (remote API or local) and stores the resulting Docling documents in a local cache. It returns a list of conversion outputs, where each output consists of a boolean set to False along with a document's unique cache key. If a document was already in the local cache, the conversion is skipped and the output boolean is set to True. |
| create_new_docling_documentA | Create a new Docling document from a provided prompt string. This function generates a new document in the local document cache with the provided prompt text. The document is assigned a unique key derived from an MD5 hash of the prompt text. |
| export_docling_document_to_markdownA | Export a document from the local document cache to markdown format. This tool converts a Docling document that exists in the local cache into a markdown formatted string, which can be used for display or further processing. |
| save_docling_documentA | Save a document from the local document cache to disk in both markdown and JSON formats. This tool takes a document that exists in the local cache and saves it to the specified cache directory with filenames based on the document key. Both markdown and JSON versions of the document are saved. |
| page_thumbnailA | Generate a thumbnail image for the requested page. This tool takes a document that exists in the local cache and generates a thumbnail image for the requested page. |
| add_title_to_docling_documentA | Add or update the title of a document in the local document cache. This tool modifies an existing document that has already been processed and stored in the local cache. It requires that the document already exists in the cache before a title can be added. |
| add_section_heading_to_docling_documentA | Add a section heading to an existing document in the local document cache. This tool inserts a section heading with the specified heading text and level into a document that has already been processed and stored in the local cache. Section levels typically represent heading hierarchy (e.g., 1 for H1, 2 for H2). |
| add_paragraph_to_docling_documentB | Add a paragraph of text to an existing document in the local document cache. This tool inserts a new paragraph under the specified section header and level into a document that has already been processed and stored in the cache. |
| open_list_in_docling_documentA | Open a new list group in an existing document in the local document cache. This tool creates a new list structure within a document that has already been processed and stored in the local cache. It requires that the document already exists and that there is at least one item in the document's stack cache. |
| close_list_in_docling_documentA | Closes a list group in an existing document in the local document cache. This tool closes a previously opened list structure within a document. It requires that the document exists and that there is more than one item in the document's stack cache. |
| add_list_items_to_list_in_docling_documentA | Add list items to an open list in an existing document in the local document cache. This tool inserts new list items with the specified text and marker into an open list within a document. It requires that the document exists and that there is at least one item in the document's stack cache. |
| add_table_in_html_format_to_docling_documentA | Add an HTML-formatted table to an existing document in the local document cache. This tool parses the provided HTML table string, converts it to a structured table representation, and adds it to the specified document. It also supports optional captions and footnotes for the table. |
| get_overview_of_document_anchorsA | Retrieve a structured overview of a document from the local document cache. This tool returns a text representation of the Docling document's structure, showing the hierarchy and types of elements within the document. Each line in the output includes the document anchor reference and item label. |
| search_for_text_in_document_anchorsA | Search for specific text and keywords within a document's anchors. This tool takes a string of text to search for and returns a string of all document anchors that contain the exact text. The search is case-insensitive. If the exact text is not found, the tool will search for individual keywords within the text, splitting it on non-alphanumeric characters. If keywords are found, they are listed alongside their number of occurrences in parentheses. |
| get_text_of_document_item_at_anchorA | Retrieve the text content of a specific document item identified by its anchor. This tool extracts the text from a Docling document item at the specified anchor location within a document that exists in the local document cache. |
| update_text_of_document_item_at_anchorA | Update the text content of a specific document item identified by its anchor. This tool modifies the text of an existing document item at the specified anchor location within a document that exists in the local document cache. It requires that the document already exists in the cache before a modification can be made. |
| delete_document_items_at_anchorsA | Delete multiple document items identified by their anchors. This tool removes specified items from a Docling document that exists in the local document cache, based on their anchor references. It requires that the document already exists in the cache before performing the deletion. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| generate_docling_document_from_pdf | Convert a local file into a Docling document and return its document key. |
| convert_and_summarize | Convert a document and produce a structured summary. |
| convert_directory_and_list | Convert all files in a directory and list the results. |
| author_structured_document | Create a new structured Docling document on a given topic. |
| convert_and_rewrite | Convert a document and rewrite its content following specific instructions. |
| review_and_edit_document | Review the structure of a cached document and interactively edit it. |
| find_and_replace_in_document | Find text in a cached document and replace it at the correct anchor. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/docling-project/docling-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server