MCP

Werkzeugreferenz

Jedes Werkzeug des Teddit-MCP-Servers, mit seinen Parametern und dem, was zurückkommt. Es gibt 30 Werkzeuge, eine Ressource und zwei Prompt-Vorlagen.

Wie sich Werkzeuge verhalten

  • Ergebnisse sind JSON, als Text zurückgegeben. render_chart gibt zusätzlich ein Bild zurück. Daten sind ISO 8601 in UTC.
  • Sites heißen Projekte. Fast jedes Werkzeug nimmt projectId, eine Zahl, die Sie von list_projects bekommen. Prompts, Wettbewerber und Scans haben ebenfalls numerische IDs.
  • Assistenten haben Schlüssel: openai (ChatGPT), anthropic (Claude), perplexity, gemini, google_aio (AI Overviews), google_ai_mode (AI Mode).
  • Berichte beschreiben den aktuellen Zustand: die letzte Antwort pro Prompt und Assistent, wie unter Kennzahlen und Status erklärt. Im JSON ist „genannt“ mentioned, „verlinkt“ ist ownCited, Ihr Platz ist brandRank, und visibility ist der Sichtbarkeitswert.
  • Fehler kommen als Werkzeugergebnis zurück, das als Fehler markiert ist, mit dem Text Error: … und derselben Meldung, die die App zeigen würde.

Das Etikett neben jedem Werkzeug ist der niedrigste Schlüsselzugang, der es aufrufen darf:

EtikettSchlüsselzugangRolle dahinter
LesenLesen, Lesen + Bearbeiten, Lesen + ScannenViewer und höher
Lesen + BearbeitenLesen + Bearbeiten, Lesen + ScannenMember und höher
Lesen + ScannenLesen + ScannenAdmin

Workspace und Sites

whoami Lesen

Keine Parameter. Gibt zurück, als wer der Schlüssel handelt: kind (token), tokenName, user (die Person, die den Schlüssel erstellt hat), org (der Workspace: id, name, plan) und role (viewer, member oder admin).

list_projects Lesen

Keine Parameter. Gibt den Workspace zurück, seine limits (Sites, Prompts pro Site, Scans pro Monat und diesen Monat genutzte Scans), die connectedAssistants und einen Eintrag pro Site: id, name, domain, industry, language, location, Prompt-Zahlen (total, active, draft), die Zahl der Wettbewerber, lastAnsweredAt, scanRunning, die aktuellen stats (Antworten, mentionRate, citationRate, promptCoverage, avgRank, visibility, Tonalitätszahlen), die vier besten Marken nach shareOfVoice und nextSteps: was in der Einrichtung der Site noch fehlt.

list_providers Lesen

Keine Parameter. Gibt die sechs Assistenten zurück mit key, label, dem verwendeten model, modelOptions und ob der Assistent enabled ist.

create_project Lesen + Scannen

Beginnt, eine Site zu verfolgen. Verweigert, wenn die Zahl der Sites des Workspace aufgebraucht ist oder wenn die Adresse keine Domain ist.

  • name (Text, Pflicht): der Markenname, wie er in Antworten vorkommt.
  • url (Text, Pflicht): die Site, zum Beispiel brightloop.example.
  • industry (Text).
  • brandTerms (Liste von Text, bis zu 50): weitere Schreibweisen, die ebenfalls die Marke meinen.
  • competitors (Liste, bis zu 50): Objekte mit name und optional domain.
  • language (Text): die Sprache, für die Antworten erfragt werden. Voreinstellung English.
  • location (Text): wo der Kunde ist. Voreinstellung United States.

Gibt die neue Site zurück.

update_project Lesen + Bearbeiten

Ändert eine Site. Parameter: projectId (Pflicht) und beliebige von name, industry, brandTerms, language, location, scanFrequencyDays (1 bis 365, der Abstand zwischen geplanten Scans).

