TracePass
Referenz

MCP-Server

MCP-Server — KI-Assistenten (Claude, Cursor, IDE) verwalten Produkte, Pässe, EPCIS-Ereignisse direkt. Gehosteter Endpoint oder lokales npm-Paket.

Der TracePass-MCP-Server lässt einen KI-Assistenten die TracePass-Plattform direkt steuern — Produkte auflisten und anlegen, Digital Product Passports erstellen und prüfen, Wirtschaftsakteure setzen sowie GS1-EPCIS-Lieferketten-Events lesen oder erfassen. Er spricht das vollständige Model Context Protocol: tools, resources und prompts. Verbinden Sie einen gehosteten endpoint oder führen Sie ihn lokal über npx aus — beide authentifizieren sich mit denselben tp_-API-Schlüsseln wie die v1-API. Quellcode auf GitHub, veröffentlicht als tracepass-mcp-server auf npm. Im offiziellen MCP-Registry als eu.tracepass/tracepass gelistet.

Was es ist

MCP ist ein offenes Protokoll, mit dem ein KI-Assistent externe tools aufrufen und externe Daten über eine einzige, standardisierte Schnittstelle lesen kann. Der TracePass-MCP-Server ist ein schlanker, zustandsloser Adapter vor der TracePass-v1-API — er hat keine eigene Datenbank; jeder tool-Aufruf und jeder resource-Lesevorgang läuft direkt durch dieselbe API, die auch Ihre anderen Integrationen nutzen, sodass Authentifizierung, Plan-Gating und Rate-Limits sich identisch verhalten. Es gibt zwei Wege, ihn zu verbinden. Der gehostete Server läuft unter https://ai.tracepass.eu/mcp über HTTP — nichts zu installieren, immer aktuell. Der lokale Server ist das npm-Paket tracepass-mcp-server, das Ihr MCP-Client als Subprozess startet und das MCP über stdio spricht.

Verbinden (gehostet)

Richten Sie Ihren MCP-Client auf den gehosteten endpoint aus und übergeben Sie Ihren API-Schlüssel als Bearer-Token. Erzeugen Sie einen Schlüssel im Dashboard unter Developer → API Keys — es ist derselbe tp_-Schlüssel, den die v1-API nutzt. Fügen Sie diesen Block zur MCP-Konfiguration Ihres Clients hinzu:

json
{
  "mcpServers": {
    "tracepass": {
      "url": "https://ai.tracepass.eu/mcp",
      "headers": { "Authorization": "Bearer tp_YOUR_KEY" }
    }
  }
}

Verbinden (lokal / npx)

Für ein lokales Setup startet Ihr MCP-Client das npm-Paket als Subprozess und kommuniziert mit ihm über stdio. Es muss nichts im Voraus installiert werden — npx lädt tracepass-mcp-server beim ersten Lauf. Der API-Schlüssel wird über die Umgebungsvariable TRACEPASS_API_KEY statt über einen Header übergeben:

json
{
  "mcpServers": {
    "tracepass": {
      "command": "npx",
      "args": ["-y", "tracepass-mcp-server"],
      "env": {
        "TRACEPASS_API_KEY": "tp_YOUR_KEY"
      }
    }
  }
}

Tools

Die Operationen der TracePass-v1-API sind in sechs tools gruppiert. Jedes nimmt eine action plus aktionsspezifische args entgegen, sodass der Assistent das tool nach Domäne und die Operation nach action wählt:

ToolAktionen
tracepass_productslist, get, create, update
Katalog-Operationen — Produkte durchsuchen, lesen sowie anlegen oder aktualisieren.
tracepass_passportslist, get, get_by_serial, compliance, registry_readiness, get_condition_flags, get_condition_flags_by_serial, set_condition_flags, set_condition_flags_by_serial, create, suspend, suspend_by_serial, archive, archive_by_serial, get_qr, get_qr_by_serial, list_snapshots, get_snapshot, capture_measurements, capture_measurements_by_serial, list_measurements, list_measurements_by_serial, latest_measurements, latest_measurements_by_serial
Der Pass-Lebenszyklus — Pässe auflisten und lesen, einen über die Seriennummer nachschlagen, anlegen, suspendieren, archivieren, den QR-Code oder eine Data Matrix abrufen und die Snapshot-Historie lesen, einschließlich der zu einem bestimmten Datum gültigen Fassung.
tracepass_passport_fieldsupdate, update_by_serial
Einzelne Vorlagenfelder an einem Pass aktualisieren.
tracepass_passport_partiesset, remove
Wirtschaftsakteure (Hersteller, Importeur, Recycler usw.) an einem Pass setzen oder entfernen.
tracepass_epcisexport, export_by_serial, capture, capture_job, query
GS1-EPCIS-2.0-Lieferketten-Events lesen und schreiben — die Ereignishistorie eines Passes exportieren, neue Events erfassen, einen Capture-Job ausführen und den Ereignisspeicher abfragen.
tracepass_templateslist, get
Das regulatorische Schema jeder DPP-Kategorie lesen — was ein konformer Pass enthalten muss und welche EU-Verordnung hinter jedem Pflichtfeld steht. So kann der KI-Agent die Anforderungen beraten, bevor Sie etwas anlegen.

