181.3k stars · MIT · v0.1.7 (2026-07-29) — GitHub and PyPI agree
Converts PDF, Word, PowerPoint, Excel, HTML, images and audio into Markdown in one command.
▶Repo detailsthe review · specs · pros & cons · install
What it is
MarkItDown is a Python tool and library from Microsoft. It converts PDF, Word, PowerPoint, Excel, HTML, images and audio into Markdown, which is plain text with simple marks for headings and lists.
Why it matters
Grasppy's promise is that you give it something long and get back a map you can click into. Right now the "something long" is a chat. The obvious next step is a document, and the first question a user asks is whether their file works. Docling (Ed. 3 #9) and marker (Ed. 9 #9) are the careful readers for hard PDFs, and they are slow because they are careful. MarkItDown is the fast wide one. It covers formats those two do not, such as PowerPoint and Excel, in a fraction of the time. The sensible design is to try MarkItDown first and fall back to Docling when the result looks wrong.
- It covers a very wide range of formats from one command, including spreadsheets and slide decks.
- It is fast, because it is not trying to reconstruct page layout.
- MIT licence, from Microsoft, with steady releases. Version 0.1.7 is dated 29 July 2026 on both GitHub and PyPI, which do not always agree.
- The version number is 0.1.7. The output can change between versions, so pin it and test before you upgrade.
- PDFs are its weak point. Complicated layouts come out flat and columns get mixed up. Docling is better there.
- Some formats need extra packages. Install the full set or you will hit missing-feature errors on real user files.
source venv/bin/activate pip install 'markitdown[all]' markitdown report.pdf > report.md