document-converter について
document-converter は MarkItDown を利用してローカル文書を Markdown に変換する stdio MCP サーバーです。MCP クライアントでファイルを扱うユーザー向けで、変換結果の保存とチャット内プレビューに対応し、処理はローカルで行います。
主な機能
- 01ローカル文書を Markdown に変換
- 02PDF、Office、表計算、音声に対応
- 03Markdown の保存とチャット内プレビュー
- 04YouTube 字幕の変換
活用シーン
- 01研究論文の PDF を要約用に変換
- 02Office の原稿を Markdown 文書化
- 03表計算の内容を Markdown 表に変換
- 04音声の文字起こしや YouTube 字幕の取得
MCP 対応
stdio MCP サーバーとして、ファイルや対応 URL を Markdown に変換する convert_to_markdown と preview_markdown ツールをクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
📄 Document Converter MCP
Cursor、VS Code、その他あらゆる MCP クライアントで、ドキュメントを Markdown に変換できます。
ローカルで処理 · クラウドへのアップロードなし · MarkItDown を利用
AI アシスタントがPDF、Office ファイル、スプレッドシート、メール、音声などを読み取れるようにし、整った Markdown として扱えます。これにより、バイナリ添付ファイルに苦労することなく、コンテンツの要約、検索、推論が可能になります。
目次
- 概要 📋
- ユースケース 💡
- 機能 ✨
- 対応形式 📎
- クイックインストール 🚀
- ツール 🛠️
- 使用例 💬
- ローカル開発 🧪
- 設定リファレンス ⚙️
- MCP レジストリ 📦
- トラブルシューティング 🔧
- ライセンス 📜
概要 📋
Document Converter MCP は、Model Context Protocol 向けに、Microsoft の MarkItDown ライブラリをラップした軽量な stdio サーバーです。
flowchart LR
A[Your file on disk] --> B[Document Converter MCP]
B --> C[MarkItDown]
C --> D[Markdown in chat or .md file]
| レジストリ | io.github.Zahid-Abbas-Ali-Baig/document-converter |
| リポジトリ | https://github.com/Zahid-Abbas-Ali-Baig/document-converter |
| トランスポート | stdio |
| 作成者 | Zahid Abbas Ali Baig |
| 依存関係 | markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription] |
接続すると、エージェントはファイルをローカルで変換し、構造化されたテキストを返します。変換 API にデータが送信されることはありません。
ユースケース 💡
| シナリオ | メリット |
|---|---|
| リサーチ | PDF 論文を Markdown に変換し、要約、比較、引用を依頼できます |
| ドキュメント作成 | .docx / .pptx の草稿を、Wiki や Git 用に元ファイルと同じ場所にある .md に変換できます |
| プロダクトとエンジニアリング | チケットやリリースノートを作成する前に、仕様書やスライド資料をチャットで確認できます |
| データと運用 | Excel のエクスポートデータを、モデルがフィルタリング、説明、変換できる表に変換できます |
| メールとアーカイブ | .msg 形式の Outlook ファイルや ZIP の内容から、手作業でコピー&ペーストせずにテキストを抽出できます |
| メディア | .mp3 / .wav を文字起こししたり、YouTube の字幕を取得して編集可能な Markdown に変換したりできます |
機能 ✨
- 🏠 ローカル優先 — ファイルはお使いのマシン内に保持され、サードパーティの変換サービスは使用しません
- 📎 幅広い形式に対応 — PDF、Office、CSV/JSON/テキスト、Outlook
.msg、音声、YouTube など(MarkItDown 経由) - 🔀 2 つのワークフロー — Markdown を元ファイルの隣に保存するか、チャット内だけでプレビューできます
- 📋 コピー&ペーストで設定 — Cursor、VS Code、Claude Desktop 向けの手順に沿ったインストール
- 📦 レジストリに掲載 — 公式 MCP レジストリに登録されています
- ⚖️ MIT ライセンス — 個人利用、商用利用ともに無料です
サポートされている形式 📎
以下の形式は、インストール済みの追加パッケージを使用し、MarkItDown 0.1.6 で動作確認済みです。
markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]
uvx では解決できない Azure のプレリリースパッケージが含まれるため、markitdown[all] は使用していません。
完全にサポート(このプロジェクトの依存関係を使用)
| カテゴリ | 拡張子/入力 | 得られる内容 |
|---|---|---|
.pdf | テキストとレイアウトの抽出([pdf] 追加パッケージ) | |
| Word | .docx のみ | 見出し、段落、表([docx] — 旧形式の .doc は対象外) |
| PowerPoint | .pptx のみ | スライドのテキストと構造([pptx] — 旧形式の .ppt は対象外) |
| Excel | .xlsx、.xls | ブックの表([xlsx]/[xls]) |
| Outlook | .msg | ヘッダー、本文、メタデータ([outlook]) |
| Web | .html、.htm | HTML → Markdown(組み込み) |
| CSV | .csv | Markdown の表(組み込み) |
| テキストと JSON | .txt、.md、.json、.jsonl | プレーンテキスト/JSON の内容(組み込み) |
| ノートブック | .ipynb | ノートブックのセルを Markdown として出力(組み込み) |
| 電子書籍 | .epub | 章の HTML → Markdown(組み込み) |
| アーカイブ | .zip | 内部の各ファイルを、対応する形式であれば変換(組み込み) |
| 音声 | .mp3、.wav、.m4a | メタデータと音声の文字起こし([audio-transcription]) |
| YouTube | https://www.youtube.com/watch?v=... | タイトル、説明、利用可能な場合は字幕([youtube-transcription]) |
限定的なサポート
| カテゴリ | 拡張子 | 実際の動作 |
|---|---|---|
| 画像 | .jpg、.jpeg、.png のみ | exiftool が PATH 上にある場合は EXIF メタデータを取得します。この MCP サーバーには組み込みの OCR はありません(MarkItDown は LLM クライアントが設定されている場合にのみ画像を説明できますが、ここでは設定していません) |
| XML | .xml | ファイルの検出方法によってはプレーンテキストとして処理できる場合があります。専用の XML パーサーではありません |
| その他の URL | Wikipedia、RSS、Bing SERP | MarkItDown は一部の Web URL を取得できますが、この MCP の一部としてはテストされていません |
サポート対象外
| 項目 | 理由 |
|---|---|
.eml | RFC 822 の .eml ファイル用の MarkItDown コンバーターがありません |
.gif、.webp、.bmp、… | 画像コンバーターが受け付けるのは .jpg/.jpeg/.png のみです |
| 旧形式の Office | .doc、.ppt — .docx/.pptx を使用してください |
| 動画ファイル | .mp4 など — 動画としては変換されません(音声コンバーターを通じて、場合によっては音声トラックを処理できます) |
| Azure Document Intelligence | markitdown[az-doc-intel] と Azure エンドポイントが必要です |
| Azure Content Understanding | プレリリースパッケージのため、uvx の依存関係解決に問題が発生します |
markitdown[all] | 上記の Azure 追加パッケージが含まれています |
変換品質はソースファイルによって異なります。上流の詳細については、MarkItDown のドキュメントを参照してください。
クイックインストール 🚀
使用するエディターの手順に従ってください。以下の設定ではすべて同じコマンドを使用し、異なるのは JSON ファイルとラッパーキーのみです。
開始前に(すべてのエディター)
-
uv をインストールします(
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 | sh -
uvxが動作することを確認します(インストール後、新しいターミナルを開いてください)。uvx --version -
任意 — サーバーをテストします(出力はなくアイドル状態になります。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-mcp停止するには
Ctrl+Cを押してください。
Cursor にインストールする 🖱️
- Cursor → Settings → MCP を開きます(または、設定ファイルを直接編集します)。
- 設定ファイルの場所:
- Windows:
%USERPROFILE%\.cursor\mcp.json - macOS:
~/.cursor/mcp.json - Linux:
~/.cursor/mcp.json - プロジェクトのみ: プロジェクトフォルダー内の
.cursor/mcp.json
- Windows:
mcpServers内にこのブロックを追加するか、既存の設定に統合します(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"
]
}
}
}
- ファイルを保存して、Cursor を再起動します(または、設定画面で MCP の横にある Reload をクリックします)。
- 確認: Settings → MCP で
document-converterが有効(緑色)になっていることを確認します。ツール:convert_to_markdown、preview_markdown。
Cursor ワンクリックインストール(任意 — 手動での JSON 設定に失敗した場合はこちらを使用してください)
- ブラウザーでこのリンクを開きます:Cursor に追加
- または、ブラウザーのアドレスバーに貼り付けます。
cursor://anysphere.cursor-deeplink/mcp/install?name=document-converter&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyItLWZyb20iLCJnaXQraHR0cHM6Ly9naXRodWIuY29tL1phaGlkLUFiYmFzLUFsaS1CYWlnL2RvY3VtZW50LWNvbnZlcnRlciIsIi0td2l0aCIsIm1hcmtpdGRvd25bcGRmLGRvY3gscHB0eCx4bHN4LHhscyxvdXRsb29rLGF1ZGlvLXRyYW5zY3JpcHRpb24seW91dHViZS10cmFuc2NyaXB0aW9uXSIsImRvY3VtZW50LWNvbnZlcnRlci1tY3AiXX0%3D
- Cursor で Install をクリックし、ツールが表示されない場合は再起動します。
VS Code にインストールする 💻
組み込みの MCP サポートを利用するには、VS Code 1.102+ が必要です。
vscode://mcp/install?...はどこにも貼り付けないでください。 このリンクは VS Code では機能せず、spawn vscode://... ENOENTが発生するmy-mcp-server-*のようなサーバーが作成されます。以下の JSON を使用してください。
方法 A — ユーザー設定をコピーして貼り付ける(推奨)
- Ctrl+Shift+P → MCP: Open User Configuration
"command"がvscode://で始まる、壊れたサーバーがあれば削除します(例:my-mcp-server-15e7e771)。- ファイルの内容を次の内容で置き換えます(または、既存のファイルに
serversを統合します)。
{
"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"
]
}
}
}
- 保存してから、Ctrl+Shift+P → MCP: List Servers → document-converter を起動します。
uvx が見つからないというエラー(ENOENT)が発生する場合: where uvx(Windows)または which uvx(macOS/Linux)を実行し、"command" にフルパスを設定します。
"command": "C:\\Users\\YOUR_USER\\.local\\bin\\uvx.exe"
方法 B — VS Code でこのリポジトリを開く
git clone https://github.com/Zahid-Abbas-Ali-Baig/document-converter.git- File → Open Folder →
document-converterを選択します - VS Code が
.vscode/mcp.jsonを自動的に読み込みます - Ctrl+Shift+P → MCP: List Servers → document-converter を起動します
方法 C — サーバー追加ウィザード
Ctrl+Shift+P → MCP: Add Server → stdio を選択し、次の値を入力します。
| フィールド | 値 |
|---|---|
| コマンド | uvx |
| 引数 1 | --from |
| 引数 2 | git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter |
| 引数 3 | --with |
| 引数 4 | markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription] |
| 引数 5 | document-converter-mcp |
Claude Desktop にインストール 🤖
-
Claude Desktop の設定ファイルを開きます:
- Windows(Microsoft Store):
%LOCALAPPDATA%\Packages\Claude_<id>\LocalCache\Roaming\Claude\claude_desktop_config.json - Windows(クラシック版):
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows Store 版 Claude では
%APPDATA%\Claude\が存在しない場合があります。その場合は、上記のPackages\Claude_*\...パスを使用してください。 - Windows(Microsoft Store):
-
Windows(Microsoft Store)— 初回のみのセットアップ:
uvx --from git+...で Git を見つけられるようにします(Claude は MCP サーバーに最小限の PATH を渡します)。powershell -ExecutionPolicy Bypass -File scripts/setup-windows-uvx-git-shim.ps1または、リポジトリからこのスクリプトをダウンロードして実行します。Git for Windows を指す
%USERPROFILE%\.local\bin\git.cmdが作成されます。 -
mcpServers内に追加します(ルートにある既存のpreferencesはそのままにします)。
{
"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"
]
}
}
}
uvx が見つからない(ENOENT)場合: "command" に where uvx で確認できるフルパスを設定します。例:C:\\Users\\YOUR_USER\\.local\\bin\\uvx.exe。
- Claude Desktop を完全に再起動します(トレイから終了して、再度開きます)。
動作確認 ✅
AI アシスタントに次のように尋ねます:
List the tools from document-converter MCP.
または:
Preview markdown for a PDF on my machine at C:\path\to\file.pdf
convert_to_markdown と preview_markdown が呼び出されることを確認してください。
ツール 🛠️
| ツール | 説明 | ディスクへの書き込み |
|---|---|---|
convert_to_markdown | ファイルまたは URL を Markdown に変換して出力を保存します(元ファイルの隣に .md を保存、YouTube URL の場合は youtube-{id}.md を保存) | はい |
preview_markdown | チャットの応答にのみ Markdown を返します | いいえ |
入力: お使いのマシン上のファイルへの絶対パスまたは相対パス(または YouTube のサポート対象 URL)。
出力: 要約、差分確認、または Git へのコミットに適した Markdown テキスト。
使用例 💬
MCP サーバー接続後に Cursor、VS Code、または Claude Desktop に貼り付けられる自然言語のプロンプトです。
PDF を変換して要約する
プロンプト:
Use document-converter to convert C:\Reports\annual-report.pdf to markdown,
then give me a 5-bullet executive summary.
動作: エージェントが convert_to_markdown を呼び出し、PDF の隣に annual-report.md を作成して、結果を要約します。
保存前に Word 文書をプレビューする
プロンプト:
Preview markdown for ./contracts/vendor-agreement.docx without saving.
Tell me if there is a termination clause.
動作: エージェントが preview_markdown を呼び出し、チャット内で内容を読み取って質問に回答します。ファイルは書き込まれません。
Excel を分析する
プロンプト:
Convert D:\data\sales-q1.xlsx to markdown and list the top 3 products by revenue.
動作: スプレッドシートの表が、モデルで解析して順位付けできる Markdown になります。
リリースノート用の PowerPoint
プロンプト:
Preview ./slides/product-launch.pptx as markdown and draft release notes
from the slide titles and bullet points.
Outlook メールの抽出
プロンプト:
Convert C:\Mail\customer-escalation.msg to markdown and extract action items.
バッチ形式のワークフロー(複数ファイル)
プロンプト:
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.
音声の文字起こし
プロンプト:
Preview markdown for ./recordings/standup-notes.mp3 and list decisions made.
audio-transcription エクストラが必要です(このプロジェクトの依存関係に含まれています)。
YouTube URL
プロンプト(チャットでプレビュー):
Use preview_markdown on https://www.youtube.com/watch?v=EXAMPLE and summarize the main points.
プロンプト(ファイルに保存):
Use convert_to_markdown on https://www.youtube.com/watch?v=EXAMPLE
動作: MarkItDown が視聴ページを取得し、タイトル、説明、メタデータを抽出します。利用可能な場合は、youtube-transcript-api を使用して字幕を追加します。convert_to_markdown は、サーバーの作業ディレクトリに youtube-EXAMPLE.md を保存します。
https://www.youtube.com/watch?v=... 形式を使用してください。youtube-transcription エクストラとインターネット接続が必要です。
Markdown 出力例(PDF)
変換後の例:
# Quarterly Results
Revenue increased 12% year over year driven by enterprise subscriptions.
## Highlights
- Net retention: 118%
- New logos: 240
- Gross margin: 74%
品質は、元の文書のレイアウトと MarkItDown のバージョンによって異なります。
ローカル開発 🧪
uvx ではなくローカルの仮想環境を使用する場合は、クローンしてください。
git clone https://github.com/Zahid-Abbas-Ali-Baig/document-converter.git
cd document-converter
python -m venv .venv
Windows(PowerShell):
.venv\Scripts\activate
pip install -r requirements.txt
macOS / Linux:
source .venv/bin/activate
pip install -r requirements.txt
サーバーを直接実行します(stdio — MCP クライアントで使用):
python server.py
設定リファレンス ⚙️
すべてのクライアントで、同じ基盤コマンドを実行します(完全な JSON の例はクイックインストール 🚀に記載しています。ここでは再掲しません)。
| 項目 | 値 |
|---|---|
| コマンド | uvx |
| 引数 1 | --from |
| 引数 2 | git+https://github.com/Zahid-Abbas-Ali-Baig/document-converter |
| 引数 3 | --with |
| 引数 4 | markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription] |
| 引数 5 | document-converter-mcp |
設定ファイルの場所
| クライアント | ファイル | JSON ルートキー |
|---|---|---|
| Cursor | %USERPROFILE%\.cursor\mcp.json または .cursor/mcp.json | mcpServers |
| VS Code | ユーザー MCP 設定または .vscode/mcp.json | servers(および "type": "stdio") |
| Claude Desktop | claude_desktop_config.json | mcpServers |
コピーして貼り付けられる設定: クイックインストール 🚀。
ローカルクローン(uvx なし)
クローンしてインストールします。手順はローカル開発 🧪を参照してください。その後、MCP クライアントが仮想環境の 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 レジストリ 📦
公式 MCP レジストリに io.github.Zahid-Abbas-Ali-Baig/document-converter(v1.0.0)として登録されています。
- 🔍 レジストリの項目(v1.0.0)
- 📂 GitHub リポジトリ
- 📥 GitHub リリース v1.0.0(
.mcpbバンドル)
トラブルシューティング 🔧
依存関係の解決/markitdown[all] のエラー
azure-ai-contentunderstanding またはプレリリースに関するエラーが表示される場合は、設定から markitdown[all] を削除してください。代わりに、次を使用します。
markitdown[pdf,docx,pptx,xlsx,xls,outlook,audio-transcription,youtube-transcription]
VS Code:spawn vscode://mcp/install?... ENOENT
VS Code のインストールリンクによって、uvx ではなく URL がコマンドとして書き込まれています。修正方法:
- MCP: Open User Configuration(またはこのリポジトリ内の
.vscode/mcp.json)を開きます "command"がvscode://で始まるmy-mcp-server-*のような項目を削除します- このリポジトリの
.vscode/mcp.json、またはVS Code にインストール 💻の JSON を使用します - MCP: List Servers → document-converter を再起動します
README の vscode://mcp/install?... リンクは使用しないでください。VS Code では信頼性がありません。
Claude Desktop:Git executable not found
uvx --from git+... の実行には、PATH 上に Git が必要です。Windows の Microsoft Store 版 Claude では、通常のターミナルで Git が動作する場合でも、C:\Program Files\Git\cmd が含まれていない最小限の PATH で MCP サーバーが起動されることがよくあります。
修正方法:Claude Desktop にインストール 🤖(手順 2)に記載されている一度だけ実行するシムスクリプトを実行します。%USERPROFILE%\.local\bin 内の uvx.exe と同じ場所に git.cmd が配置されます。
併せて確認してください:Git for Windows と uv がインストールされていること。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(stdio では、アイドル状態は正常です)。
代替方法:uvx を使用できない場合は、ローカルクローン(uvx なし)を使用してください。
Failed to acquire MessagePort
これはこのサーバーではなく、Cursor または VS Code によるものです。
[MCPService] Error creating client: Failed to acquire MessagePort ...
| 手順 | 操作 |
|---|---|
| 1 | エディターを完全に終了してから、再度開きます |
| 2 | uvx でインストールする場合は uv をインストールします |
| 3 | テストします: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(stdio ではアイドル状態が正常です) |
| 4 | uvx が失敗する場合は、ローカルクローン(uvx なし) を使用します |
| 5 | Settings → MCP → サーバーを削除して再追加します |
| 6 | Cursor/VS Code を最新バージョンに更新します |
確実な代替手段: ローカル開発 🧪 の手順に従い、ローカルクローンの MCP 設定を使用します。
インストールボタンが反応しない(Windows の Cursor)
インストールバッジではなく、Cursor へのインストール 🖱️ にある JSON をコピーして貼り付けてください。
ツールが表示されない
MCP を再読み込みするか、エディターを再起動します。サーバーが有効になっていること(赤色/無効ではないこと)を確認してください。
ライセンス 📜
MIT ライセンス — LICENSE を参照してください。
Copyright (c) 2026 Zahid Abbas Ali Baig
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。