DEV.co
MCP Servers · zcaceres

markdownify-mcp

Markdownify MCP is a TypeScript-based server that converts PDFs, images, audio, web pages, and office documents into Markdown format. It integrates with Claude and other AI models via the Model Context Protocol, enabling automated content extraction and transformation.

Source: GitHub — github.com/zcaceres/markdownify-mcp
2.8k
GitHub stars
233
Forks
TypeScript
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryzcaceres/markdownify-mcp
Ownerzcaceres
Primary languageTypeScript
LicenseMIT — OSI-approved
Stars2.8k
Forks233
Open issues21
Latest releasev1.1.0 (2026-05-01)
Last updated2026-07-02
Sourcehttps://github.com/zcaceres/markdownify-mcp

What markdownify-mcp is

A Node.js/TypeScript MCP server wrapping the Python markitdown library and additional CLI tools (repomix) to provide 10+ conversion tools across file types and web sources. Uses environment-based path restrictions and supports Docker deployment with configurable extras.

Quickstart

Get the markdownify-mcp source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/zcaceres/markdownify-mcp.gitcd markdownify-mcp# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

AI-powered document ingestion pipelines

Feed PDFs, images, and office files to Claude or other LLMs via MCP; automate extraction of structured content from unstructured sources without manual transcription.

Knowledge base preparation

Bulk convert web pages, YouTube transcripts, and Bing search results into Markdown for RAG systems, documentation sites, or knowledge management tools.

Content repurposing workflows

Transform presentations, spreadsheets, and scanned documents into editable Markdown for blog posts, wikis, or collaborative editing platforms.

Implementation considerations

  • Requires bun (or Node.js) and Python virtual environment; setup script creates `.venv` automatically but adds first-run complexity.
  • Audio transcription and image OCR depend on `markitdown[all]` extras; slim deployments fail silently without them. Audit feature requirements before deployment.
  • Set `MD_ALLOWED_PATHS` to restrict file-input tool access; production deployments should never run unrestricted.
  • External API calls (YouTube, Bing) may introduce rate limits or require auth tokens—document upstream dependencies.
  • Output quality varies by source type; test conversion quality on representative samples before automation.

When to avoid it — and what to weigh

  • Requires pixel-perfect formatting preservation — Markdown output trades layout fidelity for readability; complex PDFs with multi-column layouts, charts, or precise spacing may lose structural information.
  • Handling sensitive/proprietary documents offline-only — Some tools (e.g., Bing search, YouTube transcription) require external API calls; if data exfiltration is a concern, audit network configuration and consider self-hosted alternatives.
  • Production use without path sandboxing — The `MD_ALLOWED_PATHS` feature is optional; deploying without it exposes arbitrary filesystem read access. Requires explicit hardening in production.
  • Audio transcription without external dependency management — Audio and OCR features require optional Python extras; Docker slim image omits them. Adds operational overhead for dependency versioning.

License & commercial use

Licensed under MIT (permissive OSI license). Source is freely available; no proprietary or copyleft restrictions.

MIT license permits commercial use, modification, and distribution with attribution and liability waiver. No license fees or vendor lock-in. Review upstream dependencies (markitdown, repomix) for their own license compatibility if bundling.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

File access: `MD_ALLOWED_PATHS` enforces directory sandbox; omitting it allows unrestricted reads. External APIs: YouTube and Bing calls leak request metadata upstream. Subprocess execution (markitdown): standard Python library risk if inputs are untrusted. Secrets: no credential management evident; audio/search features may require API keys (not documented). Requires review of upstream libraries (markitdown, repomix) for known CVEs.

Alternatives to consider

Pandoc + custom wrapper

Mature document converter with wider format support, but lacks web/audio tools; requires custom MCP glue code.

Unstructured.io (library)

Purpose-built document ingestion for LLMs; more feature-rich but heavier dependency and different licensing model.

Claude Files API + native document parsing

Native Claude integration; no server deployment needed, but limited format coverage and Anthropic pricing/ToS apply.

Software development agency

Build on markdownify-mcp with DEV.co software developers

Evaluate markdownify-mcp for your document ingestion pipeline. Test feature completeness, set up path sandboxing, and review upstream dependencies before production deployment.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

markdownify-mcp FAQ

Can I use this in production without path restrictions?
Not recommended. Set `MD_ALLOWED_PATHS` to sandbox file-input tools. Unrestricted access is a filesystem traversal risk.
Why do audio and OCR features fail in the Docker slim image?
The published Docker image installs only `markitdown[pdf]`. Audio/OCR require `[all]` extras. Use local `bun install` or build a custom image with full extras.
What happens if an external API (YouTube, Bing) is unavailable?
Not documented. Assume tool calls fail gracefully; review error handling in source code. Rate limits and auth tokens not explicitly covered.
Is this suitable for processing sensitive/proprietary documents?
Depends on your threat model. Bing and YouTube tools make external requests. If air-gap is required, disable those tools or self-host alternatives.

Work with a software development agency

DEV.co is a software development agency delivering custom software development services to companies building on open source. Our software developers and web developers design, integrate, and ship production systems — spanning web development, APIs, AI, data, and cloud. If markdownify-mcp is part of your mcp servers roadmap, our team can implement, customize, migrate, and maintain it.

Ready to automate content extraction?

Evaluate markdownify-mcp for your document ingestion pipeline. Test feature completeness, set up path sandboxing, and review upstream dependencies before production deployment.