mcpField
M
mineru-extract

mineru-extract

github.com/blessonismドキュメント438184 回インストール9 週間前に更新
リポジトリ

mineru-extract について

mineru-extractは、公式MinerU APIを使ってURLやファイルをMarkdownに変換するスキルです。解析タスクの送信、完了確認、結果の取得を行い、JSON要約やMarkdownを出力します。MCPサーバーは実行しません。

主な機能

  1. 01複数URLを送信して解析状況を確認
  2. 02結果アーカイブを取得してMarkdownを抽出
  3. 03成功項目とエラーをJSONで要約
  4. 04OCR・表・数式認識のオプション
  5. 05ファイル種別に応じて既定モデルを選択

活用シーン

  1. 01ウェブ記事をMarkdownに変換
  2. 02PDF・プレゼンテーション・画像文書を解析
  3. 03複数の文書ソースを一括処理
  4. 04失敗したURLと解析エラーを確認

MCP 対応

MinerU MCPの利用モデルに沿っていますが、MCPサーバーは実行しません。スクリプトから公式MinerU APIを呼び出し、JSONまたはMarkdownで結果を返します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/blessonism/search-skills --skill mineru-extract

インストール後、Claude Code で/mineru-extractを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

.env.example
scripts/
mineru_extract.py
mineru_parse_documents.py

詳細

MinerU Extract(公式 API)

MinerU を上流の「コンテンツ正規化ツール」として使用します。URL を MinerU に送信し、完了するまでポーリングして、結果の zip をダウンロードし、メインの Markdown を抽出します。

クイックスタート(MCP に準拠)

MinerU MCP のメンタルモデルに沿っていますが、MCP サーバーは実行しません。

  • メインスクリプト(MCP 形式):scripts/mineru_parse_documents.py
    • 入力:--file-sources(カンマまたは改行区切り)
    • 出力:標準出力に JSON コントラクト:{ ok, items, errors }
  • 低レベルスクリプト(単一 URL):scripts/mineru_extract.py

認証:

  • MINERU_TOKEN を設定します(mineru.net の Bearer トークン)

デフォルトのモデル判定:

  • .pdf/.doc/.ppt/.png/.jpg で終わる URL → pipeline
  • それ以外 → MinerU-HTML(WeChat 記事などの HTML ページに最適)
1)トークンを設定する(スキル内)

シークレットは スキルのルートの .env に保存します(チャット出力に貼り付けないでください)。

# In the mineru-extract skill directory: .env
MINERU_TOKEN=your_token_here
MINERU_API_BASE=https://mineru.net
2)URL を Markdown に解析する(推奨)

MCP 形式のラッパー(JSON を返します。Markdown テキストを含めることもできます):

python3 mineru-extract/scripts/mineru_parse_documents.py \
  --file-sources "<URL1>\n<URL2>" \
  --language ch \
  --enable-ocr \
  --model-version MinerU-HTML

Markdown の内容を JSON にインラインで含める場合(サイズが大きくなることがあります):

python3 mineru-extract/scripts/mineru_parse_documents.py \
  --file-sources "<URL>" \
  --model-version MinerU-HTML \
  --emit-markdown --max-chars 20000

低レベル(単一 URL、Markdown を標準出力に出力):

python3 mineru-extract/scripts/mineru_extract.py "<URL>" --model MinerU-HTML --print > /tmp/out.md

出力

スクリプトは常に MinerU の結果 zip をダウンロードして、次の場所に展開します。

~/.openclaw/workspace/mineru/<task_id>/

次のファイルを書き出します。

  • result.zip
  • 展開したファイル(Markdown、JSON、アセット)

パスを含む JSON の概要を標準エラー出力に出力します。

  • task_id、full_zip_url、out_dir、markdown_path

パラメーター(共通)

  • --model:pipeline | vlm | MinerU-HTML(HTML には MinerU-HTML が必要です)
  • --ocr/--no-ocr:OCR を有効にします(pipeline/vlm で有効)
  • --table/--no-table:表の認識
  • --formula/--no-formula:数式の認識
  • --language ch|en|...
  • --page-ranges "2,4-6"(HTML 以外)
  • --timeout 600 / --poll-interval 2

失敗時の対応とフォールバック

  • MinerU は一部の URL の取得に失敗することがあります(ボット対策、地域制限、ログイン)。
    • フォールバック:HTML ファイル、PDF、または縦長のスクリーンショットを用意し、MinerU のバッチアップロードエンドポイントを使った「アップロード+解析」フローを実装します。
    • 失敗した URL と MinerU の err_msg を必ず報告し、出力には元のソースへのリンクを残してください。

参考資料

コメント