# anymd

A fast, local Rust MCP server and CLI that converts PDF, Word, PowerPoint, Excel, EPUB, HTML, images and audio or video files into clean Markdown for AI agents, without an API key.

anymd converts many document formats, PDF, Word, PowerPoint, Excel, EPUB, HTML and web pages, images through OCR, and audio or video through metadata, subtitles and transcripts, into clean Markdown for AI agents to read, running entirely on the user's own machine with nothing uploaded. A layout engine rebuilds words from glyph gaps, puts two-column papers in reading order, and recovers tables including borderless ones, and pages come back with citation anchors, a compact front-matter header and a token budget with a cursor to keep large documents within an agent's context.

On a 19-document benchmark it converted every document in 12.1 seconds total, compared to 1,723.3 seconds for docling, 45.4 seconds for markitdown, and 5,256.3 seconds for marker. One tool call reads every supported format, plus web URLs and whole directories, and a search tool looks across all of them; OCR and transcription use local tools such as tesseract, ffmpeg and whisper.cpp only when they are already installed.

It installs as an MCP server for Claude Code, Codex, Cursor, VS Code, Claude Desktop, Windsurf and Gemini CLI with one npx command, or as a Claude Code plugin, and was formerly named pdf-reader-mcp.

Website: https://sylphxai.github.io/anymd/
