document-converter
Allows converting YouTube video transcripts to Markdown for summarization and analysis.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@document-converterConvert the research paper at ~/Downloads/paper.pdf to markdown"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ Document Converter MCP
Give your AI assistant the ability to read PDFs, Office files, spreadsheets, emails, audio, and more as clean Markdown โ so it can summarize, search, and reason over content instead of struggling with binary attachments.
Table of contents
Related MCP server: markitdown-mcp
Overview ๐
Document Converter MCP is a lightweight stdio server that wraps Microsoft's MarkItDown library for the Model Context Protocol.
flowchart LR
A[Your file on disk] --> B[Document Converter MCP]
B --> C[MarkItDown]
C --> D[Markdown in chat or .md file]Registry | |
Repository | |
Transport | stdio |
Author | Zahid Abbas Ali Baig |
Dependencies |
|
Once connected, your agent converts files locally and returns structured text โ nothing is sent to a conversion API.
Use cases ๐ก
Scenario | What you gain |
Research | Turn PDF papers into Markdown, then ask for summaries, comparisons, or citations |
Documentation | Convert |
Product & engineering | Preview specs and slide decks in chat before writing tickets or release notes |
Data & ops | Convert Excel exports into tables the model can filter, explain, or transform |
Email & archives | Extract text from |
Media | Transcribe |
Features โจ
๐ Local-first โ files stay on your machine; no third-party conversion service
๐ Broad format coverage โ PDF, Office, CSV/JSON/text, Outlook
.msg, audio, YouTube, and more (via MarkItDown)๐ Two workflows โ save Markdown next to the source, or preview in chat only
๐ Copy-paste setup โ step-by-step install for Cursor, VS Code, and Claude Desktop
๐ฆ Registry published โ listed on the official MCP Registry
โ๏ธ MIT licensed โ free for personal and commercial use
Supported formats ๐
Formats below are verified against MarkItDown 0.1.6 with our installed extras:
markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]
We avoid markitdown[all] because it pulls Azure pre-release packages that uv cannot resolve with uvx.
Fully supported (with this project's dependencies)
Category | Extensions / inputs | What you get |
| Text and layout extraction ( | |
Word |
| Headings, paragraphs, tables ( |
PowerPoint |
| Slide text and structure ( |
Excel |
| Workbook tables ( |
Outlook |
| Headers, body, metadata ( |
Web |
| HTML โ Markdown (built-in) |
CSV |
| Markdown tables (built-in) |
Text & JSON |
| Plain text / JSON content (built-in) |
Notebooks |
| Notebook cells as Markdown (built-in) |
E-books |
| Chapter HTML โ Markdown (built-in) |
Archives |
| Each inner file converted if its type is supported (built-in) |
Audio |
| Metadata + speech transcription ( |
YouTube |
| Title, description, captions when available ( |
Limited support
Category | Extensions | Reality |
Images |
| EXIF metadata if |
XML |
| May work as plain text depending on file detection โ not a dedicated XML parser |
Other URLs | Wikipedia, RSS, Bing SERP | MarkItDown can fetch some web URLs; not tested as part of this MCP |
Not supported
Item | Why |
| No MarkItDown converter for RFC 822 |
| Image converter only accepts |
Legacy Office |
|
Video files |
|
Azure Document Intelligence | Needs |
Azure Content Understanding | Pre-release package; breaks |
| Bundles the Azure extras above |
Conversion quality depends on the source file. See the MarkItDown documentation for upstream details.
Quick install ๐
Follow the steps for your editor. Every config below uses the same command โ only the JSON file and wrapper key differ.
Before you start (all editors)
Install uv (includes
uvx).Windows (PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"macOS / Linux:
curl -LsSf https://astral.sh/uv/install.sh | shVerify
uvxworks (open a new terminal after installing):uvx --versionOptional โ test the server (it will sit idle with no output; that is normal for stdio MCP):
uvx --from git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter --with markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription] document-converter-mcpPress
Ctrl+Cto stop.
Install in Cursor ๐ฑ๏ธ
Open Cursor โ Settings โ MCP (or edit your config file directly).
Config file location:
Windows:
%USERPROFILE%\.cursor\mcp.jsonmacOS:
~/.cursor/mcp.jsonLinux:
~/.cursor/mcp.jsonProject-only:
.cursor/mcp.jsonin your project folder
Add or merge this block inside
mcpServers(copy the whole JSON):
{
"mcpServers": {
"document-converter": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter",
"--with",
"markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]",
"document-converter-mcp"
]
}
}
}Save the file and restart Cursor (or click Reload next to MCP in settings).
Check: Settings โ MCP โ
document-convertershould show enabled (green). Tools:convert_to_markdown,preview_markdown.
Open this link in your browser: Add to Cursor
Or paste into the browser address bar:
cursor://anysphere.cursor-deeplink/mcp/install?name=document-converter&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyItLWZyb20iLCJnaXQraHR0cHM6Ly9naXRodWIuY29tL1phaGlkLUFiYmFzLUFsaS1CYWlnL2RvY3VtZW50LWNvbnZlcnRlciIsIi0td2l0aCIsIm1hcmtpdGRvd25bcGRmLGRvY3gscHB0eCx4bHN4LHhscyxvdXRsb29rLGF1ZGlvLXRyYW5zY3JpcHRpb24seW91dHViZS10cmFuc2NyaXB0aW9uXSIsImRvY3VtZW50LWNvbnZlcnRlci1tY3AiXX0%3DClick Install in Cursor, then restart if tools do not appear.
Install in VS Code ๐ป
Requires VS Code 1.102+ with built-in MCP support.
Do not paste
vscode://mcp/install?...anywhere. That link is broken in VS Code and creates servers likemy-mcp-server-*withspawn vscode://... ENOENT. Use the JSON below.
Method A โ Copy-paste user config (recommended)
Ctrl+Shift+P โ MCP: Open User Configuration
Delete any broken servers where
"command"starts withvscode://(e.g.my-mcp-server-15e7e771).Replace the file contents with (or merge
serversinto your existing file):
{
"servers": {
"document-converter": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter",
"--with",
"markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]",
"document-converter-mcp"
]
}
}
}Save, then Ctrl+Shift+P โ MCP: List Servers โ start document-converter.
If you get uvx not found (ENOENT): run where uvx (Windows) or which uvx (macOS/Linux) and set "command" to the full path:
"command": "C:\\Users\\YOUR_USER\\.local\\bin\\uvx.exe"Method B โ Open this repo in VS Code
git clone https://github.com/Zahid-Abbas-Ali-Baig/document-converter.gitFile โ Open Folder โ select
document-converterVS Code loads
.vscode/mcp.jsonautomaticallyCtrl+Shift+P โ MCP: List Servers โ start document-converter
Method C โ Add Server wizard
Ctrl+Shift+P โ MCP: Add Server โ choose stdio, then enter:
Field | Value |
Command |
|
Arg 1 |
|
Arg 2 |
|
Arg 3 |
|
Arg 4 |
|
Arg 5 |
|
Install in Claude Desktop ๐ค
Open Claude Desktop config:
Windows (Microsoft Store):
%LOCALAPPDATA%\Packages\Claude_<id>\LocalCache\Roaming\Claude\claude_desktop_config.jsonWindows (classic):
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
On Windows Store Claude,
%APPDATA%\Claude\may not exist โ use thePackages\Claude_*\...path above.Windows (Microsoft Store) โ one-time setup so
uvx --from git+...can find Git (Claude passes a minimal PATH to MCP servers):powershell -ExecutionPolicy Bypass -File scripts/setup-windows-uvx-git-shim.ps1Or download and run that script from the repo. It creates
%USERPROFILE%\.local\bin\git.cmdpointing at Git for Windows.Add inside
mcpServers(keep existingpreferencesat the root):
{
"mcpServers": {
"document-converter": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter",
"--with",
"markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]",
"document-converter-mcp"
]
}
}
} If you get uvx not found (ENOENT): set "command" to the full path from where uvx, e.g. C:\\Users\\YOUR_USER\\.local\\bin\\uvx.exe.
Restart Claude Desktop completely (quit from tray, reopen).
Verify it works โ
Ask your AI assistant:
List the tools from document-converter MCP.Or:
Preview markdown for a PDF on my machine at C:\path\to\file.pdfYou should see convert_to_markdown and preview_markdown being called.
Tools ๐ ๏ธ
Tool | Description | Writes to disk |
| Converts a file or URL to Markdown and saves output ( | Yes |
| Returns Markdown in the chat response only | No |
Input: absolute or relative path to a file on your machine (or a supported URL for YouTube).
Output: Markdown text suitable for summarization, diffing, or committing to Git.
Usage examples ๐ฌ
Natural-language prompts you can paste into Cursor, VS Code, or Claude Desktop after the MCP server is connected.
Convert a PDF and summarize
Prompt:
Use document-converter to convert C:\Reports\annual-report.pdf to markdown,
then give me a 5-bullet executive summary.What happens: The agent calls convert_to_markdown, creates annual-report.md next to the PDF, and summarizes the result.
Preview a Word doc before saving
Prompt:
Preview markdown for ./contracts/vendor-agreement.docx without saving.
Tell me if there is a termination clause.What happens: The agent calls preview_markdown, reads the content in chat, and answers your question โ no file is written.
Excel to analysis
Prompt:
Convert D:\data\sales-q1.xlsx to markdown and list the top 3 products by revenue.What happens: Spreadsheet tables become Markdown the model can parse and rank.
PowerPoint for release notes
Prompt:
Preview ./slides/product-launch.pptx as markdown and draft release notes
from the slide titles and bullet points.Outlook email extraction
Prompt:
Convert C:\Mail\customer-escalation.msg to markdown and extract action items.Batch-style workflow (multiple files)
Prompt:
Convert these to markdown and save beside each file:
- C:\Docs\spec-v2.pdf
- C:\Docs\api-reference.docx
- C:\Docs\metrics.xlsx
Then confirm the .md paths.Audio transcription
Prompt:
Preview markdown for ./recordings/standup-notes.mp3 and list decisions made.Requires the audio-transcription extra (included in this project's dependencies).
YouTube URL
Prompt (preview in chat):
Use preview_markdown on https://www.youtube.com/watch?v=EXAMPLE and summarize the main points.Prompt (save to file):
Use convert_to_markdown on https://www.youtube.com/watch?v=EXAMPLEWhat happens: MarkItDown fetches the watch page, extracts title/description/metadata, and appends captions via youtube-transcript-api when available. convert_to_markdown saves youtube-EXAMPLE.md in the server working directory.
Use https://www.youtube.com/watch?v=... format. Requires the youtube-transcription extra and an internet connection.
Example Markdown output (PDF)
Illustrative snippet after conversion:
# Quarterly Results
Revenue increased 12% year over year driven by enterprise subscriptions.
## Highlights
- Net retention: 118%
- New logos: 240
- Gross margin: 74%Quality depends on the source document layout and MarkItDown version.
Local development ๐งช
Clone if you prefer a local virtual environment over uvx.
git clone https://github.com/Zahid-Abbas-Ali-Baig/document-converter.git
cd document-converter
python -m venv .venvWindows (PowerShell):
.venv\Scripts\activate
pip install -r requirements.txtmacOS / Linux:
source .venv/bin/activate
pip install -r requirements.txtRun the server directly (stdio โ used by MCP clients):
python server.pyConfiguration reference โ๏ธ
All clients run the same underlying command (full JSON examples are in Quick install ๐ โ not repeated here):
Part | Value |
Command |
|
Arg 1 |
|
Arg 2 |
|
Arg 3 |
|
Arg 4 |
|
Arg 5 |
|
Config file locations
Client | File | JSON root key |
Cursor |
|
|
VS Code | User MCP config or |
|
Claude Desktop |
|
|
Copy-paste configs: Quick install ๐.
Local clone (no uvx)
Clone and install โ see Local development ๐งช. Then point your MCP client at the venv Python:
Windows:
{
"mcpServers": {
"document-converter": {
"command": "REPO_PATH\\.venv\\Scripts\\python.exe",
"args": ["REPO_PATH\\server.py"]
}
}
}macOS / Linux:
{
"mcpServers": {
"document-converter": {
"command": "REPO_PATH/.venv/bin/python",
"args": ["REPO_PATH/server.py"]
}
}
}MCP Registry ๐ฆ
Listed on the official MCP Registry as io.github.Zahid-Abbas-Ali-Baig/document-converter (v1.0.0).
๐ GitHub repository
๐ฅ GitHub Release v1.0.0 (
.mcpbbundle)
Troubleshooting ๐ง
Dependency resolution / markitdown[all] errors
If you see errors about azure-ai-contentunderstanding or pre-releases, remove markitdown[all] from your config. Use:
markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]VS Code: spawn vscode://mcp/install?... ENOENT
VS Code's install link wrote the URL as the command instead of uvx. Fix:
MCP: Open User Configuration (or
.vscode/mcp.jsonin this repo)Delete entries like
my-mcp-server-*where"command"starts withvscode://Use
.vscode/mcp.jsonfrom this repo, or the JSON in Install in VS Code ๐ปMCP: List Servers โ restart document-converter
Do not use the README vscode://mcp/install?... link โ it is unreliable in VS Code.
Claude Desktop: Git executable not found
uvx --from git+... needs Git on PATH. Microsoft Store Claude on Windows often spawns MCP servers with a minimal PATH that omits C:\Program Files\Git\cmd, even when Git works in a normal terminal.
Fix: run the one-time shim script from Install in Claude Desktop ๐ค (step 2). It places git.cmd next to uvx.exe in %USERPROFILE%\.local\bin.
Also ensure: Git for Windows and uv are installed. Pre-warm in PowerShell: uvx --from git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter --with markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription] document-converter-mcp (idle = normal for stdio).
Fallback: Local clone (no uvx) if you cannot use uvx.
Failed to acquire MessagePort
This comes from Cursor or VS Code, not this server:
[MCPService] Error creating client: Failed to acquire MessagePort ...Step | Action |
1 | Fully quit the editor, then reopen |
2 | Install uv for |
3 | Test: |
4 | Use Local clone (no |
5 | Settings โ MCP โ remove and re-add the server |
6 | Update Cursor/VS Code to the latest version |
Reliable fallback: follow Local development ๐งช and use the local clone MCP config.
Install button does nothing (Cursor on Windows)
Use the copy-paste JSON in Install in Cursor ๐ฑ๏ธ instead of the install badge.
Tools not visible
Reload MCP or restart the editor. Confirm the server is enabled (not red/disabled).
License ๐
MIT License โ see LICENSE.
Copyright (c) 2026 Zahid Abbas Ali Baig
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityFmaintenanceConverts various file types (documents, images, audio, web content) to markdown format without requiring Docker, supporting PDF, Word, Excel, PowerPoint, images, audio files, web URLs, and more.Last updated30214MIT
- Flicense-qualityCmaintenanceConverts documents (PDF, DOCX, XLSX, PPTX, HTML, TXT, MD) to Markdown and stores them locally with search and retrieval capabilities.Last updated
- AlicenseAqualityBmaintenanceConverts documents between Markdown, PDF, DOCX, and HTML locally with AI-friendly Markdown output and secure file access.Last updated631MIT
- Flicense-qualityCmaintenanceConverts files (PDF, DOCX, PPTX, XLSX, images via OCR) and URLs to Markdown, enabling AI clients to read them via a single MCP tool.Last updated
Related MCP Connectors
The document publishing layer for AI tools. Convert markdown to 6 destinations, 62 templates.
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Use your own Word templates to convert Markdown โ DOCX/PDF/HTML from any MCP-compatible AI.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Zahid-Abbas-Ali-Baig/document-converter'
If you have feedback or need assistance with the MCP directory API, please join our Discord server