Zum Inhalt springen

NextPDF Connect-Toolkatalog

Die Anzahl der Tools, die ein NextPDF Connect-Deployment bereitstellt, ist keine feste Konstante. Der Server ermittelt sie zur Laufzeit aus den installierten Paketen, der Konfigurations-Allowlist und einer Reihe von Umgebungs-Gates. Diese Seite dokumentiert das verifizierte Kernset sowie die Methode zur Ermittlung der Gesamtzahl.

Terminal-Fenster
composer require nextpdf/server

NextPDF\Server\ToolRegistry baut den Katalog beim Booten in dieser Reihenfolge auf:

  1. Core-Stufe. Ein fester Satz von Kern-Tools wird bedingungslos registriert. Zwei weitere Tools werden nur registriert, wenn eine Vorbedingung erfüllt ist.
  2. Pro-Stufe. Die Pro-Tools registrieren sich, wenn die Pro-Provider-Klasse aufgelöst werden kann, was geschieht, sobald nextpdf/premium installiert ist. Der Server überspringt diesen Schritt stillschweigend, wenn die Klasse nicht aufgelöst werden kann.
  3. Enterprise-Stufe. Der Enterprise-Provider folgt demselben Muster wie der Pro-Provider.
  4. Gebündelte erweiterte Stufen. Die AST- und Mutation-Tool-Provider werden mit dem Server-Paket ausgeliefert und in der Pro-Stufe registriert. Ein Umgebungs-Gate steuert jeden Provider, und jeder Provider arbeitet kontrolliert eingeschränkt, wenn die zugrunde liegende Core-Unterstützung fehlt.
  5. Sicherheitsrichtlinien-Filter. Der Server filtert jede Registrierung anhand der enabled_tools-Allowlist. Eine nicht leere Allowlist verwirft jedes Tool, das nicht auf ihr steht. Der Stufenzähler berücksichtigt nur Tools, die die Richtlinie zugelassen hat.

Die MCP-initialize-Antwort meldet den resultierenden tool_count und die Zählungen pro Stufe für den laufenden Server. Dieser Wert ist die maßgebliche Zahl. Betrachten Sie jede feste Gesamtzahl im Fließtext als veraltet.

Diese zwölf Tools registrieren sich bedingungslos in der Core-Stufe. Der Server liest jede Risiko-Stufe und jeden MCP-Verhaltenshinweis aus der Tool-Implementierung aus.

Tool-NameKategorieBeschreibungRisiko
create_pdfdocumentEin neues PDF-Dokument erstellen und eine document_id zurückgebencaution
add_textdocumentTextinhalt zu einem PDF-Dokument hinzufügencaution
add_imagedocumentEin Bild aus einem Dateipfad oder base64-Daten hinzufügencaution
add_tabledocumentEine HTML-Tabelle zu einem PDF-Dokument hinzufügencaution
set_fontdocumentDie Schriftart für nachfolgende Textoperationen festlegencaution
add_pagedocumentEine neue Seite zum PDF-Dokument hinzufügencaution
output_pdfdocumentDas PDF finalisieren und als Datei oder base64 ausgebenapproval_required
preview_layoutdocumentJSON-Zusammenfassung des Layouts ohne Renderingsafe
diagnostic.doctordiagnosticEinen Health-Check ausführen; strukturierte Umgebungsdiagnostiksafe
diagnostic.capabilitiesdiagnosticCapabilities samt Stufe und Status auflistensafe
diagnostic.inspectdiagnosticEin PDF inspizieren und strukturelle Metadaten zurückgebensafe
diagnostic.verifydiagnosticPDF-Integrität prüfen; optionale PDF/A- oder PDF/UA-Prüfungcaution
Tool-NameBedingung
generate_barcodeRegistriert sich, wenn im installierten nextpdf/core eine Core-Barcode-Encoder-Registry vorhanden ist
parse_pdfRegistriert sich nur, wenn NEXTPDF_MCP_TOOL_PARSE_PDF_ENABLED gleich true oder 1 ist

output_pdf ist das einzige Kern-Tool auf der Risikostufe approval_required. Das Schreiben einer Datei durchläuft das Human-in-the-Loop-Gate; der base64-Ausgabemodus nicht. Siehe /connect/hitl-risk-tiers/.

Tools, die nur bei installierten Zusatzpaketen hinzukommen

Abschnitt betitelt „Tools, die nur bei installierten Zusatzpaketen hinzukommen“

