コンテンツにスキップ

NextPDF Connect ツールカタログ

NextPDF Connect デプロイメントが公開するツール数は、固定の定数ではありません。サーバーは、インストール済みパッケージ、構成の許可リスト、および一連の環境ゲートに基づいて、その数を実行時に算出します。このページでは、検証済みのコアセットと、合計数が決まる仕組みについて説明します。

Terminal window
composer require nextpdf/server

NextPDF\Server\ToolRegistry は、起動時に次の順序でカタログを構築します。

  1. コアティア。 固定されたコアツールのセットが無条件で登録されます。さらに 2 つのツールは、前提条件を満たす場合にのみ登録されます。
  2. Pro ティア。 Pro ツールは、Pro プロバイダークラスが resolve(解決)されると登録されます。これは nextpdf/premium がインストールされている場合に発生します。クラスを解決できない場合、サーバーはこのステップを通知なしでスキップします。
  3. Enterprise ティア。 Enterprise プロバイダーは、Pro プロバイダーと同じパターンに従います。
  4. バンドルされた拡張ティア。 AST およびミューテーションツールのプロバイダーは、サーバーパッケージに同梱され、Pro ティアの下に登録されます。各プロバイダーは環境ゲートで制御され、基盤となるコアサポートが存在しない場合は適切に機能を縮退させます。
  5. セキュリティポリシーフィルター。 サーバーは、すべての登録を enabled_tools 許可リストと照合します。空でない許可リストは、リストに含まれないツールをすべて除外します。ティアカウンターは、ポリシーで許可されたツールのみをカウントします。

MCP の initialize レスポンスは、実行中のサーバーについて、結果として得られる tool_count とティアごとのカウントを報告します。その値が、信頼できる正式な数値です。本文中に固定の合計値が記載されている場合は、いずれも古い情報として扱ってください。

これら 12 個のツールは、コアティアに無条件で登録されます。サーバーは、各リスクティアと MCP の各動作ヒントをツール実装から読み取ります。

ツール名カテゴリ説明リスク
create_pdfdocument新しい PDF ドキュメントを作成し、戻り値として document_id を返却caution
add_textdocumentPDF ドキュメントへのテキストコンテンツ追加caution
add_imagedocumentファイルパスまたは base64 データからの画像追加caution
add_tabledocumentPDF ドキュメントへの HTML テーブル追加caution
set_fontdocument以降のテキスト操作で使用するフォント設定caution
add_pagedocumentPDF ドキュメントへの新規ページ追加caution
output_pdfdocumentPDF のファイルまたは base64 としての確定approval_required
preview_layoutdocumentレンダリングせずにレイアウトの JSON サマリーを返却safe
diagnostic.doctordiagnosticヘルスチェックの実行と、構造化された環境診断の提供safe
diagnostic.capabilitiesdiagnosticティアとステータスを含む機能一覧safe
diagnostic.inspectdiagnosticPDF の検査と構造メタデータの返却safe
diagnostic.verifydiagnosticPDF の整合性検証と、オプションの PDF/A または PDF/UA チェックcaution
ツール名条件
generate_barcode登録条件は、コアバーコードエンコーダーレジストリが存在するインストール済みの nextpdf/core
parse_pdf登録条件は NEXTPDF_MCP_TOOL_PARSE_PDF_ENABLED の値が true または 1

output_pdf は、approval_required リスクレベルに分類される唯一のコアツールです。ファイルへの書き込みは human-in-the-loop ゲートを通過しますが、base64 出力モードは通過しません。/connect/hitl-risk-tiers/. を参照してください。

追加パッケージがインストールされている場合にのみ追加されるツール

「追加パッケージがインストールされている場合にのみ追加されるツール」という見出しのセクション