Gibt project und reanalysis zurück. Wenn sich der Name oder die Markenbegriffe ändern, wird jede gespeicherte Antwort sofort erneut gelesen, und reanalysis sagt, wie viele Antworten gelesen wurden und wie viele die Marke vorher und nachher nennen. Dafür wird kein Assistent aufgerufen.

Berichte

get_dashboard Lesen

Der Wochenbericht einer Site, die Daten hinter dem Dashboard.

  • projectId (Pflicht).
  • week (YYYY-MM-DD): ein beliebiges Datum innerhalb der gewünschten Woche. Weggelassen, die letzte Woche.

Die Hauptteile des Ergebnisses:

  • now und previous: Zahlen und Anteile für die Woche und die Woche davor (answers, mentioned, mentionRate, ownCited, citationRate, promptCoverage, avgRank, visibility, Tonalitätszahlen).
  • verdict: eine Überschrift und eine einabsätzige Zusammenfassung der Woche.
  • leaderboard: Sie und jeder verfolgte Wettbewerber mit der Zahl der Antworten, in denen er genannt wird, Share of Voice und Änderung.
  • shareOfVoice, sources (die fünf meistzitierten Domains, Zitate Ihrer Seiten), assistants (eine Zeile pro Assistent).
  • changes: gained und lost (Prompts, bei denen ein Assistent begonnen oder aufgehört hat, Sie zu nennen, höchstens je 50), und linkGained und linkLost für Links.
  • categories (Zahlen pro Kategorie), activity (die Scans der Woche, gesammelte Antworten, Ausgaben) und actions (bis zu drei vorgeschlagene nächste Schritte).

Vor dem ersten Scan gibt es einen kurzen Text zurück, der sagt, dass es nichts zu berichten gibt.

Woche für Woche für eine Site: die letzten zehn Wochen.

  • projectId (Pflicht).
  • limit (1 bis 200, Voreinstellung 25): die Höchstzahl der Prompts in jeder Liste.

Gibt zurück: weeks; weekByWeek (pro Woche: Antworten, mentionRate, citationRate, promptCoverage und visibility, jeweils mit Änderung); wonLost (gewonnene und verlorene Prompts pro Woche); topics (pro Kategorie der Anteil ihrer Prompts, die Sie nennen, pro Woche); topPrompts (die Prompts mit dem höchsten Sichtbarkeitswert: latest ist der Wert, change1w und change4w seine Änderung über eine und vier Wochen); und stability mit drei Listen und ihren counts:

ListeEin Prompt ist darin, wenn
heldmindestens ein Assistent Sie in jeder der letzten vier Wochen genannt hat.
lostSie in einer früheren Woche genannt wurden und seit zwei Wochen oder länger nicht mehr genannt werden.
volatileer weder gehalten noch verloren ist und mindestens zweimal zwischen genannt und nicht genannt gewechselt hat.

Prompts

list_prompts Lesen

Die verfolgten Prompts einer Site mit dem aktuellen Urteil jedes Assistenten.

  • projectId (Pflicht).
  • q: Textsuche im Prompt.
  • category: ein Kategoriename.
  • status: draft, active oder paused.
  • verdict: named, lost (ein verfolgter Wettbewerber wird genannt, und Sie werden weder genannt noch verlinkt), cited (verlinkt, aber nicht genannt), missing (keines von beiden) oder failed. Die genauen Regeln sind die des Filters Ergebnis.
  • competitor: der Name eines verfolgten Wettbewerbers, den eine aktuelle Antwort nennt.
  • stability: held, volatile oder lost, wie unter get_trends definiert.
  • scanned: yes oder never.
  • sort: created (Voreinstellung), text, category, rank oder scanned. dir: asc oder desc.
  • page (ab 1) und perPage (5 bis 200, Voreinstellung 20).

Gibt zurück: total, page, lastPage, engines (die Assistenten, die geantwortet haben), facets (die Kategorien, Quellen und Wettbewerber zum Filtern) und prompts. Jeder Prompt hat id, text, category, status, intent, source, bestRank, lastScanAt, stability und verdicts: pro Assistent eines von named first, named, linked, not named, not named, failed.

