Zum Hauptinhalt springen

Tools & Funktionen - Vollständiger Leitfaden

Tools (auch "Funktionen" genannt) sind die Werkzeuge, die Ihrem Agenten zur Verfügung stehen. Jedes Tool erfüllt eine spezifische Aufgabe und erweitert die Fähigkeiten Ihres Agenten.

Wichtiges Prinzip

Aktivieren Sie nur die Tools, die Ihr Agent wirklich benötigt! Jedes aktive Tool erhöht die Komplexität und kann die Antwortzeit verlängern.


Übersicht aller verfügbaren Tools

ToolKategorieHäufigkeitKosten-Impact
get_product_properties🛍️ Produkte⭐⭐⭐ Hoch💰 Mittel
product_search🛍️ Produkte⭐⭐⭐ Hoch💰 Niedrig
get_product_details🛍️ Produkte⭐⭐⭐ Hoch💰 Niedrig
get_categories🛍️ Produkte⭐⭐ Mittel💰 Niedrig
get_manufacturer🛍️ Produkte⭐ Niedrig💰 Niedrig
get_meta_informationℹ️ Shop-Info⭐⭐⭐ Hoch💰 Niedrig
get_faqsℹ️ Shop-Info⭐⭐ Mittel💰 Niedrig
fetch_initial_chat_guidelinesℹ️ Shop-Info⭐ Niedrig💰 Niedrig
get_chatbot_nameℹ️ Shop-Info⭐⭐⭐ Hoch💰 Sehr niedrig
get_date_timeℹ️ Shop-Info⭐⭐ Mittel💰 Sehr niedrig
get_countries🌍 Lokalisierung⭐ Niedrig💰 Sehr niedrig
get_delivery_times📦 Versand⭐⭐ Mittel💰 Niedrig
get_payment_methods💳 Zahlung⭐⭐ Mittel💰 Niedrig
get_order_status📋 Bestellung⭐⭐ Mittel💰 Niedrig
fetch_url🌐 Externe Daten⭐ Niedrig💰 Mittel
go_to_url🔗 Navigation⭐⭐ Mittel💰 Sehr niedrig
log📝 Wissens-DB⭐⭐ Mittel💰 Niedrig
search_logs🔍 Wissens-DB⭐⭐ Mittel💰 Niedrig
tags_for_logs🏷️ Wissens-DB⭐ Niedrig💰 Sehr niedrig
get_unresolved_logs📊 Backend⭐ Niedrig💰 Niedrig

🛍️ Produkt-Tools

get_product_properties

Was macht es? Lädt die komplette Produktfilter-Struktur Ihres Shops: Kategorien, Eigenschaften (Farbe, Größe, Material etc.) und Hersteller/Marken.

Wann aktivieren? ✅ Wenn Ihr Agent Produkte suchen und filtern soll ✅ Für Produktberater-Agenten ✅ Wenn Kunden nach "roten T-Shirts in Größe M" fragen

Wann NICHT aktivieren? ❌ Für reine FAQ/Kundenservice-Agenten ❌ Wenn Sie bereits get_categories UND get_manufacturer aktiv haben (redundant!)

Rückgabe-Beispiel:

{
"categories": [
{"name": "Kleidung", "id": "...", "breadcrumb": "Home > Kleidung"},
{"name": "T-Shirts", "id": "...", "breadcrumb": "Home > Kleidung > T-Shirts"}
],
"properties": {
"Farbe": ["Rot", "Blau", "Schwarz"],
"Größe": ["S", "M", "L", "XL"],
"Material": ["Baumwolle", "Polyester"]
},
"manufacturers": ["Nike", "Adidas", "Puma"]
}

Anwendungsbeispiel:

Kunde: "Ich suche eine rote Jacke aus Leder"
Agent ruft auf: get_product_properties()
Agent weiß jetzt: Farbe "Rot" existiert, Material "Leder" existiert, Kategorie "Jacken" existiert
Agent ruft auf: product_search(category="Jacken", properties={"Farbe": "Rot", "Material": "Leder"})
Tipp: Einmal pro Session

Dieses Tool sollte idealerweise nur EINMAL zu Beginn einer Konversation aufgerufen werden. Das spart Tokens und Kosten!


Was macht es? Durchsucht Ihren Produktkatalog mit Suchbegriff, Filtern, Kategorien, Preisspanne und mehr.

Wann aktivieren?IMMER wenn Ihr Agent Produkte empfehlen soll ✅ Für Produktberater, Shopping-Assistenten ✅ Für "Zeig mir..."-Anfragen

