PDF文本提取服务器

基于FastMCP的PDF文件阅读服务器,支持PDF文本提取、OCR识别和图像提取,内置Web调试器便于测试。

  • by DeepSeekMine
  • Python
  • 本地部署
  • 36 星标
  • 更新于
在 GitHub 查看 deepseekmine/mcp-pdf-reader

使用说明

📄 MCP PDF服务器

基于.NET的PDF文件读取服务器 FastMCP.

通过MCP协议支持PDF文本提取、OCR识别和图像提取,内置web调试器便于测试。


🚀 特性

  • read_pdf_text
    从PDF中提取普通文本(逐页)。

  • read_by_ocr
    使用OCR识别扫描或基于图像的PDF中的文本。

  • read_pdf_images
    从指定的PDF页面中提取所有图像(Base64编码输出)。


📂 项目结构

mcp-pdf-server/
├── pdf_resources/        # Directory for uploaded and processed PDF files
├── txt_server.py         # Main server entry point
└── README.md             # Project documentation

⚙️ 安装

推荐Python版本:3.9+

pip install pymupdf mcp

注意:要使用OCR功能,您可能需要一个支持OCR的MuPDF版本或外部OCR库。


🔦 启动服务器

运行以下命令:

python txt_server.py

您应该看到以下日志:

Serving on http://127.0.0.1:6231

🌐 Web调试界面

打开浏览器并访问:

http://127.0.0.1:6231
  • 从左侧面板中选择工具
  • 在右侧面板上填写参数
  • 点击“运行”以测试该工具

无需编码——通过web UI轻松调试和测试。


🛠️ API工具清单

工具 描述 输入参数 返回
read_pdf_text 从PDF页面中提取普通文本 file_path, start_page, end_page 页面文本列表
read_by_ocr 通过OCR识别文本 file_path, start_page, end_page, language, dpi OCR提取文本
read_pdf_images 从PDF页面提取图像 file_path, page_number 图像列表(Base64编码)

📝 示例用法

从第1页到第5页摘录文本:

mcp run read_pdf_text --args '{"file_path": "pdf_resources/example.pdf", "start_page": 1, "end_page": 5}'

在第1页执行OCR识别:

mcp run read_by_ocr --args '{"file_path": "pdf_resources/example.pdf", "start_page": 1, "end_page": 1, "language": "eng"}'

从第3页提取所有图像:

mcp run read_pdf_images --args '{"file_path": "pdf_resources/example.pdf", "page_number": 3}'

📢 备注

  • 文件必须放置在 pdf_resources/ 必须提供目录或绝对路径。
  • OCR功能需要环境中适当的OCR支持。
  • 处理大文件时,根据需要调整内存和超时设置。

📜 许可证

该项目根据MIT许可证获得许可。
对于商业用途,请注明原始来源。