markdownify
A Model Context Protocol server for converting almost anything to Markdown
claude mcp add --transport stdio zcaceres-markdownify-mcp node {ABSOLUTE PATH TO FILE HERE}/dist/index.js \
--env UV_PATH="/path/to/uv" \
--env MD_SHARE_DIR="[optional: restricts shared markdown files directory, e.g. /path/to/share]"How to use
Markdownify MCP Server converts a variety of inputs into Markdown using a set of built-in tools. It can transform PDFs, images, audio (with transcription), DOCX, XLSX, PPTX, and even web content like YouTube transcripts, Bing search results, and general web pages into Markdown-formatted text. The server exposes tools such as youtube-to-markdown, pdf-to-markdown, image-to-markdown, audio-to-markdown, docx-to-markdown, xlsx-to-markdown, pptx-to-markdown, and webpage-to-markdown, plus a get-markdown-file function to retrieve existing Markdown files by extension (md or .markdown).
To run, start the server with Node (as shown in the installation section). Once running, you can configure your Desktop App or other MCP clients to point at the server and invoke the individual tools by their tool names. You can also customize the server behavior by editing src/server.ts and adding or adjusting tools in src/tools.ts if you clone and build locally.
How to install
Prerequisites:
- Node.js installed (recommended via nvm or your preferred Node installer)
- PNPM (for development) if you plan to build from source
Installation steps:
-
Clone the repository git clone <repository-url> cd <repository-directory>
-
Install dependencies (using PNPM as per the project guidance) pnpm install
-
Build the project pnpm run build
-
Start the server pnpm start
Notes:
- The README indicates usage with UV (Python/uv) dependencies during installation, so ensure Python and uv are available in your environment if you plan to build server-side tooling.
- If you are deploying in production, consider using the provided mcp_config snippet to integrate with your MCP orchestrator and adjust environment variables as needed.
Additional notes
Environment variables and configuration tips:
- UV_PATH: Path to the uv tool installation. Set this to the absolute path where uv is installed if your environment requires a custom location.
- MD_SHARE_DIR: Optional. When set, restricts where get-markdown-file can pull Markdown documents from. Example: MD_SHARE_DIR=/path/to/allowed/markdowns
- If you are on Windows, the project notes mention developing on Windows; ensure Node, Python, and uv-based tooling are available in your environment and paths are correctly configured.
Common issues:
- If the server fails to start, verify that dist/index.js exists after build and that dependencies are installed correctly.
- Ensure the env paths (UV_PATH, MD_SHARE_DIR) are accessible by the process running the MCP server.
- When integrating with a Desktop App, confirm the absolute path to the built dist/index.js is correctly provided in the configuration.
Related MCP Servers
awesome s
Awesome MCP Servers - A curated list of Model Context Protocol servers
mcp-telegram
MCP Server for Telegram
toolbase
A desktop application that adds powerful tools to Claude and AI platforms
Awesome
Awesome ModelContextProtocol resources - A curated list of MCP resources
mcp
🤖 A Model Context Protocol (MCP) library for use with Agentic chat bots
codemesh
The Self-Improving MCP Server - Agents write code to orchestrate multiple MCP servers with intelligent TypeScript execution and auto-augmentation