Skip to main content

doc2markdown MCP Server

An MCP (Model Context Protocol) server that converts various document formats to Markdown. Supports DOC/DOCX, PDF, PPTX, and more using the MarkItDown library.

Features

  • convert_to_markdown: Converts document files to Markdown format
    • Supports: .doc, .docx, .pdf, .pptx, .xlsx, .html, .txt, .rtf
    • Returns clean Markdown text

Installation

Option 1: Install from PyPI (recommended)

pip install doc2markdown-mcp

Option 2: Install from GitHub

pip install git+https://github.com/yourusername/doc2markdown.git

Option 3: Install from source

git clone https://github.com/yourusername/doc2markdown.git
cd doc2markdown
pip install .

Configuration

After installation, configure your MCP client to use the server.

Claude Desktop

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "doc2markdown": {
      "command": "doc2markdown"
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "doc2markdown": {
      "command": "doc2markdown"
    }
  }
}

Note: If you installed in a virtual environment, use the full path:

{
  "mcpServers": {
    "doc2markdown": {
      "command": "/path/to/your/venv/bin/doc2markdown"
    }
  }
}

Usage

Once configured, you can use the tool in your MCP-compatible client:

"Convert the document at /path/to/document.docx to markdown"

Available Tools

convert_to_markdown

Converts a document file to Markdown format.

Parameters:

  • file_path (string, required): The absolute or relative path to the document file to convert.

Supported Formats

Format Extension Support Level
Microsoft Word .doc, .docx ✅ Full
PDF .pdf ✅ Full
PowerPoint .pptx ✅ Full
Excel .xlsx ✅ Full
HTML .html, .htm ✅ Full
Plain Text .txt ✅ Full
Markdown .md ✅ Full
Rich Text .rtf ✅ Full

Development

Project Structure

doc2markdown/
├── src/
│   └── doc2markdown/
│       ├── __init__.py
│       └── server.py      # Main MCP server implementation
├── tests/
│   └── test_server.py     # Test script
├── pyproject.toml         # Package configuration
├── requirements.txt       # Development dependencies
└── README.md

Development Setup

git clone https://github.com/yourusername/doc2markdown.git
cd doc2markdown
python -m venv .venv
source .venv/bin/activate
pip install -e .

Running Tests

python tests/test_server.py

License

MIT License

Metadata

Release files for doc2markdown-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for doc2markdown-mcp 0.1.0
File Size Uploaded Provenance
doc2markdown_mcp-0.1.0.tar.gz 4.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for doc2markdown-mcp 0.1.0
File Interpreter ABI Platform
doc2markdown_mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 8.5 kB

Release files / doc2markdown_mcp-0.1.0.tar.gz

Download URL doc2markdown_mcp-0.1.0.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2cd210ee48bbf7c9f84986461a90386a7392537cfa56a26dc6a4955ee93d8cb1
BLAKE2b-256 checksum
How to use checksums
f77c0de3b64e6e81150f71666994ca06361d07111f4bac52fc6c7ddfdbbddb2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.10

Release files / doc2markdown_mcp-0.1.0-py3-none-any.whl

Download URL doc2markdown_mcp-0.1.0-py3-none-any.whl
Size 4.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1e9706e047f9c0d660ee47b4f1983f568c192b59f5ff1617577e48a3318f4ffe
BLAKE2b-256 checksum
How to use checksums
091ba1b70fa52ab4a4c9da017fcbf6fabe10af363c8693c1b43c0215a8a6c8fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.10

Security for doc2markdown-mcp 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page