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
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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| doc2markdown_mcp-0.1.0.tar.gz | 4.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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.