| name | markdown |
| description | Converts files to Markdown using uvx markitdown, supporting PDF, Word, PowerPoint, Excel, HTML, images with OCR, audio with transcription, ZIP archives, and YouTube URLs. Use when the user wants to convert a file or URL to Markdown. |
markdown skill
Convert files to Markdown using uvx markitdown — no installation required.
features
- converts documents, web/data files, media files, archives, and URLs to Markdown
- supports stdout,
-o output files, and stdin conversion
- accepts file extension, MIME type, and charset hints for ambiguous input
- can enable or list markitdown plugins when needed
usage
uvx markitdown input.pdf
uvx markitdown input.pdf -o output.md
uvx markitdown input.docx > output.md
cat input.pdf | uvx markitdown
supported formats
- Documents: PDF, Word (.docx), PowerPoint (.pptx), Excel (.xlsx, .xls)
- Web/Data: HTML, CSV, JSON, XML
- Media: Images (EXIF + OCR), Audio (EXIF + transcription)
- Other: ZIP (iterates contents), YouTube URLs, EPub
options
-o OUTPUT
-x EXTENSION
-m MIME_TYPE
-c CHARSET
--use-plugins
--list-plugins
examples
uvx markitdown report.docx -o report.md
uvx markitdown data.xlsx > data.md
uvx markitdown slides.pptx -o slides.md
cat document | uvx markitdown -x .pdf > output.md
workflow
- identify the input file(s) or URL the user wants to convert
- determine the best invocation (stdout vs
-o flag vs stdin pipe) based on context
- run
uvx markitdown <input> — dependencies download on first run, then cache
- if output looks malformed, suggest a MIME or extension hint via
-x or -m
- return the resulting Markdown to the user or confirm the saved file path
best practices
- output preserves document structure: headings, tables, lists, links
- first run caches dependencies; subsequent runs are faster
- for stdin input, always pass
-x or -m so markitdown knows the format
credits
Adapted from steipete/agent-scripts — markdown-converter by @steipete.