tokyntraildocs

So funktioniert tokyn.trail

Das Problem ist klar — hier ist der Weg dahin, in etwa zehn Minuten: vom ersten Login bis zum Audit-Report. Erst die zwei Betriebsarten und Ihr Integrationsweg, dann fünf Schritte am konkreten Beispiel.

MCP-ClientClaude, Cursor, Agenttokyn.trail-Proxyhold / release · statelessZiel-MCP-ServerIhr Systemtools/callnur wenn allow / freigegebenDecision EngineRegeln · Routing · FristenMenschInbox · E-Mail · SMSSlack · WidgetholdEvidence StoreSHA-256-Hash-ChainReports · Verify-APIjedes EreignisHold-API / SDK (REST)
Datenfluss im Enforce-Mode: Der Proxy spricht selbst MCP; freigabepflichtige Calls werden gehalten, der Upstream-Call passiert erst nach der Entscheidung — ausgeführt durch tokyn.trail, nicht durch den Client. Nicht-MCP-Agenten nehmen denselben Weg über die Hold-API.

Zwei Betriebsarten, ein Prinzip: Im Monitor-Mode wird nichts geblockt — jeder Tool-Call wird nur protokolliert. Das ist der risikofreie Einstieg. Im Enforce-Mode entscheiden Ihre Regeln: durchlassen, für einen Menschen halten oder ablehnen. Fällt tokyn.trail aus, gilt: Monitor fail-open (Agenten laufen weiter), Enforce fail-closed (keine ungeprüfte Aktion passiert).

Zwei Wege hinein — beide landen bei denselben Regeln, derselben Inbox, derselben Evidenz:

Weg A · Ihr Agent spricht MCP

Proxy-URL tauschen

Claude Desktop, Cursor, eigener MCP-Client. Sie tauschen eine URL — keine Zeile Agenten-Code. Dieser Guide (Schritte 1–5) beschreibt genau diesen Weg.

Weg B · Kein MCP

hold() vor der Aktion

n8n, LangGraph, Cron-Job, Eigenbau. Ein Aufruf vor der kritischen Aktion — gleiche Regeln, gleiche Inbox, gleiche Evidenz. Zur Hold-API.

Die Schritte 1–5 zeigen Weg A (MCP). Wer kein MCP nutzt, überspringt Schritt 1 und liest Schritte 2–5 gleichbedeutend — der Abschnitt „Ohne MCP" am Ende zeigt den einen Unterschied.

Schritt 1 — Verbinden: eine URL tauschen#

Fachlich: Eine Connection ist ein MCP-Server Ihres Systems, den tokyn.trail beaufsichtigt. Sie hinterlegen die Ziel-URL (plus optionale Auth-Header, die AES-256-GCM-verschlüsselt gespeichert werden) und erhalten dafür eine Proxy-URL. Ab jetzt zeigt Ihr MCP-Client auf tokyn.trail statt direkt auf den Server — das ist die gesamte Integration.

Connections-Übersicht mit Formular zum Verbinden eines MCP-Servers
Connections: bestehende Verbindungen mit Modus-Badge, darunter das Formular für den nächsten MCP-Server.

Auf der Detailseite finden Sie die Proxy-URL als Copy-Box und fertige Config-Snippets für Claude Desktop, Cursor und generische Clients. Authentifiziert wird mit einem API-Key aus Einstellungen → API-Keys (Prefix tt_live_ bzw. tt_test_; gespeichert wird nur der Hash).

Connection-Detailseite mit Proxy-URL, Modus-Schalter, entdeckten Tools und Client-Snippets
Connection-Detail: Proxy-URL, Monitor/Enforce-Schalter, automatisch entdeckte Tools mit Zustand und Client-Setup-Tabs.

Schritt 2 — Beobachten: der Monitor-Mode#

Beim ersten tools/list Ihres Clients entdeckt tokyn.trail alle Tools des Servers und versieht jede Definition mit einem SHA-256-Hash. Jeder tools/call erscheint live im Verlauf der Inbox — Werkzeug, Argumente, Agent, Zeitpunkt. Nach ein, zwei Tagen Monitor-Betrieb wissen Sie zum ersten Mal präzise, was Ihre Agenten tun. Der Activity-Report weist zusätzlich aus, wie viele Calls unter Enforce freigabepflichtig gewesen wären — Ihr Signal für den Umstieg.

Rug-Pull-Schutz: Taucht ein Tool neu auf oder ändert sich seine Definition (anderer Hash), gilt es automatisch als freigabepflichtig, bis ein Admin es einsortiert. Ein upstream „umdefiniertes" Tool kann sich so keine stillen Rechte erschleichen.

Schritt 3 — Regeln: pro Tool ein Klick#

