Markitdown
npx -y skills add craft-studio-marketplace/skills --skill markitdownAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Convert files and office documents to Markdown. Supports PDF, DOCX, PPTX, XLSX, images (with OCR), audio (with transcription), HTML, CSV, JSON, XML, ZIP, YouTube URLs, EPubs and more. Use when converting documents to markdown, extracting text from PDFs, processing office files, or when user mentions document conversion, PDF to markdown, or file extraction.
SKILL.md
4.0 KB, as published. Nobody here has run it
MarkItDown - File to Markdown Conversion
Overview
MarkItDown is a Python tool developed by Microsoft for converting various file formats to Markdown. It's particularly useful for converting documents into LLM-friendly text format, as Markdown is token-efficient and well-understood by modern language models.
Key Benefits:
- Convert documents to clean, structured Markdown
- Token-efficient format for LLM processing
- Supports 15+ file formats
- Optional AI-enhanced image descriptions
- OCR for images and scanned documents
- Speech transcription for audio files
Supported Formats
| Format | Description | Notes |
|---|---|---|
| Portable Document Format | Full text extraction — Hinweis: Für PDFs mit Tabellen oder komplexem Layout ist opendataloader-pdf deutlich genauer (0.90 vs. 0.29 Benchmark-Score). Bei einfachen Text-PDFs ist markitdown ausreichend. | |
| DOCX | Microsoft Word | Tables, formatting preserved |
| PPTX | PowerPoint | Slides with notes |
| XLSX | Excel spreadsheets | Tables and data |
| Images | JPEG, PNG, GIF, WebP | EXIF metadata + OCR |
| Audio | WAV, MP3 | Metadata + transcription |
| HTML | Web pages | Clean conversion |
| CSV | Comma-separated values | Table format |
| JSON | JSON data | Structured representation |
| XML | XML documents | Structured format |
| ZIP | Archive files | Iterates contents |
| EPUB | E-books | Full text extraction |
| YouTube | Video URLs | Fetch transcriptions |
Installation
# Install with all features
pip install 'markitdown[all]'
# Or install specific formats
pip install 'markitdown[pdf, docx, pptx]'
Command-Line Usage
# Basic conversion
markitdown document.pdf > output.md
# Specify output file
markitdown document.pdf -o output.md
# Pipe content
cat document.pdf | markitdown > output.md
Python API
from markitdown import MarkItDown
# Basic usage
md = MarkItDown()
result = md.convert("document.pdf")
print(result.text_content)
# Convert from stream
with open("document.pdf", "rb") as f:
result = md.convert_stream(f, file_extension=".pdf")
print(result.text_content)
AI-Enhanced Image Descriptions
Use LLMs via OpenRouter to generate detailed image descriptions:
from markitdown import MarkItDown
from openai import OpenAI
client = OpenAI(
api_key="your-openrouter-api-key",
base_url="https://openrouter.ai/api/v1"
)
md = MarkItDown(
llm_client=client,
llm_model="anthropic/claude-sonnet-4.5",
llm_prompt="Describe this image in detail"
)
result = md.convert("presentation.pptx")
print(result.text_content)
Common Use Cases
Convert Scientific Papers
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("research_paper.pdf")
with open("paper.md", "w") as f:
f.write(result.text_content)
Extract Data from Excel
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("data.xlsx")
print(result.text_content) # Markdown table format
YouTube Transcription
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("https://www.youtube.com/watch?v=VIDEO_ID")
print(result.text_content)
Troubleshooting
Missing dependencies:
pip install 'markitdown[pdf]' # For PDF support
OCR not working:
# macOS
brew install tesseract
# Ubuntu
sudo apt-get install tesseract-ocr
Resources
- GitHub: https://github.com/microsoft/markitdown
- PyPI: https://pypi.org/project/markitdown/
- OpenRouter: https://openrouter.ai (for AI-enhanced conversions)