据 AlphaMoat 统计,截至 2026-09,Mineru Pdf 累计下载 2,097 次、获 0 个星标,在全部 5,078 个 AI 技能中排名第 4,363 位,在「办公效率」分类(435 个)中排名第 334 位。
| 平台 | 累计安装 | 累计下载 | 星标 | 评论 |
|---|---|---|---|---|
| ClawHub ↗ | 52 | 1,781 | - | - |
| SkillHub ↗ | 102 | 2,097 | - | — |
各平台的计数口径不同,统计时间不一致。
它可提取结构化文本、表格和公式,支持扫描件 OCR、选择处理页范围及切换解析后端。MCP 方式的临时文件会在任务结束时清理;直接工具会将结果保存到用户指定目录。首次运行可能下载模型。处理敏感文档前应确认运行环境、模型来源及输出位置的隐私与保留方式。
资料发布于 2026-10-29
以下是根据技能文档生成的示例,不代表实际运行结果。
2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。
| 月份 | 累计下载 | 环比 | 星标 |
|---|---|---|---|
| 2026-09 | 2,097 | — | - |
| 2026-08 | 1,784 | +11.0% | - |
| 2026-07 | 1,607 | — | - |
| 2026-05 | 1,264 | — | - |
| 2026-03 | 829 | — | - |
以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。
---
name: mineru-pdf
description: Parse PDF documents with MinerU MCP to extract text, tables, and formulas. Supports multiple backends including MLX-accelerated inference on Apple Silicon.
homepage: https://github.com/TINKPA/mcp-mineru
metadata:
{
"openclaw":
{
"emoji": "📄",
"requires": { "bins": ["uvx"] }, "install":
[
{
"id": "uvx",
"kind": "uvx",
"package": "mcp-mineru",
"label": "Install mcp-mineru via uvx (auto-managed)",
},
],
},
}
---
# MinerU PDF Parser
Parse PDF documents using MinerU MCP to extract structured content including text, tables, and formulas with MLX acceleration on Apple Silicon.
## Installation
### Option 1: Install MinerU MCP (for Claude Code)
```bash
claude mcp add --transport stdio --scope user mineru -- \
uvx --from mcp-mineru python -m mcp_mineru.server
```
This installs and configures MinerU for all Claude projects. Models are downloaded on first use.
### Option 2: Use Direct Tool (preserves files)
The skill includes a direct parsing tool that saves output to a persistent directory:
```bash
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py <pdf_path> <output_dir> [options]
```
**Advantages:**
- ✅ Files are saved permanently (not auto-deleted)
- ✅ Full control over output location
- ✅ No MCP overhead
- ✅ Works with any Python environment that has MinerU
## Quick Start
### Method 1: Using the Direct Tool (Recommended)
```bash
# Parse entire PDF
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py \
"/path/to/document.pdf" \
"/path/to/output"
# Parse specific pages
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py \
"/path/to/document.pdf" \
"/path/to/output" \
--start-page 0 --end-page 2
# Use Apple Silicon optimization
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py \
"/path/to/document.pdf" \
"/path/to/output" \
--backend vlm-mlx-engine
# Text only (faster)
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py \
"/path/to/document.pdf" \
"/path/to/output" \
--no-table --no-formula
```
### Method 2: Using MinerU MCP (Temporary Files)
### Parse a PDF document
```bash
uvx --from mcp-mineru python -c "
import asyncio
from mcp_mineru.server import call_tool
async def parse_pdf():
result = await call_tool(
name='parse_pdf',
arguments={
'file_path': '/path/to/document.pdf',
'backend': 'pipeline',
'formula_enable': True,
'table_enable': True,
'start_page': 0,
'end_page': -1 # -1 for all pages
}
)
if hasattr(result, 'content'):
for item in result.content:
if hasattr(item, 'text'):
print(item.text)
break
asyncio.run(parse_pdf())
"
```
### Check system capabilities
```bash
uvx --from mcp-mineru python -c "
import asyncio
from mcp_mineru.server import call_tool
async def list_backends():
result = await call_tool(
name='list_backends',
arguments={}
)
if hasattr(result, 'content'):
for item in result.content:
if hasattr(item, 'text'):
print(item.text)
break
asyncio.run(list_backends())
"
```
## Parameters
### parse_pdf
**Required:**
- `file_path` - Absolute path to the PDF file
**Optional:**
- `backend` - Processing backend (default: `pipeline`)
- `pipeline` - Fast, general-purpose (recommended)
- `vlm-mlx-engine` - Fastest on Apple Silicon (M1/M2/M3/M4)
- `vlm-transformers` - Slowest but most accurate
- `formula_enable` - Enable formula recognition (default: `true`)
- `table_enable` - Enable table recognition (default: `true`)
- `start_page` - Starting page (0-indexed, default: `0`)
- `end_page` - Ending page (default: `-1` for all pages)
### list_backends
No parameters required. Returns system information and backend recommendations.
## Usage Examples
### Extract tables from a specific page range
```bash
uvx --from mcp-mineru python -c "
import asyncio
from mcp_mineru.server import call_tool
async def parse_pdf():
result = await call_tool(
name='parse_pdf',
arguments={
'file_path': '/path/to/document.pdf',
'backend': 'pipeline',
'table_enable': True,
'start_page': 5,
'end_page': 10
}
)
if hasattr(result, 'content'):
for item in result.content:
if hasattr(item, 'text'):
print(item.text)
break
asyncio.run(parse_pdf())
"
```
### Parse with formula recognition only (faster)
```bash
uvx --from mcp-mineru python -c "
import asyncio
from mcp_mineru.server import call_tool
async def parse_pdf():
result = await call_tool(
name='parse_pdf',
arguments={
'file_path': '/path/to/document.pdf',
'backend': 'vlm-mlx-engine',
'formula_enable': True,
'table_enable': False # Disable for speed
}
)
if hasattr(result, 'content'):
for item in result.content:
if hasattr(item, 'text'):
print(item.text)
break
asyncio.run(parse_pdf())
"
```
### Parse single page (fastest for testing)
```bash
uvx --from mcp-mineru python -c "
import asyncio
from mcp_mineru.server import call_tool
async def parse_pdf():
result = await call_tool(
name='parse_pdf',
arguments={
'file_path': '/path/to/document.pdf',
'backend': 'pipeline',
'formula_enable': False,
'table_enable': False,
'start_page': 0,
'end_page': 0
}
)
if hasattr(result, 'content'):
for item in result.content:
if hasattr(item, 'text'):
print(item.text)
break
asyncio.run(parse_pdf())
"
```
## Performance
On Apple Silicon M4 (16GB RAM):
- `pipeline`: ~32s/page, CPU-only, good quality
- `vlm-mlx-engine`: ~38s/page, Apple Silicon optimized, excellent quality
- `vlm-transformers`: ~148s/page, highest quality, slowest
**Note:** First run downloads models (can take 5-10 minutes). Models are cached in `~/.cache/uv/` for faster subsequent runs.
## Output Format
Returns structured Markdown with:
- Document metadata (file, backend, pages, settings)
- Extracted text with preserved structure
- Tables formatted as Markdown tables
- Formulas converted to LaTeX
## Supported Formats
- PDF documents (`.pdf`)
- JPEG images (`.jpg`, `.jpeg`)
- PNG images (`.png`)
- Other image formats (WebP, GIF, etc.)
## Troubleshooting
### Module not found error
If you get "No module named 'mcp_mineru'", make sure you installed it:
```bash
claude mcp add --transport stdio --scope user mineru -- \
uvx --from mcp-mineru python -m mcp_mineru.server
```
### Slow processing on first run
This is normal. MinerU downloads ML models on first use. Subsequent runs will be much faster.
### Timeout errors
Increase timeout for large documents or use smaller page ranges for testing.
## Notes
- Output is returned as Markdown text
- Tables are preserved in Markdown format
- Mathematical formulas are converted to LaTeX
- Works with scanned documents (OCR built-in)
- Optimized for Apple Silicon (M1/M2/M3/M4) with MLX backend
## File Persistence
### Why Files Get Deleted (MCP Method)
The MinerU MCP server uses Python's `tempfile.TemporaryDirectory()`, which automatically deletes files when the context exits. This is by design to prevent temporary files from accumulating.
### How to Preserve Files
**Method A: Use the Direct Tool (Recommended)**
The skill provides `parse.py` which saves files to a persistent directory:
```bash
python /Users/lwj04/clawd/skills/mineru-pdf/parse.py \
/path/to/input.pdf \
/path/to/output_dir
```
**Advantages:**
- ✅ Files are never auto-deleted
- ✅ Full control over output location
- ✅ Can be used in batch processing
- ✅ No MCP connection needed
**Generated Structure:**
```
/path/to/output_dir/
├── input.pdf_name/
│ └── auto/ # or vlm/ depending on backend
│ ├── input.pdf_name.md
│ └── images/
│ └── *.jpg
└── input.pdf_name_parsed.md # Copy at root for easy access
```
**Method B: Redirect MCP Output**
If using the MCP method, capture the output and save it:
```bash
# Capture to file
claude -p "Parse this PDF: /path/to/file.pdf" > /tmp/output.md
# Or use within a script that saves the result
```
### Comparison
| Feature | Direct Tool | MCP Method |
|----------|-------------|-------------|
| Files persisted | ✅ Yes | ❌ No (auto-deleted) |
| Custom output dir | ✅ Yes | ❌ No (temp only) |
| Claude Code integration | ⚠️ Manual | ✅ Native |
| Speed | ✅ Fast | ⚠️ MCP overhead |
| Offline use | ✅ Yes | ⚠️ Needs Claude Code |
### Recommendation
- **Use Direct Tool** when you need to keep the files for later use
- **Use MCP Method** when working within Claude Code and only need the text content
通过 MCP 在腾讯文档里新建、编辑与管理在线文档的完整操作手册。
在保留公式、格式与工作簿结构的前提下创建、检查并修改 Excel 文件的技能。
处理 Word 与 DOCX 文档的作业规范,重点是改完之后样式、编号与版式不跑偏。
通过命令行访问 Gmail、日历、Drive、通讯录、Sheets 与 Docs。
PDF和图片文字提取 将文档文字、表格与扫描页识别整理为文本结果。
按主题与风格自动生成 PPT 文件的技能。
通过 kdocs-cli 操作金山文档云文档的官方技能。
用自然语言指令改 PDF 指定页的小工具。
数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。