Parameter:

  • query: Freitext-Suchbegriff (z.B. "T-Shirt")
  • categories: Kategorie-IDs (z.B. ["123", "456"])
  • properties: Filter (z.B. {"Farbe": ["Rot"], "Größe": ["M"]})
  • manufacturer: Hersteller-IDs
  • minPrice / maxPrice: Preisspanne
  • sort: Sortierung (price-asc, price-desc, name-asc, etc.)
  • limit: Anzahl Ergebnisse (Standard: 8)
  • page: Seite (für Pagination)

Rückgabe-Beispiel:

{
"products": [
{
"id": "abc123",
"productNumber": "SW-1001",
"name": "Rotes T-Shirt",
"price": 29.99,
"manufacturer": "Nike",
"url": "/detail/abc123"
}
],
"total": 42,
"page": 1,
"limit": 8
}

Best Practice:

❌ Schlecht: Alle 1000 Produkte auf einmal laden
✅ Gut: Mit limit=8 starten, bei Bedarf nachladen

get_product_details

Was macht es? Lädt detaillierte Informationen zu einem spezifischen Produkt (anhand Produkt-ID oder Produktnummer).

Wann aktivieren? ✅ Wenn Kunden Detailfragen zu einem Produkt stellen ✅ Nach product_search für weitere Details ✅ Für "Ist das Produkt auf Lager?"-Fragen

Parameter:

  • productId: Produkt-ID ODER
  • productNumber: Produktnummer (z.B. "SW-1001")

Rückgabe-Beispiel:

{
"id": "abc123",
"name": "Rotes T-Shirt Premium",
"description": "Hochwertiges T-Shirt aus 100% Bio-Baumwolle...",
"price": 29.99,
"stock": 15,
"available": true,
"manufacturer": "Nike",
"properties": {
"Farbe": "Rot",
"Größe": ["S", "M", "L"],
"Material": "Baumwolle"
},
"variants": [...],
"images": [...]
}

Anwendungsbeispiel:

Kunde: "Ist das rote T-Shirt noch in Größe M verfügbar?"
Agent hat vorher: product_search("rotes T-Shirt") aufgerufen
Agent ruft jetzt: get_product_details(productId="abc123")
Agent antwortet: "Ja, das rote T-Shirt ist in Größe M verfügbar. Wir haben 15 Stück auf Lager!"

get_categories

Was macht es? Liefert eine Liste aller Kategorien in Ihrem Shop (Name, URL, Breadcrumb-Navigation).

Wann aktivieren? ✅ Wenn Kunden nach Kategorien browsen sollen ✅ Für "Was für Kategorien habt ihr?"-Fragen ✅ ABER: Normalerweise ist get_product_properties besser!

Wann NICHT aktivieren? ❌ Wenn Sie bereits get_product_properties aktiv haben (redundant!)

Rückgabe-Beispiel:

[
{
"id": "cat123",
"name": "T-Shirts",
"url": "/Kleidung/T-Shirts",
"breadcrumb": "Home > Kleidung > T-Shirts",
"productCount": 42
}
]
Redundanz vermeiden

In den meisten Fällen macht get_product_properties bereits das Gleiche und mehr. Nutzen Sie get_categories nur, wenn Sie KEINE Produktsuche benötigen.


get_manufacturer

Was macht es? Liefert eine Liste aller Hersteller/Marken in Ihrem Shop.

Wann aktivieren? ✅ Wenn Kunden nach Marken fragen ("Welche Marken führt ihr?") ✅ Für "Habt ihr Nike?"-Fragen

Wann NICHT aktivieren? ❌ Wenn Sie bereits get_product_properties aktiv haben (redundant!)

Rückgabe-Beispiel:

[
{
"id": "manu123",
"name": "Nike",
"productCount": 150,
"url": "/Nike"
},
{
"id": "manu456",
"name": "Adidas",
"productCount": 120,
"url": "/Adidas"
}
]

ℹ️ Shop-Informations-Tools

get_meta_information

Was macht es? Liefert frei konfigurierbare Shop-Informationen: Kontakt, Öffnungszeiten, Rückgabebedingungen, Versandinfos, rechtliche Hinweise etc.

Wo konfigurieren? In der Plugin-Konfiguration gibt es ein LONGTEXT-Feld "Meta Information". Sie können hier beliebige Informationen hinterlegen.

Wann aktivieren?SEHR EMPFOHLEN für Kundenservice-Agenten ✅ Für "Wie sind eure Öffnungszeiten?"-Fragen ✅ Für "Wie funktioniert die Rückgabe?"-Fragen

Konfigurations-Beispiel:

KONTAKT:
E-Mail: info@meinshop.de
Telefon: +49 123 456789
Öffnungszeiten: Mo-Fr 9-18 Uhr