get_prompt Lesen

Ein Prompt vollständig, mit der Antwort eines Assistenten Wort für Wort. Die Antwort trägt surface (app, api oder google: woher sie gelesen wurde, siehe Woher eine Antwort stammt) und askedFrom (Land, Sprache, Websuche).citedInsteadOfYou listet über die letzten Antworten die fremden Sites, die zitiert werden, wo ein Wettbewerber genannt wird und Sie nicht, mit den Konkurrenten und Assistenten neben jeder.

  • projectId, promptId (Pflicht).
  • engine: der Assistent, dessen Antwort enthalten sein soll. Weggelassen, der erste, der geantwortet hat.

Gibt zurück: prompt; verdicts pro Assistent (mentioned, brandRank, ownCited, sentiment, error, scannedAt); heatmap (pro Assistent und Woche eine Stufe von 0 bis 3: nicht sichtbar, nur verlinkt, genannt, zuerst genannt); und answer: provider, model, scannedAt, die Urteile, howDescribed (der Satz, der Sie beschreibt), der vollständige text, competitorsNamed, searches (die Websuchen, die der Assistent ausgeführt hat, wenn er sie offenlegt) und sources. Quellen kommen in vier Gruppen: own (Ihre Website), opportunity (fremde Seiten), competitor (Websites der Wettbewerber) und reference (Dokumentation und offizielle Websites), jede Seite mit url, kind und citedTimes.

add_prompts Lesen + Bearbeiten

Fügt einer Site Prompts hinzu.

  • projectId (Pflicht).
  • prompts (Liste von 1 bis 200, Pflicht). Jeder Eintrag: text (3 bis 500 Zeichen, Pflicht), category, intent (informational, commercial, transactional, navigational; Voreinstellung informational), funnel (awareness, consideration, decision; Voreinstellung awareness), status (Voreinstellung active).

Gibt added (eine Zahl) und failed zurück: die Texte, die nicht hinzugefügt wurden, jeder mit dem Grund. Ein auf der Site bereits verfolgter Text und alles über das Prompt-Limit der Site hinaus landet dort.

update_prompt Lesen + Bearbeiten

Bearbeitet einen Prompt. Parameter: projectId, promptId (Pflicht) und beliebige von text, category, intent, funnel, status. Gesammelte Antworten bleiben beim Prompt; ein neuer Text ändert, was spätere Scans fragen. category ersetzt alle Kategorien des Prompts durch diese eine. Gibt den Prompt zurück.

bulk_update_prompts Lesen + Bearbeiten

Ändert viele Prompts auf einmal. Parameter: projectId, ids (1 bis 5000 Prompt-IDs, Pflicht) und eines oder mehrere von status, category (ordnet sie nur unter diese eine Kategorie ein), addCategory (fügt eine Kategorie zu denen hinzu, die jeder Prompt bereits hat), delete (true löscht die Prompts samt ihren Antworten und kann nicht rückgängig gemacht werden). Gibt ok zurück.

import_queries Lesen + Bearbeiten

Importiert eine Liste von Prompts oder Suchanfragen als Text, im Format, das unter Prompts importieren beschrieben ist.

  • projectId (Pflicht).
  • contents (Text, Pflicht): die Zeilen der Datei.
  • status: draft (Voreinstellung) oder active.
  • dryRun (true oder false): nur zählen, was geschehen würde.

Gibt zurück: rows, created, updated (bereits verfolgt; ihre Kategorien werden ersetzt, wenn die Zeile welche nennt), skipped und categories (Zeilen pro Kategorie).

rewrite_queries Lesen + Scannen

