mcpField
G
groupdocs-parser-mcp

groupdocs-parser-mcp

ローカル
github.com/groupdocs-parser生産性02 週間前に更新

groupdocs-parser-mcp について

groupdocs-parser-mcpは、GroupDocs.Parserの文書抽出機能をMCPクライアントやAIエージェントに提供します。さまざまな文書・画像形式からテキスト、画像、メタデータ、表、バーコードを抽出できます。

主な機能

  1. 01テキストと埋め込み画像の抽出
  2. 02メタデータと文書情報の取得
  3. 03表をMarkdownまたはJSONで抽出
  4. 04バーコードとQRコードの読み取り
  5. 05ライセンスモードと使用量の確認

活用シーン

  1. 01契約書の指定ページからテキストを抽出する
  2. 02請求書の表を構造化データにする
  3. 03文書の作成者や属性を調べる
  4. 04配送ラベルのQRコードを読み取る

MCP 対応

MCPサーバーがツールを提供し、MCPクライアントからGroupDocs.Parserで文書や画像を処理できます。Dockerイメージで配布され、複数のMCPクライアント向け設定が用意されています。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"groupdocs-parser-groupdocs-parser": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GROUPDOCS_MCP_STORAGE_PATH",
"-e",
"GROUPDOCS_MCP_OUTPUT_PATH",
"-e",
"GROUPDOCS_LICENSE_PATH",
"-e",
"GROUPDOCS_METERED_PUBLIC_KEY",
"-e",
"GROUPDOCS_METERED_PRIVATE_KEY",
"ghcr.io/groupdocs-parser/parser-net-mcp:26.10.2"
],
"env": {
"GROUPDOCS_MCP_STORAGE_PATH": "<GROUPDOCS_MCP_STORAGE_PATH>",
"GROUPDOCS_MCP_OUTPUT_PATH": "<GROUPDOCS_MCP_OUTPUT_PATH>",
"GROUPDOCS_LICENSE_PATH": "<GROUPDOCS_LICENSE_PATH>",
"GROUPDOCS_METERED_PUBLIC_KEY": "<GROUPDOCS_METERED_PUBLIC_KEY>",
"GROUPDOCS_METERED_PRIVATE_KEY": "<GROUPDOCS_METERED_PRIVATE_KEY>"
}
}
}
}
起動コマンドdocker run -i --rm -e GROUPDOCS_MCP_STORAGE_PATH -e GROUPDOCS_MCP_OUTPUT_PATH -e GROUPDOCS_LICENSE_PATH -e GROUPDOCS_METERED_PUBLIC_KEY -e GROUPDOCS_METERED_PRIVATE_KEY ghcr.io/groupdocs-parser/parser-net-mcp:26.10.2
設定が必要な環境変数
GROUPDOCS_MCP_STORAGE_PATH
GROUPDOCS_MCP_OUTPUT_PATH
GROUPDOCS_LICENSE_PATH
GROUPDOCS_METERED_PUBLIC_KEYシークレット
GROUPDOCS_METERED_PRIVATE_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/groupdocs-parser/parser-net-mcp:26.10.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

GroupDocs.Parser MCP サーバー

GroupDocs.Parser を、Claude、Cursor、GitHub Copilot、その他の MCP エージェントから呼び出せるツールとして公開する MCP サーバーです。

GHCR MCP Registry Integration tests License: MIT

インストール

Install in VS Code Install in VS Code Insiders Add to Cursor Codex CLI setup Windsurf setup

ワンクリックインストールでは、サポートされている設定がすべてあらかじめ入力されます。インストール後に、ボリュームマウント内のホストパスのプレースホルダーを編集してください。GROUPDOCS_LICENSE_PATH が空の場合、評価モードで実行されます。

その他のクライアント - Claude Code、Codex CLI、Visual Studio 2022、Cursor、Windsurf、Cline、JetBrains Rider 用のすぐに使える設定は、install/generated/ にあります。

この製品は Docker(GHCR)経由でのみ提供されています。 GroupDocs.Parser のマネージド DLL には約 234 MB の ONNX モデルが埋め込まれているため、パッケージ化されたツールは NuGet.org の 250 MB の上限を超えます。そのため、dnx と dotnet tool install は利用できません。上流で上限内に収まる軽量なエンジンが提供されれば、標準的な NuGet の手順に戻ります (.github/workflows/publish_prod.yml の差し戻しに関する注記を参照してください)。

docker run --rm -i \
  -v $(pwd)/documents:/data \
  ghcr.io/groupdocs-parser/parser-net-mcp:latest