VERSAND:
- Kostenloser Versand ab 50€
- Lieferzeit: 2-3 Werktage
- Versandkosten: 4,90€

RÜCKGABE:
- 30 Tage Rückgaberecht
- Kostenlose Rücksendung
Best Practice

Wenn Sie Ihre Shop-Informationen gut pflegen, überschneidet sich dieses Tool oft mit get_faqs. In der Praxis reicht dann meist EINES der beiden Tools.


get_faqs

Was macht es? Liefert FAQ-Inhalte (Häufig gestellte Fragen und Antworten).

Wo konfigurieren? In der Plugin-Konfiguration gibt es ein LONGTEXT-Feld "FAQs".

Wann aktivieren? ✅ Wenn Sie eine FAQ-Seite haben ✅ Für wiederkehrende Kundenfragen

Konfigurations-Beispiel:

Frage: Wie lange dauert der Versand?
Antwort: In der Regel 2-3 Werktage innerhalb Deutschlands.

Frage: Kann ich die Bestellung zurückschicken?
Antwort: Ja, Sie haben 30 Tage Rückgaberecht ab Erhalt der Ware.

Frage: Welche Zahlungsmethoden akzeptiert ihr?
Antwort: Wir akzeptieren Kreditkarte, PayPal, Rechnung und Vorkasse.
Meta vs. FAQ

In der Praxis überschneiden sich get_meta_information und get_faqs oft. Wählen Sie EINES und pflegen Sie es gut – das reicht meist völlig aus!


fetch_initial_chat_guidelines

Was macht es? Lädt Chat-Richtlinien/Verhaltensregeln zu Beginn eines Chats.

Wo konfigurieren? In der Plugin-Konfiguration gibt es ein LONGTEXT-Feld "Initial Chat Guidelines".

Wann aktivieren? ✅ Wenn Sie spezielle Chat-Regeln definieren möchten ✅ Für Ton, Ansprache (Du/Sie), No-Gos

Konfigurations-Beispiel:

TONALITÄT:
- Duze den Kunden
- Sei freundlich und locker
- Nutze Emojis sparsam

VERBOTE:
- Keine Rabatte versprechen
- Keine medizinischen Ratschläge
- Keine politischen Aussagen

DO's:
- Immer höflich bleiben
- Bei Unsicherheit nachfragen
- Produkte aktiv empfehlen

get_chatbot_name

Was macht es? Liefert den konfigurierten Namen des Chatbots/Agenten, damit er sich korrekt vorstellen kann.

Wann aktivieren?FAST IMMER empfohlen ✅ Wenn sich der Agent vorstellen soll ✅ Für "Wie heißt du?"-Fragen

Rückgabe-Beispiel:

{
"name": "Produktberater Max"
}

Anwendungsbeispiel:

Kunde: "Wer bist du?"
Agent ruft auf: get_chatbot_name()
Agent antwortet: "Ich bin Max, dein Produktberater! Wie kann ich dir helfen?"

Kosten: Sehr niedrig (winzige Rückgabe)


get_date_time

Was macht es? Liefert das aktuelle Datum und die Uhrzeit (inkl. Zeitzone).

Wann aktivieren? ✅ Für zeitabhängige Antworten ("Heute", "Morgen") ✅ Für Öffnungszeiten-Checks ✅ Für zeitgebundene Aktionen/Versandfristen

Rückgabe-Beispiel:

{
"date": "2025-12-29",
"time": "14:30:00",
"timezone": "Europe/Berlin",
"dayOfWeek": "Sonntag"
}

Anwendungsbeispiel:

Kunde: "Wenn ich heute bestelle, wann kommt das Paket an?"
Agent ruft auf: get_date_time()
Agent weiß: Heute ist Sonntag
Agent antwortet: "Bei Bestellung bis Montag 12 Uhr erhältst du das Paket Mittwoch!"

🌍 Lokalisierungs-Tools

get_countries

Was macht es? Liefert eine Liste der verfügbaren Länder in Ihrem Shop (Verkaufskanal-spezifisch).

Wann aktivieren? ✅ Für "In welche Länder liefert ihr?"-Fragen ✅ Für internationale Shops

Rückgabe-Beispiel:

[
{"code": "DE", "name": "Deutschland"},
{"code": "AT", "name": "Österreich"},
{"code": "CH", "name": "Schweiz"}
]

📦 Versand-Tools

get_delivery_times

Was macht es? Liefert Informationen zu Lieferzeiten, wie in Ihrem Shop konfiguriert.

Wann aktivieren? ✅ Für "Wie lange dauert der Versand?"-Fragen ✅ Wenn Sie verschiedene Lieferzeit-Optionen haben