Schreibt importierte Suchanfragen („email automation pricing“) mit einem KI-Modell zu vollständigen Fragen um. Es wird nicht berechnet, braucht aber ein Guthaben über null und kann bis zu 10-mal pro Stunde aufgerufen werden. Nur importierte Prompts, deren Text noch die ursprüngliche Anfrage ist, werden angefasst; das Original bleibt als Keyword des Prompts gespeichert. Parameter: projectId (Pflicht), category (auf eine Kategorie beschränken), dryRun (die Umschreibungen zeigen, ohne zu speichern). Gibt zurück: pending, written, skipped und pairs: jedes Original mit seiner Umschreibung.

Wettbewerber und Seiten

list_competitors Lesen

Parameter: projectId. Gibt zurück: competitors (id, name, domain, aliases); answersCollected; ownNamedIn und namedIn (in wie vielen aktuellen Antworten Sie und jeder Wettbewerber genannt werden); board (für Sie und jede verfolgte Marke der Anteil der Antworten, die sie nennen, insgesamt und pro Assistent); und suggestions: nicht verfolgte Namen, die in mindestens drei Antworten der letzten 28 Tage vorkommen.

add_competitor Lesen + Bearbeiten

Parameter: projectId, name (Pflicht), domain, aliases (bis zu 30 weitere Schreibweisen). Gespeicherte Antworten werden sofort für die neue Marke erneut gelesen, ohne einen Assistenten aufzurufen. Gibt competitor und reanalysis zurück.

update_competitor Lesen + Bearbeiten

Parameter: projectId, competitorId (beide Pflicht), name, domain, aliases. Gibt competitor und reanalysis zurück.

Nur was Sie senden, ändert sich. Ein weggelassener Wert behält, was gespeichert ist; aliases ersetzt die ganze Liste; domain: null entfernt die Domain.

remove_competitor Lesen + Bearbeiten

Parameter: projectId, competitorId. Die Marke wird nicht mehr verfolgt, und gespeicherte Antworten werden ohne sie erneut gelesen. Die Antworten selbst bleiben erhalten.

get_competitor_report Lesen

Parameter: projectId, competitorId. Ein Wettbewerber gegen Sie: gepaarte Zahlen mit ihren Änderungen (tiles), pro Assistent (assistants), pro Kategorie (topics), die Prompts, bei denen nur er, beide oder nur Sie genannt werden (prompts), die Seiten seiner Website, die die Assistenten zitieren (pages), und die fremden Sites, die in den Antworten zitiert werden, die ihn und nicht Sie nennen (sources: Domain, Art, Antworten, Prompts, Assistenten). Vor dem ersten Scan gibt es empty: true zurück.

list_pages Lesen

Die Seiten Ihrer Website, aus ihrer Sitemap gelesen, und ob eine aktuelle Antwort auf jede verlinkt. Die Sitemap wird beim Anlegen der Site gelesen und danach jede Woche; import_sitemap liest sie jetzt.

  • projectId (Pflicht).
  • shown: yes für Seiten, auf die eine aktuelle Antwort verlinkt, no für den Rest.
  • q: Suche in Adresse und Titel.
  • page, perPage (5 bis 200, Voreinstellung 50).

Gibt zurück: items (id, url, title, path, section, shownBy: die Assistenten, die darauf verlinken, prompts: wie viele Prompts dorthin führen), total, siteTotal, shown und sections.

get_crawler_access Lesen

Was Ihre robots.txt jeden KI-Crawler lesen lässt. Parameter: projectId (Pflicht), check (true liest robots.txt und llms.txt zuerst erneut; braucht einen Schlüssel Lesen + Bearbeiten).

Gibt zurück: checkedAt, robots (status: found, missing oder unreachable; url, httpStatus, error), llmsTxt (present, url), crawlers (jeder mit token, operator, purpose, access: allowed, partial, blocked oder unknown, der entscheidenden line und was, wenn er sich geändert hat) und history. Siehe KI-Crawler-Zugang.

list_search_queries Lesen

