# Markitdown

Convert heterogeneous documents and selected URIs to Markdown with Microsoft MarkItDown...

- Repository: https://github.com/K-Dense-AI/claude-scientific-writer (2545 stars)
- Category: Documents
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add K-Dense-AI/claude-scientific-writer --skill markitdown -g -a claude-code -y`
Codex: `npx skills add K-Dense-AI/claude-scientific-writer --skill markitdown -g -a codex -y`
Cursor: `npx skills add K-Dense-AI/claude-scientific-writer --skill markitdown -g -a cursor -y`
Gemini CLI: `npx skills add K-Dense-AI/claude-scientific-writer --skill markitdown -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add K-Dense-AI/claude-scientific-writer`

## Description

Convert heterogeneous documents and selected URIs to Markdown with Microsoft MarkItDown for text analysis, search, and LLM/RAG ingestion. Covers safe local conversion, streams, Office/PDF/data formats, batch workflows, plugins, vision OCR, Azure extraction, and the official MCP server.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# MarkItDown

## Overview

MarkItDown is Microsoft's lightweight Python utility for turning common documents into structure-preserving Markdown. Its output is designed primarily for indexing, text analysis, search, and LLM ingestion, not high-fidelity visual reproduction.

This skill targets **MarkItDown 0.1.6**, released May 26, 2026. New code should use `result.markdown`; `result.text_content` remains only as a soft-deprecated compatibility alias.

## Choose the Right Path

| Need | Recommended path |
|---|---|
| Trusted local PDF, Office, HTML, CSV, EPUB, or ZIP | Built-in converter with `convert_local()` |
| Uploaded bytes or an already-open file | `convert_stream()` with `StreamInfo` hints |
| Remote HTTP(S) input | Validate and fetch it yourself, then call `convert_response()` |
| Scanned PDF or text inside embedded images | Official `markitdown-ocr` vision plugin, Azure Document Intelligence, or Azure Content Understanding |
| Video, structured fields, or custom multimodal extraction | Azure Content Understanding |
| Local agent integration | Official `markitdown-mcp` server over STDIO or localhost |
| Bounding boxes, page coordinates, or screenshots | Use a layout-aware parser such as LiteParse instead |
| PDF merge/split/forms/watermarks | Use the `pdf` skill instead |

## Installation

Create an isolated environment:

```bash
uv venv --python 3.12 .venv
source .venv/bin/activate
```

Install every built-in feature:

```bash
uv pip install "markitdown[all]==0.1.6"
```

Or install only the converters required by the task:

```bash
uv pip install "markitdown[pdf,docx,pptx,xlsx]==0.1.6"
```

Available extras in 0.1.6 are:

- `pptx`, `docx`, `xlsx`, `xls`, `pdf`, and `outlook`
- `audio-transcription` and `youtube-transcription`
- `az-doc-intel` and `az-content-understanding`
- `all`

Verify the installation:

```bash
markitdown --version
python scripts/inspect_installation.py
```

The rest: https://github.com/K-Dense-AI/claude-scientific-writer/blob/HEAD/.claude/skills/markitdown/SKILL.md
