markitdown
by Ivan2993
Overview
Converts various file formats (documents, images, audio) to Markdown for indexing, text analysis, and integration with AI agents.
Installation
docker run -it --rm markitdown-mcp:latestEnvironment Variables
- OPENAI_API_KEY
- AZURE_API_KEY
- EXIFTOOL_PATH
- MARKITDOWN_ENABLE_PLUGINS
Security Notes
The server's `convert_to_markdown(uri)` tool allows fetching and processing content from arbitrary `http:`, `https:`, `file:`, or `data:` URIs. When running as an unauthenticated service (default), this poses a significant risk. Fetching from untrusted `http/https` URLs can lead to Server-Side Request Forgery (SSRF), while `file:` URIs can expose local file system contents. The `exiftool` dependency (a system utility) also introduces a potential attack surface if not properly secured, although a version check is in place. The `SECURITY.md` and `markitdown-mcp/README.md` acknowledge the lack of authentication and recommend binding to `localhost` and containerization for safety, but if these precautions are not followed, the server is highly vulnerable.
Similar Servers
html-to-markdown-mcp
Converts HTML content from web pages or raw strings into Markdown format, with options for including metadata, truncating content, and saving to files.
Convert-Markdown-PDF-MCP
Converts Markdown content into gorgeously styled PDF documents using VS Code's markdown styling and Python's ReportLab, integrated as an MCP server.
markitdown-mcp
A Model Context Protocol (MCP) server for converting 29+ file formats (e.g., PDF, Office, images, audio) to clean, structured Markdown, designed for integration with AI workflows and MCP clients like Claude Desktop.
md-server
Converts various documents, webpages, and media files into markdown format, serving as an HTTP API or an MCP server for AI assistants to read and process content.