イメージはマルチアーキテクチャ(linux/amd64 + linux/arm64)に対応し、latest に加えて、リリースごとに変更されないバージョンタグ(例::26.10.2)が付けられます。固定するには、:latest をバージョンタグに置き換えてください。共有設定や CI での使用におすすめです。

Linux:コンテナを自分のユーザーとして実行する

イメージは root 以外のユーザー(uid 1654)として実行されます。Linux では、マウントしたフォルダーの所有者はホスト側のままなので、自分が所有するフォルダーはコンテナ内で読み取り専用となり、extract_images はファイルを保存できません。エラーの末尾には "Fix: the server cannot write to the output folder" と表示されます。--user を追加すると、コンテナが自分のユーザーとして書き込みます。

docker run --rm -i --user "$(id -u):$(id -g)" \
  -v $(pwd)/documents:/data \
  ghcr.io/groupdocs-parser/parser-net-mcp:latest

MCP クライアントの設定(JSON)ではシェルが実行されないため、数値を直接指定します。id -u と id -g で数値を確認できます。通常は 1000 です。"args": ["run", "--rm", "-i", "--user", "1000:1000", "-v", …]。読み取り専用ツール(extract_text、extract_tables、extract_metadata、extract_barcodes、get_document_info)は、この指定なしで動作します。Windows と macOS の Docker Desktop では、この指定は不要です。

利用可能な MCP ツール

ツール説明
extract_textドキュメント全体または単一ページからプレーンテキストを抽出します。非常に大きな出力は切り詰められます。
extract_images埋め込まれた画像をすべて抽出し、<basename>_image<N>.<ext> ファイルとしてストレージに保存します
extract_metadataメタデータ(作成者、タイトル、日付、カスタムプロパティ、EXIF、XMP、IPTC)を抽出し、JSON として返します
extract_tablesドキュメントから表を Markdown(デフォルト。チャットに表示)または構造化 JSON として抽出します
extract_barcodesすべてのバーコード/QR コードを検出し、デコードされた値、種類、位置を JSON として返します
get_document_infoドキュメントのファイル形式、ページ数、サイズを JSON として返します(変更は加えません)
get_license_status有効なライセンスモード(評価版/ライセンス済み/従量制)、エンジンのバージョン、および従量制の場合は消費量とクレジットを報告します。ドキュメントは処理しません。

すべてのツールは、PDF、DOCX、XLSX、PPTX、HTML、EPUB、MSG、EML、JPG、PNG、TIFF など、50 種類以上のドキュメントおよび画像形式に対応しています。

AI エージェント向けのプロンプト例

サーバーの接続後、以下のいずれかを Claude Desktop、Cursor、または GitHub Copilot Chat にコピーします。

  1. ドキュメントの構造を確認する:"invoice.pdf のページ数と形式を教えてください。"
  2. テキストの一部を抽出する:"contract.docx の 2 ページ目からテキストを抽出してください。"
  3. メタデータを調べる:"report.xlsx の作成者と作成日を教えてください。"
  4. 構造化された表を読み取る:"invoice.pdf の明細表を Markdown として抽出してください。"
  5. バーコードをスキャンする:"shipping-label.png に QR コードはありますか?ある場合、デコード結果を教えてください。"

ライセンス

MCP サーバー自体は MIT ライセンスですが、基盤となる GroupDocs.Parser エンジンを本番環境で使用するにはライセンスが必要です。 ライセンスがない場合、サーバーは評価モードで動作し、抽出には厳しい制限が適用されます。出力は正しいように見えますが、不完全な内容が通知なく返されます。

  • テキスト抽出:ファイルあたり最初の 1,600 文字と 20 行のみで、最初の 5 ページ、シート、またはスライドに限られます。書式付きテキストと構造の抽出では、スプレッドシートに 20 行の上限も適用されます。
  • メタデータ抽出:ファイルあたり 5 プロパティのみです。
  • 1 セッションあたり 100 ファイルまでで、出力には評価マークが付きます。
  • 制限の全一覧:評価版の制限。

サーバーにライセンスを適用する方法は 2 つあります。

ライセンスファイル — GroupDocs.Parser.lic(または GroupDocs.Total.lic)をコンテナーにマウントし、上記の Claude Desktop の例のように GROUPDOCS_LICENSE_PATH を設定します。オフラインで動作します。

