Convert PDF, Word, Excel, PowerPoint, HTML, EPUB and URLs to Markdown; markitdown-mcp in Rust
MCPpedia last refreshed this data
io.github.majiayu000/markitdown-rs is an MCP server that convert PDF, Word, Excel, PowerPoint, HTML, EPUB and URLs to Markdown; markitdown-mcp in Rust. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 87/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"markitdown": {
"args": [
"mcp"
],
"command": "markitdown"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Convert PDF, Word, Excel, PowerPoint, HTML, EPUB and URLs to Markdown; markitdown-mcp in Rust
This server supports HTTP transport. Be the first to test it - help the community know if it works.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked markitdown-rs against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in writing
Scrape, crawl, and map websites to Markdown or JSON via local CLI.
Documents to Markdown for agents: PDF layout, tables and OCR, Office, HTML, scans. docling in Rust.
一键同步文章到多个内容平台,支持今日头条、WordPress、知乎、简书、掘金、CSDN、typecho各大平台,一次发布,多平台同步发布。解放个人生产力
Create and edit PDFs: text, Markdown, tables, metadata and pages, with Japanese font embedding.
MCP Security Weekly
Get CVE alerts and security updates for io.github.majiayu000/markitdown-rs and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
markitdown-rs converts PDF, Word, PowerPoint, Excel, HTML, EPUB, Outlook and web pages to Markdown for LLMs and RAG pipelines. It is Microsoft's markitdown CLI rewritten in Rust as one 4.5 MB binary: the same command and the same Markdown, byte for byte, without a Python environment. From the command line it is usually hundreds of times faster (median 408× over 231 real-world files, about 15× on the largest PDFs and spreadsheets); in process, 4–50× faster.
brew install majiayu000/tap/markitdown-rs # or: cargo install markitdown-rs
markitdown report.pdf > report.md
Prebuilt binaries for macOS (Apple silicon and Intel) and Linux x86_64 are on
the releases page.
It also runs as an MCP server for AI agents (markitdown mcp, stdio or
HTTP) and has a Python module with markitdown's API, plugins included.
A PDF form becomes a Markdown table, exactly as markitdown renders it
(tests/fixtures/pdf/gen-form-mixed.pdf):
$ markitdown order.pdf
Purchase order summary
| Item | Qty | Unit price | Total |
| -------- | --- | ---------- | ----- |
| Widget 1 | 1 | 1.50 | 1.50 |
| Widget 2 | 2 | 3.00 | 6.00 |
| Widget 3 | 3 | 4.50 | 13.50 |
...
Thank you for your order.
URLs work too, with markitdown's Wikipedia and YouTube handling:
$ markitdown https://en.wikipedia.org/wiki/Markdown | head -3
# Markdown
Plain text markup language
| markitdown-rs | microsoft/markitdown | markitdown (crates.io) | xberg | |
|---|---|---|---|---|
| Output identical to markitdown | 401 of 406 test files | reference | 35 of 405 | not a goal |
| Install | one binary | Python + pip (328 MB venv) | cargo install | pip / cargo / npm / ... |
| Speed (CLI) | median 408× markitdown (15–1,660×) | 1× | – | – |
| Formats | markitdown's formats + URLs; OCR/LLM plugins and Azure in the Python module | all + OCR/LLM plugins, Azure | 9 | 107, OCR, layout models |
| MCP server / Python API | markitdown mcp (stdio, HTTP) / from markitdown import MarkItDown | markitdown-mcp / yes | no / no | yes / yes |
Full feature-by-feature table, with how each number was measured: markitdown vs markitdown-rs.
markitdown is the de facto "documents to Markdown for LLMs" tool, but using it from a shell, CI job or non-Python service means shipping a Python environment with mammoth, pdfminer.six, pdfplumber, pandas, openpyxl, BeautifulSoup, python-pptx, magika and onnxruntime. Its most requested features include brew and binary installs (#1179, #25) and lighter dependencies (#1234).
markitdown-rs targets output compatibility. It does not try to produce
"better" Markdown: it reproduces markitdown's output, quirks included (pipes in
table cells, Heading 7–9 as plain text, pdfminer's (cid:N) placeholders,
pandas' NaN cells), so you can swap the binary without changing anything
downstream.
Every fixture is converted by both implementations and compared byte for byte
in cargo test against Python markitdown 0.1.9 (see
Parity testing): 408 files, the 6,705 inputs of the