Rückgabe-Beispiel:

[
{
"name": "Standard",
"min": 2,
"max": 3,
"unit": "Werktage"
},
{
"name": "Express",
"min": 1,
"max": 1,
"unit": "Werktag"
}
]

💳 Zahlungs-Tools

get_payment_methods

Was macht es? Liefert die verfügbaren Zahlungsmethoden im aktuellen Verkaufskanal.

Wann aktivieren? ✅ Für "Welche Zahlungsmethoden bietet ihr?"-Fragen ✅ Für Checkout-Support

Rückgabe-Beispiel:

[
{"name": "Kreditkarte", "active": true},
{"name": "PayPal", "active": true},
{"name": "Rechnung", "active": true},
{"name": "Vorkasse", "active": false}
]

📋 Bestell-Tools

get_order_status

Was macht es? Ruft den Status einer Bestellung ab – anhand Bestellnummer + PLZ (als Sicherheitsmaßnahme).

Wann aktivieren? ✅ Für "Wo ist meine Bestellung?"-Fragen ✅ Für Kundenservice-Agenten

Parameter:

  • orderNumber: Bestellnummer (z.B. "10001")
  • zipCode: PLZ zur Verifizierung (z.B. "12345")

Rückgabe-Beispiel:

{
"orderNumber": "10001",
"status": "In Versand",
"trackingCode": "DHL123456789",
"estimatedDelivery": "2025-12-30"
}

Anwendungsbeispiel:

Kunde: "Wo ist meine Bestellung 10001? PLZ ist 12345"
Agent ruft auf: get_order_status(orderNumber="10001", zipCode="12345")
Agent antwortet: "Deine Bestellung ist bereits im Versand! Tracking: DHL123456789"
Datenschutz

Das Tool gibt nur den Status zurück – KEINE sensiblen Kundendaten wie Namen, Adresse oder Zahlungsinformationen!


🌐 Externe Daten-Tools

fetch_url

Was macht es? Lädt den Inhalt einer Webseite (kein Web-Search!) und macht ihn für den Agenten lesbar.

Wann aktivieren? ✅ Wenn Ihr Agent auf aktuelle Inhalte von Ihrer eigenen Webseite zugreifen soll ✅ Für dynamische Inhalte (Blog, News, Aktionen) ✅ Nur für Seiten, die Sie kontrollieren oder vertrauen!

Parameter:

  • url: Die zu ladende URL

Anwendungsbeispiel:

Sie haben eine News-Seite: https://meinshop.de/news/aktuelle-aktion
Agent ruft auf: fetch_url("https://meinshop.de/news/aktuelle-aktion")
Agent liest: "20% Rabatt auf alle Winterjacken bis 31.12.2025"
Agent antwortet: "Aktuell haben wir 20% Rabatt auf alle Winterjacken – gültig bis Jahresende!"
Sicherheitshinweis

Verwenden Sie fetch_url nur für Webseiten, denen Sie vertrauen! Der Agent kann JEDEN öffentlichen Inhalt der Seite lesen.


🔗 Navigations-Tools

go_to_url

Was macht es? Erstellt einen sicheren, direkten Link zu Shop-Seiten (Kategorie, Produkt, Service-Seiten).

Wann aktivieren? ✅ Wenn der Agent Kunden zu bestimmten Seiten leiten soll ✅ Für "Zeig mir die Kategorie..."-Anfragen

Parameter:

  • url: Relative oder absolute URL
  • label: Link-Text (Optional)

Rückgabe-Beispiel:

<a href="/Kleidung/T-Shirts">Hier geht's zu unseren T-Shirts</a>

📝 Wissens-Management-Tools (Logging)

log

Was macht es? Ermöglicht dem Agenten, neue Einträge in die Wissensdatenbank (Assistant Logs) zu schreiben.

Wann aktivieren? ✅ Wenn Ihr Agent aus Konversationen lernen soll ✅ Zum Aufbau einer FAQ-Datenbank ✅ Für wiederkehrende, bisher unbekannte Fragen

Parameter:

  • question: Die Frage/Problem
  • answer: Die Antwort/Lösung
  • tags: Kategorisierung (z.B. ["versand", "rückgabe"])
  • isPublic: Öffentlich (für andere Agenten sichtbar)?

Anwendungsbeispiel:

Kunde fragt: "Bietet ihr Geschenkverpackung an?"
Agent weiß es nicht (steht nicht in Meta-Info)
Agent fragt nach und erfährt: "Ja, kostenlos auf Anfrage"
Agent ruft auf: log(
question="Bietet ihr Geschenkverpackung an?",
answer="Ja, wir bieten kostenlose Geschenkverpackung auf Anfrage an.",
tags=["service", "geschenk"],
isPublic=true
)