Wer einen Wert geschrieben hat, bleibt nachvollziehbar. Eine Änderung über tracepass_passport_fields wird mit den Rechten dessen geschrieben, der den Assistenten verbunden hat: Ein API-Schlüssel oder ein Admin schreibt sie als freigegeben, eine verbundene App, die für einen Editor handelt, schickt sie zur Prüfung, wie es das Dashboard täte. Hat der Assistent einen Wert selbst gefunden oder abgeleitet (Webrecherche, Lesen eines Dokuments), statt ihn genannt zu bekommen, übergibt er source: "ai_suggested", und der Wert wartet in der Prüf-Queue des Dashboards auf die Freigabe durch einen Menschen. Felder, die nur der Wirtschaftsakteur erklären darf oder die gemessen werden müssen, lehnen einen solchen Wert ab. Jede Änderung wird mit Zugangsdaten und Kanal in der Historie des Passes festgehalten. Veröffentlichen kann der Assistent nicht; das bleibt im Dashboard.

Resources

Resources sind schreibgeschützte Entitätsdaten, die der Nutzer als Konversationskontext anhängt, adressiert über eine tracepass://-URI. Zwei sind statische resources, die übrigen sind resource templates, die der Client mit einer id vervollständigt:

  • tracepass://products
  • tracepass://product/{id}
  • tracepass://passport/{id}
  • tracepass://passport/{id}/epcis
  • tracepass://passport/{id}/compliance
  • tracepass://passport/{id}/registry-readiness
  • tracepass://passport/{id}/snapshots
  • tracepass://templates
  • tracepass://template/{category}

Prompts

Prompts sind wiederverwendbare DPP-Workflows, die der MCP-Client dem Nutzer anbietet, typischerweise als Slash-Befehle. Jeder seedet die Konversation so, dass der Assistent die Aufgabe so ausführt, wie TracePass es vorsieht — etwa stets nachfragt, bevor er einen abrechenbaren Pass anlegt:

  • audit_passport
  • onboard_product
  • review_epcis_events
  • explain_dpp_requirements
  • compliance_gap_check

Der Compliance-Copilot in Aktion

Zusammen machen das Vorlagen-Tool und die Prompts den Assistenten zu einem DPP-Compliance-Copilot — er weiß, was die Verordnung je Kategorie verlangt, nicht nur, wie man Daten einspielt. Hier eine beispielhafte Sitzung für einen Batteriehersteller:

text
You  ▸  What does a compliant battery passport need, and which fields will be hardest to source?

TracePass copilot  ▸  Calling tracepass_templates(get, battery)…

  A battery DPP is governed by the EU Battery Regulation (EU) 2023/1542,
  mandatory from 18 Feb 2027. The template covers the Annex XIII field set. By
  access level:

    • Public (consumer-facing): manufacturer identity, battery
      category, weight, capacity, hazardous substances, recycled-
      content shares (Co, Pb, Li, Ni), carbon footprint, due-
      diligence report. — Art. 77, Annex XIII
    • Restricted (legitimate interest): cell materials (cathode,
      anode, electrolyte), dismantling and removal info, state of
      health, expected lifetime.
    • Authority-only: test reports, third-party audit results,
      recycled-content documentation.

  Hardest to source up front: the recycled-content shares and the
  carbon-footprint declaration — those usually live with your cell
  supplier. Want me to draft a supplier request for them?

You  ▸  Yes — and gap-check passport SN-2026-00042 before I publish it.

TracePass copilot  ▸  Running the compliance_gap_check prompt…

  Against the battery schema, SN-2026-00042 is NOT publishable yet:

    ✗ carbonFootprintDeclaration — empty (required, Art. 7)
    ✗ recycledContentCobalt — empty (required, Annex XIII)
    ✗ recycler party — not set
    ⚠ stateOfHealth — present but pending review

  Everything else is approved. Fix the two empty required fields and
  add the recycler party, and it's ready. Most important first:
  the carbon-footprint declaration — it blocks publishing and takes
  the longest to obtain.