基于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+
pip install pymupdf mcp
注意:要使用OCR功能,可能需要一个带有OCR支持的MuPDF构建或外部OCR库。
运行以下命令:
python txt_server.py
你应该会看到如下日志:
正在提供服务 http://127.0.0.1:6231
打开浏览器并访问:
http://127.0.0.1:6231
无需编程——通过Web UI轻松调试和测试。
| 工具 | 描述 | 输入参数 | 返回值 |
|---|---|---|---|
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/目录内,或者提供绝对路径。本项目采用MIT许可证。 对于商业用途,请注明原始来源。 </中文翻译>