Beim nächsten Mal kann search_logs diese Information finden!


search_logs

Was macht es? Durchsucht die Wissensdatenbank (Assistant Logs) nach bereits beantworteten Fragen.

Wann aktivieren?Zusammen mit log nutzen ✅ Um Wissensbasis wiederzuverwenden ✅ Verhindert Duplikate und Halluzinationen

Parameter:

  • query: Suchbegriff
  • tags: Filter nach Tags (Optional)
  • limit: Anzahl Ergebnisse

Rückgabe-Beispiel:

[
{
"question": "Bietet ihr Geschenkverpackung an?",
"answer": "Ja, kostenlose Geschenkverpackung auf Anfrage.",
"tags": ["service", "geschenk"],
"createdAt": "2025-12-15"
}
]
Selbstlernender Agent

Die Kombination log + search_logs macht Ihren Agenten selbstlernend! Er baut kontinuierlich seine eigene Wissensbasis auf.


tags_for_logs

Was macht es? Liefert die Liste erlaubter Tags für die Logs (zur Kategorisierung).

Wann aktivieren? ✅ Wenn Sie log und search_logs nutzen ✅ Für konsistente Kategorisierung

Rückgabe-Beispiel:

["versand", "rückgabe", "zahlung", "produkt", "service", "technisch"]

get_unresolved_logs

Was macht es? Liefert offene/ungelöste Log-Einträge (für Backend-Agenten zur Triage).

Wann aktivieren? ✅ Für interne Backend-Agenten ✅ Für Team-Workflows ("Was ist noch offen?")

Zielgruppe: Primär für Mitarbeiter, nicht für Kunden-Agenten!


Tool-Kombinationen (Empfohlene Sets)

🛍️ Produktberater-Agent

Must-have:

  • get_product_properties
  • product_search
  • get_product_details
  • get_chatbot_name
  • go_to_url

Optional:

  • get_delivery_times
  • get_payment_methods

Nicht nötig:

  • get_categories (schon in product_properties)
  • get_manufacturer (schon in product_properties)

🎧 Kundenservice-Agent

Must-have:

  • get_meta_information ODER get_faqs
  • get_chatbot_name
  • get_order_status
  • get_date_time
  • search_logs
  • log

Optional:

  • get_delivery_times
  • get_payment_methods
  • get_countries

Nicht nötig:

  • ❌ Produkt-Tools (außer für Produktfragen)

📝 Content-Prüfer (Backend)

Must-have:

  • fetch_url
  • get_chatbot_name

Optional:

  • log (für Verbesserungsvorschläge)

Nicht nötig:

  • ❌ Alle Shop-Frontend-Tools

Performance & Kosten-Tipps

⚡ Performance-Optimierung

  1. Weniger Tools = Schnellere Antworten

    • Jedes Tool in der Liste erhöht die Komplexität
    • Agent braucht länger, um zu entscheiden
  2. Caching nutzen

    • get_product_properties nur 1x pro Session aufrufen
    • Instructions sollten darauf hinweisen
  3. Limits setzen

    • Bei product_search: limit=8 (nicht 100!)
    • Bei search_logs: limit=5

💰 Kosten-Optimierung

Teure Tools:

  • fetch_url (lädt externe Inhalte)
  • get_product_properties (große Rückgabe)

Günstige Tools:

  • get_chatbot_name (winzig)
  • get_date_time (winzig)
  • go_to_url (kein API-Call)

Faustregel: Je größer die Rückgabe eines Tools, desto mehr Tokens = höhere Kosten.


Häufige Fragen

Q: Kann ich eigene Tools erstellen? A: Aktuell nicht direkt im UI. Kontaktieren Sie 5 Elements für Custom-Entwicklung.

Q: Warum ruft mein Agent ein Tool nicht auf? A: Mögliche Gründe:

  1. Tool nicht aktiviert
  2. Instructions erwähnen das Tool nicht
  3. Agent hält es für unnötig

Lösung: In Instructions explizit erwähnen!

Q: Kann ich Tools temporär deaktivieren? A: Ja, in der Agent-Konfiguration können Sie Tools jederzeit an/aus schalten.


Nächste Schritte

Sie verstehen jetzt alle verfügbaren Tools! Weiter geht's mit:

➡️ Agent-Konfiguration - Instructions & Einstellungen optimieren

➡️ Vector Stores - Eigene Dokumente als Wissensbasis

➡️ Best Practices - Tipps für optimale Tool-Nutzung