Fachlich: Regeln bestimmen, welche Aktion durchläuft (Allow), auf einen Menschen wartet (Approve) oder blockiert wird (Deny). Der Dreifach-Schalter pro Tool deckt den Normalfall ab; der Bedingungs-Builder verfeinert mit Ausdrücken wie „Betrag > 500", Frequenzlimits („mehr als 20 Calls/Stunde") oder Zeitfenstern („außerhalb 08–18 Uhr"). Es gewinnt die erste passende Regel nach Priorität; ohne Treffer gilt unter Enforce fail-closed: halten.

Rule Builder mit Dreifach-Schalter pro Tool und Bedingungs-Builder
Rule Builder: Tool-Policies als Dreifach-Schalter, darunter Bedingungsregeln mit Klartext-Vorschau.

Für Freigaberegeln legen Sie fest, wer entscheidet (Rolle oder konkrete Personen), ob eine Begründung Pflicht ist und wie lange die Frist läuft. Optional: Eskalationsketten (nach Fristablauf die nächste Gruppe) und das Vier-Augen-Prinzip (min_approvals: 2 — zwei unabhängige Freigaben, derselbe Nutzer zählt nicht doppelt).

Genau hier entsteht die Regel, die den Freitagabend-Vorfall gestoppt hätte: send_payment auf Approve, Bedingung args.amount > 500. Ein Klick — und keine 4.900-€-Zahlung läuft mehr ungefragt durch.

Schritt 4 — Entscheiden: in Sekunden, auf jedem Kanal#

Im Enforce-Mode erzeugt eine freigabepflichtige Aktion einen Hold. Wichtig für Ihre Agenten-Architektur: Die MCP-Verbindung blockiert dabei nie. Der Agent bekommt sofort eine Referenz (tt_pa_…) samt Status-URL zurück und kann den Stand über das injizierte Tool tokyn_trail_check_status abfragen. Nach der Freigabe führt tokyn.trail den Call selbst upstream aus.

pendingapprovedrejectedexpiredexecutedfailedauto_allowedAllow-Regel / MonitorFreigabeAblehnungTimeoutProxy führt ausUpstream-Fehler
Jeder Übergang läuft in einer Datenbank-Transaktion und erzeugt ein Audit-Event in der Hash-Chain. auto_allowed ist ein Endzustand für durchgereichte Calls — auch die werden lückenlos protokolliert.

Entschieden wird, wo der Entscheider gerade ist: in der Inbox (mit Tastatur A/R/Enter), per signiertem E-Mail-Link ohne Login, per SMS an verifizierte Nummern, über Slack-Buttons oder eingebettet im eigenen Portal (Widget). Jede Entscheidung trägt Kanal, Person, Zeitpunkt und Begründung.

Entscheidungs-Inbox mit offener Freigabe und Verlauf
Die Inbox: offene Entscheidung mit Kontext (Regel, Agent, Frist, Argumente), darunter der lückenlose Verlauf.

Schritt 5 — Nachweisen: Evidenz statt Logs#

Fachlich: Logs beweisen, dass etwas passiert ist. Evidenz beweist, dass ein berechtigter Mensch es verantwortet hat. Jede Zustandsänderung — Hold, Freigabe, Ablehnung, Regeländerung, Tool-Änderung — wird an eine per Organisation geführte SHA-256-Hash-Chain angehängt: hash = sha256(prev_hash + payload + seq). Nachträgliche Manipulation bricht die Kette an exakt der betroffenen Stelle.

Reports-Seite mit Chain-Verifikation und Export-Optionen
Reports: Chain-Verifikation auf einen Blick, Oversight- und Activity-Report als CSV oder PDF mit wählbarem Zeitraum.

Der Oversight-Report (PDF/CSV) listet jede menschliche Entscheidung mit Regel, Kanal und Begründung — das Deckblatt enthält das Verifikationsergebnis der Kette. Er ist als Anlage für Security-Reviews, ISO-42001-Audits und den Nachweis menschlicher Aufsicht nach EU AI Act Art. 14 gedacht. Programmatisch: GET /api/v1/audit/verify und die Report-Endpoints (siehe API-Referenz).

Ohne MCP: derselbe Ablauf mit hold()#

Läuft Ihr Agent nicht über MCP — n8n, LangGraph, ein Cron-Job, Eigenbau —, ändert sich nur Schritt 1: Statt eine URL zu tauschen, rufen Sie hold() vor der kritischen Aktion auf. Schritte 2–5 sind identisch: dieselbe Inbox, dieselben Regeln (die Tools erscheinen unter der Connection „SDK"), dieselbe Hash-Chain. Ein Unterschied: Hier führt Ihr Code die Aktion nach der Freigabe aus, nicht der Proxy.

import { TokynTrail } from '@tokyn-trail/sdk';
const trail = new TokynTrail({ apiKey: process.env.TOKYN_TRAIL_API_KEY! });

const decision = await trail.hold({
  tool_name: 'send_payment',
  arguments: { amount: 4900, currency: 'EUR' },
  agent_identity: { id: 'billing-agent' },
  idempotency_key: 'order-4711-payment',
});

if (decision.approved) await executePayment();   // erst nach der Freigabe

Vollständig — Request-Body, Long-Poll, Webhooks, Statuscodes — in der Hold-API & SDK-Referenz.

Und weiter?#