Die Websuchen, die die Assistenten beim Beantworten der aktiven Prompts der Site ausgeführt haben, nach der letzten Antwort pro Prompt und Assistent, die häufigsten zuerst (bis zu 500). Parameter: projectId.

Jeder Eintrag: query, answers (Antworten, die sie ausgeführt haben), named (davon diejenigen, die Sie genannt haben), providers, prompts (id, text) und tracked (ein Prompt mit genau diesem Text existiert).

import_sitemap Lesen + Bearbeiten

Parameter: projectId. Liest die Sitemap der Site jetzt (/sitemap.xml und die Sitemaps, die robots.txt nennt, einem Sitemap-Index folgend) und fügt jede Seite Ihrer eigenen Domain hinzu, die noch nicht aufgeführt ist, bis zu 5.000 Adressen. Gibt seen und added zurück. Schlägt mit einer Meldung fehl, wenn dort keine Seiten gefunden werden.

Scans

get_scan_options Lesen

Parameter: projectId. Womit ein Scan eingerichtet werden kann: engines (die verbundenen Assistenten), models (pro Assistent: das Standardmodell und die anderen Optionen, jede mit einem label, einem geschätzten costPerAnswer, einer note und, wenn sie nicht gewählt werden kann, dem Grund in unavailable; bei ChatGPT und Gemini umfassen die Optionen die App-Antworten chatgpt-app / gemini-app (schnell, sofort) und chatgpt-app-queue / gemini-app-queue (langsam und günstiger, einige Minuten): die Antwort, wie die App sie zeigt), activePrompts, categories (aktive Prompts pro Kategorie), scansThisMonth und scansPerMonth (das Limit des Workspace) und spentThisMonth (die Scan-Kosten der Site in diesem Kalendermonat).

estimate_scan Lesen

Was ein Scan kosten würde, bevor er läuft. Nimmt dieselben Angaben wie start_scan:

  • projectId (Pflicht).
  • providers (Liste von Assistenten-Schlüsseln): welche Assistenten gefragt werden. Weggelassen, jeder verbundene.
  • promptIds (Liste von IDs): eine handverlesene Auswahl. Weggelassen, jeder aktive Prompt. Prompts, die nicht aktiv sind, werden übersprungen.
  • category: nur eine Kategorie scannen.
  • sample (Zahl): nur so viele Prompts scannen, zufällig gezogen. repeats (1–5): jede Frage jedem Assistenten so oft stellen; die Antworten, und der Preis, folgen (siehe Mehrere Antworten auf eine Frage).
  • models (Objekt): Assistenten-Schlüssel zu Modell, zum Beispiel {"openai": "gpt-5.4-mini"}. Das Modell muss eine der Optionen dieses Assistenten in get_scan_options sein.

Gibt zurück: prompts, answers, cost (US-Dollar) und formatted. Was die Zahl enthält: Kostenschätzung eines Scans.

start_scan Lesen + Scannen

Startet einen Scan. Parameter: alles aus estimate_scan, plus budgetUsd (den Scan stoppen, sobald er so viel gekostet hat; 0 oder weggelassen bedeutet das Doppelte seiner Schätzung) und label (bis zu 60 Zeichen). Gibt den Scan zurück: id, status, providers, total, completed, failed, costUsd, budgetUsd, startedAt.

Der Aufruf kehrt zurück, sobald der Scan eingereiht ist; verfolgen Sie ihn mit get_live_scan. Ein Scan wird verweigert, mit dem Grund als Fehler, wenn ein anderer Scan der Site läuft, kein aktiver Prompt passt, ein Modellname unbekannt ist, das Guthaben den Scan nicht deckt, die Site ihre Monatsgrenze erreicht hat oder die Scans des Workspace für den Monat aufgebraucht sind.

get_live_scan Lesen

Parameter: projectId. Gibt run zurück: null, wenn nichts läuft, sonst den Scan mit progress (elapsed, lastAnswer, Sekunden perAnswer, eta) und stalled (true, wenn Antworten eingereiht sind und nach 20 Sekunden keine angekommen ist).

