Markdownify MCP logo

Markdownify MCP

by zcaceres

Converts documents, media, web pages, and search results into Markdown through MCP tools.

Install Markdownify MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "zcaceres-markdownify-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-markdownify-server"
      ],
      "env": {
        "MARKITDOWN_PATH": "YOUR_VALUE_HERE",
        "REPOMIX_PATH": "YOUR_VALUE_HERE",
        "MD_ALLOWED_PATHS": "YOUR_VALUE_HERE",
        "MD_SHARE_DIR": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 11 tools correctly (Today).

Overview

The zcaceres/markdownify-mcp MCP server converts files and web content into Markdown for use by MCP-compatible AI clients. It exposes separate tools for PDFs, office documents, images, audio transcription, YouTube transcripts, Bing results, web pages, and existing Markdown files. Run it locally with Bun or Docker, with optional path restrictions for file access.

Use cases

  • Convert PDFs into Markdown for agent review
  • Extract transcripts from YouTube videos and audio files
  • Turn office documents into Markdown text
  • Fetch web pages and Bing results as Markdown
  • Retrieve existing Markdown files from permitted directories

Key features

  • PDF, DOCX, XLSX, and PPTX conversion
  • Image conversion with metadata
  • Audio conversion with transcription
  • YouTube, Bing, and web page conversion
  • Markdown file retrieval
  • Optional filesystem path restrictions

Tools11

What Markdownify MCP lets your agent do. Expand a tool for its parameters.

Verified live~644 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

17/18 checks healthy over the last 78d

What it can do

From the 11 tools this server returned when we ran it; 11 declare their own safety hints.

Makes network requests · 4Read-only tools · 11
Network at startup3 connections
Files written at startupNone
Install scriptspreinstall
npm provenanceNot published
Package age614 days
Maintainers2

Observed 2026-10-27 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

1 high-severity advisory on record for this package. Most advisories affect transitive dependencies and may not be exploitable in this server's actual usage — this is a directional signal, not a security audit.

Critical 0High 1Medium 2Low 0

Scanned 1d ago via OSV.dev · mcp-markdownify-server (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2kStargazers on the source repository.
Last commit2d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed11Callable tools this server registers over MCP.
Directory activity4 viewsConfig copies, upvotes, and views on AllMCPs.

How Markdownify MCP works

What the zcaceres/markdownify-mcp MCP server does

The zcaceres/markdownify-mcp MCP server turns several document, media, and web inputs into Markdown. Its MCP tools cover PDF, DOCX, XLSX, and PPTX files; images with metadata; audio with transcription; YouTube videos; Bing search results; and general web pages. A separate tool retrieves an existing Markdown file when its extension is .md or .markdown.

The repository uses the markitdown executable for conversion-related work and includes support for a broader set of formats in the local installation.

How it works

The server runs as a local MCP process and exposes conversion operations as callable tools. A client sends an input such as a file path, web page, search request, or YouTube video to the corresponding tool, and the server returns Markdown-formatted content. Audio conversion includes transcription, while image conversion includes image metadata.

For file-based operations, the server can enforce a read boundary. Set MD_ALLOWED_PATHS to one or more permitted directories; path separators are : on POSIX systems and ; on Windows. MD_SHARE_DIR remains available as a deprecated single-directory alias.

Setup and configuration

The documented local setup is:

  1. Clone the repository.
  2. Run bun install to install dependencies and create the Python virtual environment containing markitdown[all].
  3. Run bun run build.
  4. Start the server with bun start.

The server can also run in Docker. The documented image mounts host directories into the container and sets MD_ALLOWED_PATHS to the corresponding container paths. File tools must receive container paths rather than the original host paths.

The supported configuration variables are:

  • MARKITDOWN_PATH: selects the markitdown executable, overriding the bundled virtual-environment path.
  • REPOMIX_PATH: selects the repomix executable used by git-repo-to-markdown.
  • MD_ALLOWED_PATHS: restricts file-input tools to specified directories.
  • MD_SHARE_DIR: deprecated compatibility alias for a single allowed directory.

Tools and capabilities

The zcaceres/markdownify-mcp MCP server provides these tools:

  • youtube-to-markdown for YouTube videos
  • pdf-to-markdown for PDF files
  • bing-search-to-markdown for Bing search results
  • webpage-to-markdown for web pages
  • image-to-markdown for images and metadata
  • audio-to-markdown for audio files and transcription
  • docx-to-markdown for DOCX files
  • xlsx-to-markdown for XLSX files
  • pptx-to-markdown for PPTX files
  • get-markdown-file for existing .md and .markdown files

Limitations and notes

The published Docker image installs markitdown[pdf] rather than the full extras set.

The desktop-client configuration uses the built dist/index.js file and requires an absolute path to that file. Docker users must mount every host directory the server needs to read and pass the mounted container location to the tools. The repository is licensed under MIT.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Markdownify MCP

Clone the repository, run `bun install`, build with `bun run build`, and start it with `bun start`.

Set `MD_ALLOWED_PATHS` to a path-delimited list of permitted directories. `MD_SHARE_DIR` is supported as a deprecated single-directory alias.

The documented Docker image installs only `markitdown[pdf]`, so audio transcription and image OCR require the local installation with `markitdown[all]`.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMarkdownify MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/zcaceres-markdownify-mcp?style=directory)](https://allmcps.com/mcp/zcaceres-markdownify-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/zcaceres-markdownify-mcp"><img src="https://allmcps.com/api/badge/zcaceres-markdownify-mcp?style=directory" alt="Markdownify MCP on AllMCPs" /></a>