Markdownify MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
pnpm install
pnpm run build
pnpm start
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add markdownify -- node "<FULL_PATH_TO_MARKDOWNIFY_MCP_HTTP_SERVER>/dist/index.js"

Replace <FULL_PATH_TO_MARKDOWNIFY_MCP_HTTP_SERVER>/dist/index.js with the actual folder you prepared in step 1.

README.md

Converts various file types and web content to Markdown format.

Markdownify MCP Server

Help! I need someone with a Windows computer to help me add support for Markdownify-MCP on Windows. PRs exist but I cannot test them. Post here if interested.

markdownify mcp logo

Markdownify is a Model Context Protocol (MCP) server that converts various file types and web content to Markdown format. It provides a set of tools to transform PDFs, images, audio files, web pages, and more into easily readable and shareable Markdown text.

Features

  • Convert multiple file types to Markdown:
    • PDF
    • Images
    • Audio (with transcription)
    • DOCX
    • XLSX
    • PPTX
  • Convert web content to Markdown:
    • YouTube video transcripts
    • Bing search results
    • General web pages
  • Retrieve existing Markdown files

Getting Started

  1. Clone this repository
  2. Install dependencies:
    pnpm install
    

Note: this will also install uv and related Python depdencies.

  1. Build the project:
    pnpm run build
    
  2. Start the server:
    pnpm start
    

Development

  • Use pnpm run dev to start the TypeScript compiler in watch mode
  • Modify src/server.ts to customize server behavior
  • Add or modify tools in src/tools.ts

Usage with Desktop App

To integrate this server with a desktop app, add the following to your app's server configuration:

{
  "mcpServers": {
    "markdownify": {
      "command": "node",
      "args": [
        "{ABSOLUTE PATH TO FILE HERE}/dist/index.js"
      ],
      "env": {
        // By default, the server will use the default install location of `uv`
        "UV_PATH": "/path/to/uv"
      }
    }
  }
}

Available Tools

  • youtube-to-markdown: Convert YouTube videos to Markdown

  • pdf-to-markdown: Convert PDF files to Markdown

  • bing-search-to-markdown: Convert Bing search results to Markdown

  • webpage-to-markdown: Convert web pages to Markdown

  • image-to-markdown: Convert images to Markdown with metadata

  • audio-to-markdown: Convert audio files to Markdown with transcription

  • docx-to-markdown: Convert DOCX files to Markdown

  • xlsx-to-markdown: Convert XLSX files to Markdown

  • pptx-to-markdown: Convert PPTX files to Markdown

  • get-markdown-file: Retrieve an existing Markdown file. File extension must end with: *.md, *.markdown.

    OPTIONAL: set MD_SHARE_DIR env var to restrict the directory from which files can be retrieved, e.g. MD_SHARE_DIR=[SOME_PATH] pnpm run start

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Tools (10)

youtube-to-markdownConvert YouTube videos to Markdown
pdf-to-markdownConvert PDF files to Markdown
bing-search-to-markdownConvert Bing search results to Markdown
webpage-to-markdownConvert web pages to Markdown
image-to-markdownConvert images to Markdown with metadata
audio-to-markdownConvert audio files to Markdown with transcription
docx-to-markdownConvert DOCX files to Markdown
xlsx-to-markdownConvert XLSX files to Markdown
pptx-to-markdownConvert PPTX files to Markdown
get-markdown-fileRetrieve an existing Markdown file

Environment Variables

UV_PATHPath to the uv executable
MD_SHARE_DIRRestrict the directory from which files can be retrieved

Configuration

claude_desktop_config.json
{
  "mcpServers": {
    "markdownify": {
      "command": "node",
      "args": [
        "{ABSOLUTE PATH TO FILE HERE}/dist/index.js"
      ],
      "env": {
        "UV_PATH": "/path/to/uv"
      }
    }
  }
}

Try it

Convert this PDF report into Markdown so I can summarize it.
Transcribe the audio file at this path and give me the text in Markdown.
Get the transcript for this YouTube video URL.
Convert this webpage into a clean Markdown format for my notes.
Extract the content from this DOCX file.

Frequently Asked Questions

What are the key features of Markdownify?

Converts PDFs, images, and audio files to Markdown. Supports Office document formats including DOCX, XLSX, and PPTX. Transforms web content like YouTube transcripts and Bing search results. Securely retrieves existing Markdown files from a restricted directory.

What can I use Markdownify for?

Summarizing long PDF documents or research papers. Creating searchable text transcripts from video and audio files. Converting web articles into clean Markdown for knowledge base integration. Processing Office documents for data extraction and analysis.

How do I install Markdownify?

Install Markdownify by running: pnpm install && pnpm run build && pnpm start

What MCP clients work with Markdownify?

Markdownify works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Markdownify docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare