MCP Document Reader

io.github.xt765由 GitHub 帳號 xt765 發布v1.3.1更新於 Oct 24, 2026

An MCP enabled multi-format document reader supporting DOCX, PDF, TXT, and Excel files

已驗證STDIO僅桌面檔案與儲存資料與分析

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理從檔案系統讀取 DOCX、PDF、XLSX/XLS 與 TXT 檔案並回傳文字內容。

可以做什麼
  • 透過單一統一工具 read_document 依路徑讀取文件
  • 從 DOCX 檔案擷取文字與結構
  • 從 PDF 檔案擷取文字
  • 從 Excel 活頁簿擷取工作表和儲存格資料
  • 讀取純文字檔
適用情境
適合需要把本機 Word、PDF、Excel 或文字檔內容帶入對話的情境,例如摘要、檢索或針對文件內容提問。
執行需求
以本機 stdio 程序在使用者電腦上執行(僅桌面端)。需安裝 Python 套件 mcp-documents-reader,通常以 uvx 或 pip 啟動;相依於 mcp、python-docx、pypdf 與 openpyxl 函式庫。未宣告需要帳號、API 金鑰或環境變數。
安裝前請注意
此工具接受絕對或相對檔案路徑,因此助理可讀取該程序有權存取的任何文件;請只指向你願意曝露的目錄。它只讀取檔案,未見寫入或外傳資料,但擷取的內容會進入模型對話。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 MCP Document Reader,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

MCP Document Reader

MCP (Model Context Protocol) Document Reader - A powerful MCP tool for reading documents in multiple formats, enabling AI agents to truly "read" your documents.

🌐 Language: English | 中文

[CSDN] [GitHub] [Gitee]

[License] [Python] [PyPI Version] [PyPI Downloads] [MCP Registry] [MCP Marketplace]

Features

  • Multi-format Support: Supports 4 mainstream document formats: Excel (XLSX/XLS), DOCX, PDF, and TXT
  • MCP Protocol: Compliant with MCP standards, can be used as a tool for AI assistants like Trae IDE
  • Easy Integration: Simple configuration for immediate use
  • Reliable Performance: Successfully tested and running in Trae IDE
  • File System Support: Reads documents directly from the file system

📚 Documentation

User Guide · API Reference · Contributing · Changelog · License


Architecture

mermaid
graph TB    A[AI Assistant / User] -->|Call read_document| B[MCP Document Reader]    B -->|Detect file type| C{File Type?}    C -->|.docx| D[DOCX Reader]    C -->|.pdf| E[PDF Reader]    C -->|.xlsx/.xls| F[Excel Reader]    C -->|.txt| G[Text Reader]    D -->|Extract text| H[Return Content]    E -->|Extract text| H    F -->|Extract text| H    G -->|Extract text| H    H -->|Text content| 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

Supported Formats

FormatExtensionsMIME TypeFeatures
Excel.xlsx, .xlsapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetSheet and cell data extraction
DOCX.docxapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentText and structure extraction
PDF.pdfapplication/pdfText extraction
Text.txttext/plainPlain text reading

Installation

Using pip (Recommended)

bash
pip install mcp-documents-reader

From Source

bash
git clone https://github.com/xt765/mcp_documents_reader.gitcd mcp_documents_readerpip install -e .

MCP Tools

This server provides the following tool:

read_document

Read any supported document type with a unified interface.

Arguments:

  • filename (string, required): Document file path, supports absolute or relative paths.

Configuration

Using in Trae IDE / Claude Desktop

Add the following to your MCP configuration file:

Option 1: Using PyPI (Recommended)

json
{  "mcpServers": {    "mcp-document-reader": {      "command": "uvx",      "args": [        "mcp-documents-reader"      ]    }  }}

Option 2: Using GitHub repository

json
{  "mcpServers": {    "mcp-document-reader": {      "command": "uvx",      "args": [        "--from",        "git+https://github.com/xt765/mcp_documents_reader",        "mcp_documents_reader"      ]    }  }}

Option 3: Using Gitee repository (Faster access in China)

json
{  "mcpServers": {    "mcp-document-reader": {      "command": "uvx",      "args": [        "--from",        "git+https://gitee.com/xt765/mcp_documents_reader",        "mcp_documents_reader"      ]    }  }}

Usage

As an MCP Tool

After configuration, AI assistants can directly call the following tool:

python
# Read a DOCX fileread_document(filename="example.docx")
# Read a PDF fileread_document(filename="example.pdf")
# Read an Excel fileread_document(filename="example.xlsx")
# Read a text fileread_document(filename="example.txt")

As a Python Library

python
from mcp_documents_reader import DocumentReaderFactory
# Using factory (recommended)reader = DocumentReaderFactory.get_reader("document.pdf")content = reader.read("/path/to/document.pdf")
# Check if format is supportedif DocumentReaderFactory.is_supported("file.xlsx"):    reader = DocumentReaderFactory.get_reader("file.xlsx")    content = reader.read("/path/to/file.xlsx")

Tool Interface Details

read_document

Read any supported document type.

Parameters:

ParameterTypeRequiredDescription
filenamestring✅Document file path, supports absolute or relative paths

Dependencies

Core Dependencies

  • mcp >= 1.26.0 - MCP protocol implementation
  • python-docx >= 1.2.0 - DOCX file reading
  • pypdf >= 6.8.0 - PDF file reading (replaces PyPDF2)
  • openpyxl >= 3.1.5 - Excel file reading

Development Dependencies

  • pytest >= 8.0.0 - Testing framework
  • pytest-asyncio >= 0.24.0 - Async testing support
  • pytest-cov >= 6.0.0 - Coverage reporting
  • basedpyright >= 0.28.0 - Type checking
  • ruff >= 0.8.0 - Linting and formatting

License

MIT License

Contributing

Issues and Pull Requests are welcome!

Related Projects

來源:README.md,提交 5785cf7

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.3.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分