サーバーは、class_exists() でプロバイダークラスを探索します。

  • Pro ツール は、nextpdf/premium がインストールされ、Pro プロバイダーを解決できた場合に登録されます。
  • Enterprise ツール は、nextpdf/premium がインストールされ、Enterprise プロバイダーを解決できた場合に登録されます。プライバシーツール(墨消し、匿名化、ゾーン墨消し)は、Enterprise クラスをラップします。これらは、それらのクラスをオートロードできる場合にのみ、Enterprise ティアの下に登録されます。
  • AST およびミューテーションツール は、サーバーに同梱され、Pro ティアの下に登録されます。NEXTPDF_AST_TOOLS_ENABLED および NEXTPDF_MUTATION_TOOLS_ENABLED ゲートがこれらを制御し、両方のゲートはデフォルトで有効です。

正確な Pro および Enterprise のツールインベントリは、サーバーではなく Premium パッケージが定義し、そのパッケージとともにドキュメント化されます。サーバーが保証するのは登録の仕組みであり、固定された Premium リストではありません。

サーバーを起動せずに、この インストールが公開するツールを出力します。

Terminal window
./vendor/bin/generate-skills --dry-run --list-tools

MCP 経由で実行中のサーバーに正式なカウントを問い合わせます。

Terminal window
./vendor/bin/nextpdf-mcp <<'EOF'
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"c","version":"1.0.0"}}}
{"jsonrpc":"2.0","method":"notifications/initialized"}
{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}
EOF

サーバーは、実行中のプロセスについて、initialize の結果に含まれる capabilities.nextpdf.tool_counttiers を算出します。REST 経由では、GET /api/v1/capabilities が同等のイントロスペクションを返します。

  • 固定の「33 個のツール」は存在せず、いかなる固定の合計値も存在しません。 過去の資料には単一の数値が示されていますが、それは契約ではありません。カウントは、インストール済みパッケージ、enabled_tools 許可リスト、および parse_pdf、AST、ミューテーションの環境ゲートに応じて変動します。常に実行中のサーバーから読み取ってください。

  • 許可リストは絞り込みに使うものであり、追加するものでは決してありません。 enabled_tools に Pro ツールを記載しても、nextpdf/premium が存在しない場合、そのツールは登録されません。

  • ティアが存在しない場合は、通知なしで扱われ、想定どおりの動作です。 オープンソースのみのインストールではコアセットが提供され、Pro ツールと Enterprise ツールはいずれもゼロと報告されます。この結果は障害ではなく、正しい動作です。

  • カタログ内のティアは、宣言済みの不変条件です。 各ツールは、自身のティアとリスクをコード内で宣言します。レジストリが、ネームスペースやパッケージングからティアを推測することは決してありません。

レジストリのスキャンとティア検出は、起動時に 1 回だけ実行されます。ページの performance_budget がこれらの上限を定めます。ツールごとのコストは、カタログ参照ではなく、基盤となるエンジンの処理によって決まります。カタログ参照はツール名で O(1) です。

最小権限の制御として enabled_tools を使用し、インテグレーションが必要とするツールのみを公開してください。カタログに、セキュリティポリシーが拒否したツールが含まれることは決してなく、ティアカウンターは許可されたツールのみを反映します。高リスクのツールは、カタログへの登録の有無にかかわらず、人による確認によってゲートされたままになります。/connect/security-and-operations/. を参照してください。

このページでは、レジストリの仕組みを説明します。tools/list および initialize サーフェスのプロトコル引用は、/transports/mcp/. に固定されています。リスクモデルは、/connect/hitl-risk-tiers/. で規定されています。

コアカタログは、作成、検査、診断について完結しています。署名、墨消し、コンプライアンス、フォレンジックのツールは、nextpdf/premium がサーバーとともにインストールされている場合にのみ表示されます。これはパッケージング上の境界であり、composer require の時点で適用されます。実行時のプロンプトになることは決してありません。

  • /connect/hitl-risk-tiers/ — リスク列の意味と適用方法
  • /connect/boot-and-discovery/ — 起動と検出の完全なシーケンス
  • /connect/configuration/ — enabled_tools と環境ゲート
  • /transports/mcp/ — tools/listinitialize のワイヤーフォーマット
  • /connect/overview/ — カタログが設計上、実行時依存である理由