MCP PDF读取器
一种通过常规解析或OCR提取文本的PDF处理服务器,并通过内置Web调试器的MCP协议从PDF文件中检索图像。
服务介绍
📄 MCP PDF 服务器
基于 FastMCP 的PDF文件读取服务器。
支持通过MCP协议进行PDF文本提取、OCR识别和图像提取,并内置了Web调试器以便于测试。
🚀 特性
-
read_pdf_text
从PDF中逐页提取普通文本。 -
read_by_ocr
使用OCR从扫描或基于图像的PDF中识别文本。 -
read_pdf_images
从指定的PDF页面中提取所有图像(Base64编码输出)。
📂 项目结构
mcp-pdf-server/
├── pdf_resources/ # 上传和处理的PDF文件目录
├── txt_server.py # 主服务器入口点
└── README.md # 项目文档
⚙️ 安装
推荐Python版本:3.9+
bash
pip install pymupdf mcp
注意:要使用OCR功能,可能需要带有OCR支持的MuPDF构建或外部OCR库。
🔦 启动服务器
运行以下命令:
bash
python txt_server.py
你应该会看到类似以下的日志:
Serving on http://127.0.0.1:6231
🌐 Web调试界面
打开浏览器并访问:
http://127.0.0.1:6231
- 从左侧面板选择一个工具
- 在右侧面板填写参数
- 点击“Run”以测试工具
无需编写代码 —— 通过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页提取文本:
bash
mcp run read_pdf_text --args {"file_path": "pdf_resources/example.pdf", "start_page": 1, "end_page": 5}
对第1页执行OCR识别:
bash
mcp run read_by_ocr --args {"file_path": "pdf_resources/example.pdf", "start_page": 1, "end_page": 1, "language": "eng"}
从第3页提取所有图像:
bash
mcp run read_pdf_images --args {"file_path": "pdf_resources/example.pdf", "page_number": 3}
📢 注意事项
- 文件必须放置在
pdf_resources/目录内,或者提供绝对路径。 - OCR功能需要环境中有适当的OCR支持。
- 处理大文件时,请根据需要调整内存和超时设置。
📜 许可证
本项目采用MIT许可证。
商业使用时,请注明出处。