About this project

Docling is a document processing library from IBM Research that prepares documents for generative AI applications. It parses a wide range of formats: PDF, DOCX, PPTX, XLSX, HTML, EPUB, ODF, Apple Pages, LaTeX, plain text, images (PNG, TIFF, JPEG), audio (WAV, MP3), video (MP4, AVI, MOV, MKV, WebM), email (EML, MSG), XBRL financial reports, and more. For PDFs, it offers advanced understanding of page layout, reading order, table structure, code, formulas, and image classification. Documents are represented in a unified DoclingDocument format and can be exported to Markdown, HTML, JSON, WebVTT, DocLang, and DocTags. It supports local execution for air-gapped environments, extensive OCR for scanned files, and optional Visual Language Models such as GraniteDocling. Audio transcription uses ASR, and video parsing produces transcripts and keyframes. The project includes a simple CLI, an API server, and an MCP server, plus native integrations with LangChain, LlamaIndex, Crew AI, and Haystack. It is MIT-licensed and hosted under LF AI & Data. Installation is via pip (Python 3.10+), and the README shows converting a PDF URL to Markdown in a few lines of Python.