MCP server for converting documents to Markdown format
Project description
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
- Supports:
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 |
✅ 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file doc2markdown_mcp-0.1.0.tar.gz.
File metadata
- Download URL: doc2markdown_mcp-0.1.0.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cd210ee48bbf7c9f84986461a90386a7392537cfa56a26dc6a4955ee93d8cb1
|
|
| MD5 |
e304f3bcb95d5412ddc38d2225206575
|
|
| BLAKE2b-256 |
f77c0de3b64e6e81150f71666994ca06361d07111f4bac52fc6c7ddfdbbddb2e
|
File details
Details for the file doc2markdown_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: doc2markdown_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e9706e047f9c0d660ee47b4f1983f568c192b59f5ff1617577e48a3318f4ffe
|
|
| MD5 |
0355be2db1ae8d47950c386f8596ee7c
|
|
| BLAKE2b-256 |
091ba1b70fa52ab4a4c9da017fcbf6fabe10af363c8693c1b43c0215a8a6c8fb
|