Debugge, wie dein Agent jedes Tool liest
Mockd erfasst die komplette Konversation zwischen deinem Agenten und seinen Tools. Sieh dir jeden Call an und spiele die Session ab, um herauszufinden, wo das Modell ein Tool missversteht, bevor es live geht.
crm.notes.createErstellt eine Notiz und hängt sie an einen oder mehrere CRM-Datensätze an.
Beschreibung aus dem Tool-Katalog: das, was der Agent gelesen hat.
crm.notes.create mit 2 Werten auf:bodystringPflichtTextinhalt der Notiz.
associationsarrayoptionalIDs der Datensätze, an die die Notiz gehängt wird.
Genau diese Daten hat der Agent gesendet (JSON)
{
"body": "Logged Q3 expansion deal from agent.",
"associations": ["deal_9981"]
}Rate-Limit, künstlich injiziert durch das Mockd-Szenario „429 burst". Dein Agent wartete 250 ms und der erneute Versuch kam mit 201 zurück. Er kam vom Mock, nicht vom echten Tool.
{
"error": "RATE_LIMITED",
"message": "Too many requests. Injected by Mockd scenario 'burst'.",
"retryAfterMs": 250
}crm.contacts.searchquery: "acme"200142mscrm.contacts.searchok · 200start 12:04:01.221 · dauer 142 ms · 3 FelderDurchsucht die CRM-Kontakte per Volltext und gibt passende Datensätze zurück.
Beschreibung aus dem Tool-Katalog: das, was der Agent gelesen hat.
Agent-EingabePflichtfelder 1/1 · 0 unbekanntIch rufecrm.contacts.searchmit 3 Werten auf:querystringPflichtSuchbegriff – z. B. Firmenname oder E-Mail-Adresse.
"acme"propertiesarrayoptionalWelche Kontaktfelder im Ergebnis enthalten sein sollen.
emailcompanylifecyclestagelimitnumberoptionalMaximale Anzahl an Treffern.
10Genau diese Daten hat der Agent gesendet (JSON)
{ "query": "acme", "properties": ["email", "company", "lifecyclestage"], "limit": 10 }200 okServer-Antwortwas das Tool zurückgab{ "total": 2, "results": [ { "id": "5512", "company": "Acme Inc.", "email": "ops@acme.io" }, { "id": "5513", "company": "Acme Labs", "email": "hi@acmelabs.dev" } ] }crm.contacts.getid: 551220088mscrm.contacts.getok · 200start 12:04:01.402 · dauer 88 ms · 2 FelderLädt einen einzelnen Kontakt anhand seiner eindeutigen ID.
Beschreibung aus dem Tool-Katalog: das, was der Agent gelesen hat.
Agent-EingabePflichtfelder 1/1 · 0 unbekanntIch rufecrm.contacts.getmit 2 Werten auf:contactIdstringPflichtEindeutige ID des Kontakts.
"5512"propertiesarrayoptionalWelche Felder geladen werden sollen.
emailcompanyownerlifecyclestageGenau diese Daten hat der Agent gesendet (JSON)
{ "contactId": "5512", "properties": ["email", "company", "owner", "lifecyclestage"] }200 okServer-Antwortwas das Tool zurückgab{ "id": "5512", "company": "Acme Inc.", "email": "ops@acme.io", "owner": "rep_42", "lifecyclestage": "opportunity" }crm.deals.createname: "Acme – Q3 Expansion"201196mscrm.deals.createok · 201start 12:04:01.690 · dauer 196 ms · 4 FelderLegt einen neuen Deal in der CRM-Pipeline an.
Beschreibung aus dem Tool-Katalog: das, was der Agent gelesen hat.
Agent-EingabePflichtfelder 1/1 · 0 unbekanntIch rufecrm.deals.createmit 4 Werten auf:dealnamestringPflichtAnzeigename des Deals.
"Acme – Q3 Expansion"amountnumberoptionalDeal-Wert in der Währung des Accounts.
48000pipelinestringoptionalID der Pipeline, in der der Deal liegt.
"default"dealstagestringoptionalAktuelle Phase im Verkaufsprozess.
"qualifiedtobuy"Genau diese Daten hat der Agent gesendet (JSON)
{ "dealname": "Acme – Q3 Expansion", "amount": 48000, "pipeline": "default", "dealstage": "qualifiedtobuy" }201 okServer-Antwortwas das Tool zurückgab{ "id": "deal_9981", "dealname": "Acme – Q3 Expansion", "amount": 48000, "createdAt": "2026-06-19T12:04:01Z" }
Alles erfasst, für jeden Call
Jeder Tool-Call deines Agenten wird vollständig aufgezeichnet, damit du siehst, was passiert ist und warum.
crm.deals.createdealname: "Acme – Q3" amount: 48000 pipeline: "default"
Tool & Argumente
Das genaue Tool, das das Modell gewählt hat, und die Argumente, die es gefüllt hat.
id: "deal_9981" amount: 48000 createdAt: "…01Z"
Antwort
Das synthetische Payload, das Mockd zurückgab, geformt wie das Original.
Latenz & Status
Wie lange der Call dauerte, und ob er erfolgreich war, fehlschlug oder gedrosselt wurde.
Injiziertes Szenario
Ob die Antwort durch ein Szenario erzwungen wurde: ein 429, ein Timeout, ein leeres Ergebnis.
Von der Config zum ersten Trace in unter fünf Minuten
Kein SDK zu installieren, kein Code zu ändern. Für deinen Agenten sieht Mockd aus wie ein echter MCP-Server. Es antwortet nur mit synthetischen Daten und zeichnet alles auf.
Mock wählen
Wähle einen Server aus dem Katalog (starte mit HubSpot) oder bring deinen eigenen MCP mit. Du bekommst eine fertige Connection-Config zum Einfügen.
- HubSpot24 tools
- Salesforce31 toolssoon
- Slack18 toolssoon
- Stripe27 toolssoon
- Notion15 toolssoon
In den Agenten einfügen
Füge die Config in Claude, Cursor, das OpenAI Agents SDK oder einen beliebigen MCP-Client ein. Kein Code-Umbau, kein SDK nötig.
{ "mcpServers": { "mockd": { "url": "https://mock-d.com/hubspot/mcp" } } }
Agent laufen lassen
Lass ihn arbeiten. Jeder Tool-Call wird an den Mockd-Endpoint geleitet und mit realistischen, deterministischen Daten beantwortet.
crm.contacts.search200142mscrm.contacts.get20088mscrm.deals.create201196mscrm.associations.create20074ms
Beobachten, dann justieren
Sieh dir jeden Call im Live-Trace-Viewer an, um zu finden, wo das Modell ein Tool missversteht, und feile dann am System-Prompt, bis es passt.
crm.deals.createmisreadEin Kontrollraum für die Tools deines Agenten
Die Bausteine, die aus 'lief irgendwie' einen engen, beobachtbaren Feedback-Loop machen.
Trace-Viewer mit voller Detailtiefe
Jeder Tool-Call mit Argumenten, Antwort, Latenz und Status: eine LangSmith-artige Timeline für MCP.
crm.contacts.search142mscrm.deals.create196mscrm.notes.create429Fehler- & Latenz-Injektion
Ein Schalter genügt für 429er, leere Ergebnisse oder langsame Antworten und beweist, dass dein Agent sich fängt.
Latenz, die du steuerst
Simuliere reale Antwortzeiten und sieh, wie dein Agent sein Tempo findet.
Prompt-Diffing
Vergleiche zwei System-Prompts über dieselben Tool-Calls hinweg, Seite an Seite.
Bleibt in deiner Sandbox
Nichts geht an Dritte. Gemockte Daten sind synthetisch by design.
Bring your own MCP
Richte Mockd auf jeden eigenen MCP-Server. Wir zeigen seine Tool-Beschreibungen, erfassen jeden Call und lassen dich Prompts an deinen Tools optimieren.
Sieh den ersten Trace deines Agenten
Richte deinen Agenten auf einen Mockd-Endpoint und beobachte jeden Tool-Call in Echtzeit.
Kostenlos testencrm.contacts.search142mscrm.deals.create196mscrm.notes.create110ms