MCP Document Reader
機能特性
読み書き一体:ドキュメントの読み取りだけでなく、構造化されたパラメータに基づいてWord / PowerPointファイルの生成も可能
幅広いフォーマット対応:TXT、CSV、Markdown、DOC、DOCX、PDF、PPT、PPTX、EPUB、XLSX、XLSをサポート
構造化されたライティング:段落、テーブル、タイトルページ、箇条書きページ、プレゼンテーションテーブルの生成をサポート
旧フォーマットへのエクスポート:LibreOfficeをインストールすることで、
.docおよび.pptへのエクスポートが可能MCPプロトコル:MCP標準に準拠しており、AIアシスタント(Trae IDEなど)のツールとして使用可能
統合の容易さ:簡単な設定ですぐに使用可能
信頼性の高いパフォーマンス:読み取り、生成、変換のフォールバック、ツールインターフェースを網羅する自動テスト
ファイルシステムサポート:ファイルシステムから直接ドキュメントの読み書きが可能
📚 ドキュメントセンター
ユーザーガイド · APIリファレンス · 貢献ガイド · 更新履歴 · ライセンス
アーキテクチャ
graph TB
A[AI Assistant / User<br/>AI 助手 / 用户] -->|Call MCP tools<br/>调用 MCP 工具| B[MCP Document Reader<br/>MCP 文档读取器]
B -->|Read<br/>读取| C[Document Readers<br/>文档读取器]
B -->|Generate<br/>生成| D[Document Writers<br/>文档生成器]
C -->|TXT / CSV / MD| E[Text-based Readers<br/>文本类读取器]
C -->|DOC / DOCX| F[Word Readers<br/>Word 读取器]
C -->|PPT / PPTX| G[Presentation Readers<br/>演示读取器]
C -->|PDF / EPUB / Excel| H[Structured Readers<br/>结构化读取器]
D -->|write_word_document| I[DOCX Builder<br/>DOCX 生成器]
D -->|write_presentation| J[PPTX Builder<br/>PPTX 生成器]
I -->|Optional conversion<br/>可选转换| K[LibreOffice -> DOC]
J -->|Optional conversion<br/>可选转换| L[LibreOffice -> PPT]
E --> M[Return text / metadata<br/>返回文本 / 元数据]
F --> M
G --> M
H --> M
K --> M
L --> M
M --> A
style A fill:#e1f5ff
style B fill:#fff4e1
style C fill:#f0f0f0
style D fill:#e8f5e9
style E fill:#e8f5e9
style F fill:#e8f5e9
style G fill:#e8f5e9
style H fill:#fff9c4対応フォーマット
機能 | フォーマット | 拡張子 | 説明 |
読み取り | テキスト |
| マルチエンコーディングのテキスト抽出をサポート |
読み取り | CSV |
| タブ区切りテキストとして正規化 |
読み取り | Markdown |
| Markdownテキストを直接抽出 |
読み取り | Word |
|
|
読み取り |
| テキスト抽出 | |
読み取り | PowerPoint |
|
|
読み取り | EPUB |
| spine順に基づいて章を抽出 |
読み取り | Excel |
| ワークシートとセル内容を抽出 |
生成 | Word |
| ネイティブ生成、段落とテーブルをサポート |
生成 | Word |
|
|
生成 | PowerPoint |
| ネイティブ生成、タイトル、本文、箇条書き、テーブルをサポート |
生成 | PowerPoint |
|
|
インストール
pipを使用 (推奨)
pip install mcp-documents-readerPowerPoint生成機能が必要な場合は、実行環境で python-pptx が利用可能であることを確認してください。
旧フォーマット .doc または .ppt へのエクスポートが必要な場合は、LibreOfficeをインストールし、soffice または libreoffice が PATH に追加されていることを確認してください。
ソースからインストール
git clone https://github.com/xt765/mcp_documents_reader.git
cd mcp_documents_reader
pip install -e .MCPツール
本サーバーは以下のツールを提供します:
read_document
統一されたインターフェースを使用して、サポートされているあらゆるドキュメントタイプを読み取ります。
パラメータ:
filename(string, 必須): ドキュメントファイルのパス。絶対パスまたは相対パスをサポート。
extract_document_images
DOCXファイル内の埋め込み画像を抽出し、構造化されたJSONメタデータを返します。
パラメータ:
filename(string, 必須): DOCXファイルのパス。output_dir(string, オプション): 画像をエクスポートするディレクトリ。
write_word_document
.docx Wordドキュメントを生成するか、LibreOffice変換を通じて .doc をエクスポートします。
パラメータ:
filename(string, 必須): 出力パス。拡張子は.docxまたは.docである必要があります。title(string, オプション): ドキュメントタイトル。paragraphs(string配列, オプション): 順次書き込まれる段落。tables(object配列, オプション): テーブル定義。title、headers、rowsをサポート。
write_presentation
.pptx プレゼンテーションを生成するか、LibreOffice変換を通じて .ppt をエクスポートします。
パラメータ:
filename(string, 必須): 出力パス。拡張子は.pptxまたは.pptである必要があります。title(string, オプション): タイトルページのタイトル。subtitle(string, オプション): タイトルページのサブタイトル。slides(object配列, オプション): スライド定義。title、paragraphs、bullets、tableをサポート。
設定
Trae IDE / Claude Desktop での使用
MCP設定ファイルに以下を追加してください:
オプション 1:PyPIを使用 (推奨)
{
"mcpServers": {
"mcp-document-reader": {
"command": "uvx",
"args": [
"mcp-documents-reader"
]
}
}
}オプション 2:GitHubリポジトリを使用
{
"mcpServers": {
"mcp-document-reader": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/xt765/mcp_documents_reader",
"mcp_documents_reader"
]
}
}
}オプション 3:Giteeリポジトリを使用 (中国国内からのアクセスが高速)
{
"mcpServers": {
"mcp-document-reader": {
"command": "uvx",
"args": [
"--from",
"git+https://gitee.com/xt765/mcp_documents_reader",
"mcp_documents_reader"
]
}
}
}使用方法
MCPツールとして使用
設定完了後、AIアシスタントは以下のツールを直接呼び出すことができます:
# 读取 DOCX 文件
read_document(filename="example.docx")
# 读取演示文稿
read_document(filename="example.pptx")
# 生成 DOCX 报告
write_word_document(
filename="report.docx",
title="周报",
paragraphs=["本周总结", "下周计划"],
tables=[
{
"title": "指标表",
"headers": ["名称", "数值"],
"rows": [["线索", 42], ["成交", 8]],
}
],
)
# 生成 PPTX 汇报
write_presentation(
filename="briefing.pptx",
title="季度汇报",
subtitle="Q2",
slides=[
{
"title": "亮点",
"paragraphs": ["概述段落"],
"bullets": ["重点 A", "重点 B"],
}
],
)Pythonライブラリとして使用
from mcp_documents_reader import DocumentReaderFactory
# 使用工厂类(推荐)
reader = DocumentReaderFactory.get_reader("document.pdf")
content = reader.read("/path/to/document.pdf")
# 检查格式是否支持
if DocumentReaderFactory.is_supported("file.xlsx"):
reader = DocumentReaderFactory.get_reader("file.xlsx")
content = reader.read("/path/to/file.xlsx")ツールインターフェース詳細
read_document
サポートされているあらゆるドキュメントタイプを読み取ります。
パラメータ | 型 | 必須 | 説明 |
filename | string | ✅ | ドキュメントファイルのパス。絶対パスまたは相対パスをサポート |
extract_document_images
DOCXファイル内の埋め込み画像を抽出します。
パラメータ | 型 | 必須 | 説明 |
filename | string | ✅ | DOCXファイルのパス |
output_dir | string | ❌ | オプションの画像エクスポートディレクトリ |
write_word_document
DOCXを直接生成するか、LibreOffice変換を通じてDOCをエクスポートします。
パラメータ | 型 | 必須 | 説明 |
filename | string | ✅ | 出力パス。拡張子は |
title | string | ❌ | オプションのドキュメントタイトル |
paragraphs | string[] | ❌ | 順次書き込まれる段落 |
tables | object[] | ❌ | テーブル定義。 |
write_presentation
PPTXを直接生成するか、LibreOffice変換を通じてPPTをエクスポートします。
パラメータ | 型 | 必須 | 説明 |
filename | string | ✅ | 出力パス。拡張子は |
title | string | ❌ | タイトルページのタイトル |
subtitle | string | ❌ | タイトルページのサブタイトル |
slides | object[] | ❌ | スライド定義。 |
依存関係
コア依存関係
mcp>= 1.26.0 - MCPプロトコル実装python-docx>= 1.2.0 - DOCX読み取りおよびWordドキュメント生成python-pptx>= 0.6.23 - PowerPointドキュメント生成pypdf>= 6.8.0 - PDFファイル読み取り (PyPDF2の代替)openpyxl>= 3.1.5 - Excelファイル読み取り
オプションのランタイム依存関係
LibreOffice- 旧フォーマット.docまたは.pptをエクスポートする場合に必須antiword/catppt- 旧フォーマット.doc/.ppt読み取り時のオプション補助コマンド
開発依存関係
pytest>= 8.0.0 - テストフレームワークpytest-asyncio>= 0.24.0 - 非同期テストサポートpytest-cov>= 6.0.0 - カバレッジレポートbasedpyright>= 0.28.0 - 型チェックruff>= 0.8.0 - コードチェックおよびフォーマット
ライセンス
本プロジェクトはMITライセンスの下でオープンソース化されています。
本プロジェクトは、優れたオープンソースプロジェクト xt765/mcp_documents_reader をベースに二次開発を行い、さらに機能を強化したものです。
現在、主に以下の機能を追加・強化しています:
ドキュメント内の画像抽出機能
WordおよびPowerPointドキュメントのライティング・生成ワークフロー
MCPシナリオに向けた、より完全なドキュメント作成サポート
元のリポジトリの作者が提供した基礎的な機能とオープンソースの取り組みに深く感謝いたします。
貢献
IssueやPull Requestの提出を歓迎します!
関連プロジェクト
MCP Document Converter - 多様なフォーマット変換をサポートするMCPドキュメントコンバーター
Model Context Protocol - Model Context Protocol 公式ドキュメント
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/crispvibe/mcp-document-studio'
If you have feedback or need assistance with the MCP directory API, please join our Discord server