Der Server prüft mit class_exists() auf Provider-Klassen:

  • Pro-Tools registrieren sich, wenn nextpdf/premium installiert ist und der Pro-Provider aufgelöst werden kann.
  • Enterprise-Tools registrieren sich, wenn nextpdf/premium installiert ist und der Enterprise-Provider aufgelöst werden kann. Die Datenschutz-Tools (Schwärzung, De-Identifizierung, Zonenschwärzung) kapseln Enterprise-Klassen. Sie registrieren sich nur dann in der Enterprise-Stufe, wenn diese Klassen autoloadbar sind.
  • AST- und Mutation-Tools werden mit dem Server ausgeliefert und in der Pro-Stufe registriert. Die Gates NEXTPDF_AST_TOOLS_ENABLED und NEXTPDF_MUTATION_TOOLS_ENABLED steuern sie, und beide Gates sind standardmäßig aktiviert.

Die genauen Pro- und Enterprise-Tool-Inventare definiert das Premium-Paket, nicht der Server, und dokumentiert sie zusammen mit diesem Paket. Der Vertrag des Servers umfasst den Registrierungsmechanismus, keine feste Premium-Liste.

Geben Sie die Tools aus, die diese Installation bereitstellt, ohne einen Server zu starten:

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

Fragen Sie den laufenden Server über MCP nach der maßgeblichen Zahl ab:

Terminal-Fenster
./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

Der Server berechnet im initialize-Ergebnis capabilities.nextpdf.tool_count und tiers für den laufenden Prozess. Über REST liefert GET /api/v1/capabilities die entsprechende Introspektion.

  • Es gibt keine festen „33 Tools“ — und keine feste Gesamtzahl. Älteres Material nennt eine einzelne Zahl; sie ist kein vertraglicher Bestandteil. Die Zahl ändert sich mit den installierten Paketen, der enabled_tools-Allowlist und den Umgebungs-Gates für parse_pdf, AST und Mutation. Lesen Sie sie immer vom laufenden Server aus.

  • Die Allowlist schränkt ein; sie fügt nie hinzu. Ein Pro-Tool in enabled_tools aufzuführen, registriert es nicht, wenn nextpdf/premium fehlt.

  • Eine fehlende Stufe ist stillschweigendes und erwartetes Verhalten. Die reine Open-Source-Installation stellt das Kernset bereit und meldet null Pro- und null Enterprise-Tools. Dieses Ergebnis ist korrektes Verhalten, kein Fehler.

  • Die Stufe im Katalog ist eine deklarierte Invariante. Jedes Tool deklariert seine eigene Stufe und sein Risiko im Code. Die Registry leitet eine Stufe niemals aus dem Namespace oder dem Packaging ab.

Der Registry-Scan und die Stufenerkennung laufen einmal beim Booten. Das performance_budget begrenzt sie. Die Kosten pro Tool entstehen durch die zugrunde liegende Engine-Operation, nicht durch den Katalog-Lookup nach Tool-Namen, der O(1) ist.

Verwenden Sie enabled_tools als Least-Privilege-Kontrolle: Stellen Sie nur die Tools bereit, die eine Integration benötigt. Der Katalog enthält niemals ein Tool, das die Sicherheitsrichtlinie abgelehnt hat, und der Stufenzähler spiegelt nur zugelassene Tools wider. Tools mit hohem Risiko bleiben unabhängig von der Katalogzugehörigkeit an eine menschliche Bestätigung gebunden. Siehe /connect/security-and-operations/.

Diese Seite beschreibt den Registry-Mechanismus. Protokollverweise für die tools/list- und initialize-Oberflächen sind unter /transports/mcp/ festgehalten. Das Risikomodell ist unter /connect/hitl-risk-tiers/ spezifiziert.

Der Kernkatalog deckt Erstellung, Inspektion und Diagnostik vollständig ab. Tools für Signierung, Schwärzung, Compliance und Forensik erscheinen nur, wenn nextpdf/premium zusammen mit dem Server installiert ist. Dies ist eine Packaging-Grenze, die zum Zeitpunkt von composer require angewendet wird, und niemals eine Laufzeitabfrage.

  • /connect/hitl-risk-tiers/ — was die Risikospalte bedeutet und wie sie durchgesetzt wird
  • /connect/boot-and-discovery/ — die vollständige Boot- und Discovery-Sequenz
  • /connect/configuration/ — enabled_tools und die Umgebungs-Gates
  • /transports/mcp/ — die tools/list- und initialize-Wire-Formate
  • /connect/overview/ — warum der Katalog absichtlich laufzeitabhängig ist