Convert binary documents (PDF, DOCX, XLSX, PPTX, HTML, EPUB, images) to clean LLM-friendly Markdown using Microsoft's `markitdown` Python tool. Use when a user attaches a binary file and you need to read its contents.
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
markitdown is installed via pip3 install markitdown and is on PATH. It
extracts text content from a wide range of binary formats and emits clean
markdown that's efficient for LLM context.
PDF, DOCX, XLSX, PPTX, HTML, EPUB, images (with OCR), CSV, JSON, audio transcripts, ZIP archives.
# Convert a single file to markdown on stdout
markitdown /workspace/$(basename "$PWD")/input.pdf
# Save to a markdown file
markitdown /workspace/$(basename "$PWD")/input.docx > /workspace/$(basename "$PWD")/input.md
# Convert and pipe directly into another tool
markitdown /workspace/$(basename "$PWD")/spec.xlsx | head -200Files attached by users are downloaded to the agent workspace by the gateway. Once you have a workspace path:
# 1. Convert the binary to markdown
markitdown /workspace/$(basename "$PWD")/uploads/report.pdf > /tmp/report.md
# 2. Read the markdown into your context
cat /tmp/report.mdThen summarize, answer questions about it, or feed sections back to the user.
| Flag | Effect |
|---|---|
--use-docintel <ENDPOINT> | Use Azure Doc Intelligence (requires API key) for OCR-heavy PDFs |
-o <file> | Write to file instead of stdout |
officecli or
pandic-office instead.pdf
skill.officecli view <file> html.69b6005
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.