従量課金制 — GROUPDOCS_METERED_PUBLIC_KEY と GROUPDOCS_METERED_PRIVATE_KEY の両方を設定します。実際に処理した量に応じて課金されます。使用量が変動し、事前の予測が難しい AI エージェントに適しています。従量課金制のキーとライセンスファイルの両方が設定されている場合は、従量課金制が優先され、ファイルは無視されます。

従量課金モードでは外部への接続が必要です。 使用量は GroupDocs サーバーに報告されるため、外部ネットワークから隔離された環境やファイアウォールで保護された環境では、その外向き通信を許可するか、代わりにライセンスファイルを使用する必要があります。

いつでも get_license_status ツールを呼び出すと、有効なモードを確認できます。従量課金制の場合は、消費量と残りのクレジットも確認できます。ドキュメントの処理や設定の変更は行わないため、実際の処理を実行する前にセットアップを確認する最も低コストな方法です。

秘密鍵を設定ファイルに記載しない方法

従量課金制の秘密鍵は機密情報です。MCP クライアントの設定はディスク上のプレーンテキストファイルであり、プロジェクト単位の .mcp.json は慣例上コミットされるため、次の順に方法を検討してください。

  1. OS の環境変数に設定し、設定ファイルには一切記載しないでください。 stdio MCP サーバーはクライアントの環境を継承するため、どのクライアントでも機能します。macOS では、Finder から起動したアプリはシェルのエクスポートを継承しない点に注意してください。launchctl setenv を使うか、ターミナルからクライアントを起動してください。
  2. クライアントが対応している場合は、間接的に参照してください(Claude Code は ${VAR} を展開し、VS Code は ${env:VAR} と ${input:...} を使用します)。
  3. ユーザー単位の設定ファイル(例:~/.claude.json)に値を直接記載する方法は、開発者が 1 人の場合に限り許容されます。
  4. プロジェクト単位の .mcp.json にキーを直接記載して絶対にコミットしないでください。

Docker では、ファイルに書き込まずに値を渡します。名前のみを指定することで、キーがコマンドラインに表示されないようにします。

docker run --rm -i \
  -e GROUPDOCS_METERED_PUBLIC_KEY -e GROUPDOCS_METERED_PRIVATE_KEY \
  -v /path/to/documents:/data \
  ghcr.io/groupdocs-parser/parser-net-mcp:latest

設定

変数説明デフォルト
GROUPDOCS_MCP_STORAGE_PATH入力ファイルと出力ファイルのベースフォルダー現在のディレクトリ
GROUPDOCS_MCP_OUTPUT_PATH(オプション) 出力ファイル用の別フォルダー(extract_images で使用)GROUPDOCS_MCP_STORAGE_PATH
GROUPDOCS_LICENSE_PATHコンテナー内から見た GroupDocs ライセンスファイルのパス。従量課金制のキーが設定されている場合は無視されます(評価モード)
GROUPDOCS_METERED_PUBLIC_KEY従量課金制の公開鍵。秘密鍵も必要です。GROUPDOCS_LICENSE_PATH より優先されます(未設定)
GROUPDOCS_METERED_PRIVATE_KEY従量課金制の秘密鍵。機密情報 — コミット済みの設定ファイルではなく、環境から渡してください(未設定)

Claude Desktop での使用

{
  "mcpServers": {
    "groupdocs-parser": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "-v", "/path/to/documents:/data", "ghcr.io/groupdocs-parser/parser-net-mcp:latest"]
    }
  }
}

ライセンスを使用するには、イメージ名の前に "-v", "/path/to/license-folder:/license", "-e", "GROUPDOCS_LICENSE_PATH=/license/GroupDocs.Total.lic" を追加してください。 バージョンを固定するには、:latest をリリースタグに置き換えてください。

VS Code/GitHub Copilot での使用方法

上の VS Code にインストール ボタンを使用するか、.vscode/mcp.json (install/generated/vscode-mcp.json にもあります)に追加します。

{
  "inputs": [
    {
      "type": "promptString",
      "id": "storage_path",
      "description": "Base folder for input and output files.",
      "password": false
    }
  ],
  "servers": {
    "groupdocs-parser": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "-v", "${input:storage_path}:/data", "ghcr.io/groupdocs-parser/parser-net-mcp:latest"]
    }
  }
}

Docker Compose での使用方法

cd docker
docker compose up

docker/docker-compose.yml を編集し、ボリュームがローカルのドキュメントフォルダーを参照するようにします。

ドキュメントとガイド

ステップごとのデプロイガイドと公開パッケージの統合テストスイートは、関連リポジトリ GroupDocs.Parser.Mcp.Tests にあります。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。