MCP server for converting files to markdown using Markitdown
Project description
DocumentBrain
An MCP (Model Context Protocol) server for reading, converting, and saving documents. Built with FastMCP and MarkItDown, it enables LLMs to interact with files on your local machine.
Features
Tools
| Tool | Description |
|---|---|
| Read Any Document | Reads any supported document and returns its text content, including OCR for images. |
| Save File to PC | Saves content to a file at a specified path on your machine. |
Resources
| Resource | URI | Description |
|---|---|---|
| Local Document Directory | docs://files |
Lists all files in the current working directory. |
| Document Content | docs://file/{filename} |
Retrieves the converted text content of a specific file. |
Prompts
| Prompt | Description |
|---|---|
analyze_data |
Generates a creative four-line song based on user-provided text. |
Installation
Prerequisites
- Python >= 3.12
Install from source
pip install -e .
Install dependencies only
pip install mcp-document-brain
Usage
Run the MCP server
mcp-document-brain
Configure in Claude Desktop / Cursor
Add the following to your MCP client configuration:
{
"mcpServers": {
"DocumentBrain": {
"command": "mcp-document-brain"
}
}
}
Example tool usage
Read a document:
Tool: read_any_document
Arguments: { "file_path": "~/Documents/report.pdf" }
Save a file:
Tool: save_file_to_pc
Arguments: { "filepath": "/path/to/output.txt", "content": "Hello, world!" }
Project Structure
DocumentBrain/
├── src/
│ └── document_brain/
│ ├── __init__.py
│ └── server.py # MCP server with tools, resources, and prompts
├── tests/
│ └── test_server.py
├── pyproject.toml
└── README.md
Supported File Formats
DocumentBrain leverages MarkItDown to convert a wide range of file formats, including:
- Word documents (.docx)
- Excel spreadsheets (.xlsx)
- PowerPoint presentations (.pptx)
- Images (with OCR)
- HTML
- Plain text
- And more (see MarkItDown docs for the full list)
Development
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
License
MIT
Author
Vishwesh Vinchurkar — vishwesh.vinchurkar@gmail.com
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 vvin_document_brain-0.1.1.tar.gz.
File metadata
- Download URL: vvin_document_brain-0.1.1.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea3fe2a8e5592fa30d8678c7924e2f21572727e514ff362b607e3cf138a4ce9c
|
|
| MD5 |
2ca517f7168b9d9e1436252542dea603
|
|
| BLAKE2b-256 |
b18ad0e34811847c65b3300ce5bc18c33e1e88979c6ca7213ec0dfafbd1fa992
|
File details
Details for the file vvin_document_brain-0.1.1-py3-none-any.whl.
File metadata
- Download URL: vvin_document_brain-0.1.1-py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb8deeb0fa91cbfc0c5d537c165b888fa90cd59709dae8200f5e1131df810658
|
|
| MD5 |
0771fcf87c3c184ac91e6f51c0a7525f
|
|
| BLAKE2b-256 |
b7e976e63b51efbb247bfc19428583da45532275abcabe8316175f2b1941b724
|