cancel_scan Lesen + Scannen

Parameter: projectId, runId. Stoppt einen laufenden Scan. Noch eingereihte Antworten werden verworfen; eine bereits unterwegs kann noch ankommen. Gibt cancelled zurück: false, wenn der Scan bereits beendet war.

list_scans Lesen

Parameter: projectId. Die letzten 30 Scans der Site, neueste zuerst, jeder mit Status, Assistenten, Modellen, Antwortzahlen und costUsd. Status: queued, running, cancelling, cancelled, done, failed.

Diagramme

render_chart Lesen

Zeichnet ein Diagramm und gibt es als Bild zurück, gefolgt von den gezeichneten Werten als Text.

Fordern Sie eines der eigenen Diagramme der Site mit projectId und chart an:

chartZeigt
report.assistants.mentionRateAnteil der Antworten, die Sie nennen, eine Linie pro Assistent, zehn Wochen.
report.assistants.citationRateAnteil der Antworten, die auf Ihre Website verlinken, eine Linie pro Assistent.
report.assistants.visibilityDer Sichtbarkeitswert (0 bis 100), eine Linie pro Assistent.
report.competitorsAnteil der Antworten, die jede Marke nennen, diese Woche gegen letzte.
report.changesBei wie vielen Prompts jeder Assistent begonnen und aufgehört hat, Sie zu nennen.
trends.ratesAntworten, die Sie nennen und verlinken, Woche für Woche.
trends.promptCoverageAnteil der Prompts, bei denen Sie genannt werden, Woche für Woche.
trends.visibilityDer Sichtbarkeitswert der Site, Woche für Woche.
trends.wonLostGewonnene und verlorene Prompts pro Woche.
competitors.trendSie und die verfolgten Marken im Zeitverlauf.
competitors.headToHeadPro Wettbewerber die Prompts, bei denen nur einer von Ihnen genannt wird.
competitor.trendSie gegen einen Wettbewerber. Braucht competitorId.

Oder zeichnen Sie eigene Daten mit custom:

{
  "custom": {
    "type": "bar",
    "labels": ["Brightloop", "Mailora", "Quillsend"],
    "series": [{ "label": "Named in", "points": [12, 20, 16] }],
    "suffix": " answers",
    "horizontal": true
  },
  "title": "Answers naming each brand"
}
  • custom.type: line oder bar. labels und series sind Pflicht; suffix, horizontal und stacked sind optional.
  • week (YYYY-MM-DD): für die report.*-Diagramme eine vergangene Woche.
  • title (bis zu 120 Zeichen), width (300 bis 2000, Voreinstellung 900), height (200 bis 1500), dark (true für einen dunklen Hintergrund).

Ressource und Prompt-Vorlagen

Clients, die MCP-Ressourcen und -Prompts unterstützen, sehen außerdem:

NameArtWas es ist
teddit://projectsRessourceDie Sites des Workspace mit ihren aktuellen Zahlen, als JSON.
weekly_reviewPromptNimmt projectId. Bittet Ihre KI, die Woche der Site zu beurteilen: was sich bewegt hat, der wahrscheinliche Grund, drei Maßnahmen und ein Diagramm. Sie nutzt get_dashboard, get_trends, list_prompts und render_chart.
grow_prompt_setPromptNimmt projectId und optional count (Voreinstellung 10). Bittet Ihre KI, neue Fragen für die schwächsten Kategorien vorzuschlagen, sie Ihnen zu zeigen und sie mit add_prompts als Entwürfe hinzuzufügen, sobald Sie zustimmen.

Die Vorlagen reichen Ihrer KI nur eine vorgefertigte Anweisung. Die Vorschläge und die Beurteilung schreibt Ihre KI, nicht Teddit.

Jedes Werkzeug außer render_chart hat REST-Endpunkte, die dieselben Daten zurückgeben; siehe Endpunkte.