MCP-Tools: CRM, Lead-Engine und Netzwerk

Leads pflegen, Aktivitäten protokollieren, die Lead-Engine auswerten, E-Mail-Entwürfe vorbereiten und Netzwerk-Kontakte verwalten.

Voraussetzungen
  • Modul CRM aktiv (Netzwerk-Tools sind immer verfügbar).
  • Für E-Mail-Entwürfe: ein Produkt-Briefing-Artikel in der Knowledgebase der Organisation.

list_crm_leads

Listet CRM-Leads, neueste zuerst. Filterbar nach Phase, Herkunft und den Lead-Engine-Feldern Priorität, ballWith und Kategorie. Jeder Lead enthält zusätzlich die berechneten Felder category, dueAt und lastContactAt. Beim Filtern nach category durchsucht das Tool die 1.000 neuesten passenden Leads und kürzt danach auf limit. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, Modul „CRM“ aktiv.

stage
Optional · string · possible | lead | contacted | demo | proposal | invited | active | lost — Nur Leads in dieser Phase.
source
Optional · string · manual | referral | inbound | outbound | event — Herkunft des Leads: manual, referral, inbound, outbound oder event.
priority
Optional · string · A | B | C — Nur Leads mit dieser Lead-Engine-Priorität.
ballWith
Optional · string · us | other | none — Nur Leads, bei denen dieser Beteiligte am Zug ist: us (wir), other (Gegenseite) oder none (niemand).
category
Optional · string · absage | geparkt | signalabhaengig | ueberfaellig | termin_fix | heute_morgen | diese_woche | spaeter — Berechnete Follow-up-Kategorie: ueberfaellig (wir sind dran und die Frist ist verstrichen), heute_morgen, diese_woche, spaeter, termin_fix, signalabhaengig, geparkt oder absage.
limit
Optional · number — Maximale Anzahl Ergebnisse (Standard 50, höchstens 200).

get_crm_lead

Liefert einen CRM-Lead mit seinem Aktivitätsverlauf (neueste zuerst) und den berechneten Feldern category, dueAt und lastContactAt. Synchronisierte oder gesendete E-Mails erscheinen als Aktivitäten vom Typ email_inbound bzw. email_outbound – nur mit Betreff, Mail-Inhalte werden nie gespeichert. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, Modul „CRM“ aktiv.

id
Pflicht · string — ID des Leads.

create_crm_lead

Legt einen CRM-Lead an. Nur der Firmenname ist Pflicht. Ohne Angaben startet der Lead in Phase lead, Herkunft manual, Priorität B, ballWith us und Sprache de. Kontaktnamen kannst du als Freitext (contactName) oder getrennt als Vor- und Nachname senden. Mit consentBasis dokumentierst du die Rechtsgrundlage der Kontaktaufnahme samt Zeitpunkt. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, Modul „CRM“ aktiv.

companyName
Pflicht · string — Firmenname.
contactName
Optional · string — Voller Name als Freitext; wird ignoriert, sobald Vor- oder Nachname mitgesendet werden.
contactSalutation
Optional · string · herr | frau | divers — Anrede der Kontaktperson: herr, frau oder divers.
contactFirstName
Optional · string — Vorname der Kontaktperson. Hat Vorrang vor contactName.
contactLastName
Optional · string — Nachname der Kontaktperson. Hat Vorrang vor contactName.
contactEmail
Optional · string — E-Mail-Adresse der Kontaktperson.
language
Optional · string · de | en — Sprache der Einladungs- und Kunden-E-Mails an diesen Lead: de oder en (Standard: de).
phone
Optional · string — Telefonnummer.
website
Optional · string — Website-URL.
stage
Optional · string · possible | lead | contacted | demo | proposal | invited | active | lost — Anfangsphase. Standard: lead.
source
Optional · string · manual | referral | inbound | outbound | event — Herkunft des Leads. Standard: manual.
estimatedRevenueMin
Optional · number — Geschätzter Mindestumsatz des Leads.
estimatedRevenueMax
Optional · number — Geschätzter Höchstumsatz des Leads.
notes
Optional · string — Notizen als Freitext.
tags
Optional · string[] — Schlagwörter als Liste.
ballWith
Optional · string · us | other | none — Lead-Engine: wer den nächsten Schritt hat – us (wir), other (Gegenseite) oder none. Standard: us.
waitingFor
Optional · string · first_contact | docs_reply | demo_followup | offer_reply | order_form | promised_reply | fixed_meeting | own_step | signal — Lead-Engine: worauf der Ballhalter wartet (steuert die Fälligkeits- und Kategorielogik): first_contact (Erstkontakt), docs_reply (Antwort auf Unterlagen), demo_followup (Demo-Nachfassen), offer_reply (Antwort auf Angebot), order_form (Bestellformular), promised_reply (zugesagte Antwort), fixed_meeting (fixer Termin), own_step (eigener Schritt), signal (Signal).
priority
Optional · string · A | B | C — Lead-Engine-Priorität A, B oder C. Standard: B.
nextStep
Optional · string — Lead-Engine „Nächster Schritt“ – strukturierte Zeile, getrennt von Notizen und Verlauf.
segment
Optional · string — Lead-Engine-Segment (wird über die Segmentgruppen der Organisation gruppiert).
consentBasis
Optional · string · inquiry | existing_customer | consent | none — Rechtsgrundlage für die Kontaktaufnahme (TKG § 174): inquiry (Anfrage), existing_customer (Bestandskunde), consent (Einwilligung) oder none (keine dokumentiert). Kalte Outbound-Leads mit none erhalten keine E-Mail-Entwürfe.
consentNote
Optional · string — Nachweis zur Rechtsgrundlage, z. B. Datum und Kanal der Anfrage.

update_crm_lead

Ändert einen CRM-Lead; nur die übergebenen Felder werden angepasst (inklusive Lead-Engine-Feldern, Parken und Rechtsgrundlage). Wechselt die Phase auf active, wird zusätzlich die Aktivierungs-Automatisierung der Organisation ausgeführt (Lead→Kontakt-Übernahme/Onboarding). Vor- und Nachname und der abgeleitete Gesamtname bleiben synchron. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, Modul „CRM“ aktiv.

id
Pflicht · string — ID des Leads.
companyName
Optional · string — Firmenname.
contactName
Optional · string — Voller Name als Freitext; wird ignoriert, sobald Vor- oder Nachname mitgesendet werden.
contactSalutation
Optional · string · herr | frau | divers — Anrede der Kontaktperson: herr, frau oder divers.
contactFirstName
Optional · string — Vorname der Kontaktperson. Hat Vorrang vor contactName.
contactLastName
Optional · string — Nachname der Kontaktperson. Hat Vorrang vor contactName.
contactEmail
Optional · string — E-Mail-Adresse der Kontaktperson.
language
Optional · string · de | en — Sprache der Einladungs- und Kunden-E-Mails an diesen Lead: de oder en (Standard: de).
stage
Optional · string · possible | lead | contacted | demo | proposal | invited | active | lost — Neue Phase. Der Wechsel auf active löst die Aktivierungs-Automatisierung aus.
estimatedRevenueMin
Optional · number — Geschätzter Mindestumsatz des Leads.
estimatedRevenueMax
Optional · number — Geschätzter Höchstumsatz des Leads.
notes
Optional · string — Notizen als Freitext.
followUpAt
Optional · string — Zeitpunkt der Wiedervorlage (ISO 8601). Ein leerer Wert löscht ihn.
followUpNote
Optional · string — Notiz zur Wiedervorlage.
tags
Optional · string[] — Schlagwörter als Liste.
ballWith
Optional · string · us | other | none — Lead-Engine: wer den nächsten Schritt hat – us (wir), other (Gegenseite) oder none (niemand).
waitingFor
Optional · string · first_contact | docs_reply | demo_followup | offer_reply | order_form | promised_reply | fixed_meeting | own_step | signal — Lead-Engine: worauf der Ballhalter wartet (steuert die Fälligkeits- und Kategorielogik): first_contact (Erstkontakt), docs_reply (Antwort auf Unterlagen), demo_followup (Demo-Nachfassen), offer_reply (Antwort auf Angebot), order_form (Bestellformular), promised_reply (zugesagte Antwort), fixed_meeting (fixer Termin), own_step (eigener Schritt), signal (Signal).
priority
Optional · string · A | B | C — Neue Lead-Engine-Priorität A, B oder C.
nextStep
Optional · string — Lead-Engine „Nächster Schritt“ – strukturierte Zeile, getrennt von Notizen und Verlauf.
noResponseAttempts
Optional · number — Anzahl der Kontaktversuche ohne Reaktion.
segment
Optional · string — Lead-Engine-Segment (wird über die Segmentgruppen der Organisation gruppiert).
parkedSignal
Optional · string — Lead-Engine: parkt den Lead, bis dieses Signal eintritt (ein benanntes Ereignis aus der Signalliste der Organisation, nie ein Datum). Ein leerer String hebt das Parken auf.
parkedSnapshot
Optional · string — „Stand vor Parken“: Zustand des Leads beim Parken, damit er später wieder aufgenommen werden kann.
consentBasis
Optional · string · inquiry | existing_customer | consent | none — Rechtsgrundlage für die Kontaktaufnahme (TKG § 174): inquiry (Anfrage), existing_customer (Bestandskunde), consent (Einwilligung) oder none (keine dokumentiert). Kalte Outbound-Leads mit none erhalten keine E-Mail-Entwürfe.
consentNote
Optional · string — Nachweis zur Rechtsgrundlage, z. B. Datum und Kanal der Anfrage.

delete_crm_lead

Löscht einen CRM-Lead. Erfordert mindestens die Rolle Admin und einen Schlüssel mit delete-Scope. Voraussetzungen: Rolle Admin oder höher, Schlüssel-Scope „delete“ oder höher, Modul „CRM“ aktiv.

id
Pflicht · string — ID des Leads.

create_crm_activity

Protokolliert eine Aktivität an einem Lead. Die Typen email_inbound und email_outbound stehen für eine vom Lead empfangene bzw. an ihn gesendete Mail: Wie eine synchronisierte Mail aktualisieren sie auch die Lead-Engine-Felder (Ball, Warten auf, Kontaktversuche, automatisches Parken nach drei unbeantworteten Versuchen). Alle anderen Typen sind reine Verlaufseinträge. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, Modul „CRM“ aktiv.

leadId
Pflicht · string — ID des CRM-Leads.
type
Pflicht · string · note | call | email | email_inbound | email_outbound | meeting | stage_change — Art der Aktivität.
content
Pflicht · string — Inhalt bzw. Beschreibung der Aktivität.
occurredAt
Optional · string — Zeitpunkt des Ereignisses (ISO 8601, Standard: jetzt). Für bereits erfolgte Mails oder Anrufe; darf nicht in der Zukunft liegen (5 Minuten Toleranz).

get_crm_dashboard

Live-Dashboard der Lead-Engine: Kopfzahlen (aktive Pipeline, Gewinnrate, neue Leads), kumulativer Trichter mit Konversionsbewertung, Aufschlüsselung nach Segment und Herkunft, Follow-up-Hygiene (überfällig, heute fällig, eingeschlafen, Prio A, offene Entwürfe/Aufgaben, wegen fehlender Rechtsgrundlage blockierte Leads) und der organisationsweite Status der Postfach-Synchronisierung. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, Modul „CRM“ aktiv. Dieses Tool hat keine Parameter.

get_crm_weekly_briefing

Liefert wöchentliche Lead-Engine-Snapshots, neueste zuerst: KPI-Zahlen, die KI-geschriebenen Erkenntnisse (briefingMd) und die benannte Steuerungskennzahl (controlMetric). briefingMd ist KI-generiert (aiGenerated=true) und null, wenn die Erstellung in dieser Woche fehlschlug – die KPIs bleiben trotzdem gültig. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, Modul „CRM“ aktiv.

weeks
Optional · number · Standard: 1 — Wie viele Wochen zurück (1–12).

list_crm_email_drafts

Listet CRM-E-Mail-Entwürfe, neueste zuerst, optional für einen Lead. Standardmäßig nur offene Entwürfe. Jeder Eintrag enthält den Firmennamen des Leads. Als Mitglied siehst du nur Entwürfe zu Leads, die dir oder deinen Untergebenen zugewiesen sind, sowie nicht zugewiesene. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, Modul „CRM“ aktiv.

leadId
Optional · string — Nur Entwürfe zu diesem Lead.
status
Optional · string · open | sent | discarded · Standard: open — Nur Entwürfe mit diesem Status. Standard: open.
limit
Optional · number — Maximale Anzahl Ergebnisse (Standard 50, höchstens 200).

create_crm_email_draft

Speichert einen E-Mail-Entwurf zu einem Lead, den ein Mensch im CRM prüft und versendet – das Tool kann nicht senden. Der Text entsteht aus dem Produkt-Briefing-Artikel der Organisation in der Knowledgebase; Preise nur aus den konfigurierten Paketen, sonst der Platzhalter [PREIS], keine erfundenen Fakten. Die Sendebedingung („Senden ab sofort“, „Senden ab 28.09.“, „Senden, sobald …“) steht am Ende der Begründung. Der Entwurf wird als KI-generiert markiert. Blockiert wird ohne Produkt-Briefing, bei kalten Outbound-Leads ohne dokumentierte Rechtsgrundlage und bei Empfängern auf der Sperrliste. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, Modul „CRM“ aktiv.

leadId
Pflicht · string — ID des CRM-Leads.
subject
Pflicht · string — Betreff (max. 300 Zeichen).
body
Pflicht · string — Versandfertiger Klartext (max. 20.000 Zeichen) im Register des Kontakts (Sie/Du laut Lead).
to
Optional · string — Empfänger. Standard: die E-Mail-Adresse des Leads.
cc
Optional · string — CC-Empfänger – nur mit Begründung (Vermittler, Beteiligte mit unklarer Rolle).
reasoning
Optional · string — Begründung des Entwurfs: (1) Belege mit Zeitstempeln, (2) warum jetzt bzw. was sich seit einem früheren Entwurf geändert hat, (3) Warnhinweise, (4) Sendebedingung.
sendCondition
Optional · string · immediately | after_date | condition · Standard: immediately — Versandbedingung: immediately (sofort), after_date (ab einem Datum) oder condition (sobald eine Bedingung erfüllt ist). Standard: immediately.
sendAfter
Optional · string — Frühester Versandzeitpunkt (ISO 8601). Pflicht bei sendCondition after_date.

update_crm_email_draft

Bearbeitet einen offenen E-Mail-Entwurf (Betreff, Text, Empfänger, CC) oder verwirft ihn mit Begründung – etwa wenn neue Ereignisse ihn überholt haben; lege dann einen neuen an. Das Tool kann weder senden noch einen Entwurf als gesendet markieren: Das bleibt eine menschliche Aktion im CRM. Bereits gesendete oder verworfene Entwürfe sind nicht mehr änderbar. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, Modul „CRM“ aktiv.

draftId
Pflicht · string — ID des Entwurfs.
subject
Optional · string — Betreff (max. 300 Zeichen).
body
Optional · string — Neuer Text (max. 20.000 Zeichen).
to
Optional · string — Neuer Empfänger. Adressen auf der Sperrliste werden abgelehnt.
cc
Optional · string — CC-Empfänger – nur mit Begründung (Vermittler, Beteiligte mit unklarer Rolle).
status
Optional · string · discarded — Nur discarded ist erlaubt.
discardReason
Optional · string — Begründung fürs Verwerfen des Entwurfs, z. B. weil neue Ereignisse ihn überholt haben.

list_network_contacts

Listet Netzwerk-Kontakte der Organisation (Freelancer, Agenturen, Partner, Investoren …), neueste zuerst; filterbar nach Typ. Dieses Tool hat keinen Modul-Schalter. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, kein Modul-Schalter (immer verfügbar).

type
Optional · string — Nur Kontakte dieses Typs, z. B. freelancer, agency, partner.
limit
Optional · number — Maximale Anzahl Ergebnisse (Standard 50, höchstens 200).

get_network_contact

Liefert einen Netzwerk-Kontakt anhand seiner ID. Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, kein Modul-Schalter (immer verfügbar).

id
Pflicht · string — ID des Kontakts.

search_network_contacts

Sucht Netzwerk-Kontakte per Teiltext in Name, Firma und Spezialisierung (ohne Beachtung der Groß-/Kleinschreibung). Voraussetzungen: Rolle Viewer oder höher, Schlüssel-Scope „read“ oder höher, kein Modul-Schalter (immer verfügbar).

query
Pflicht · string — Suchtext für Name, Firma oder Spezialisierung.
limit
Optional · number — Maximale Anzahl Ergebnisse (Standard 20, höchstens 50).

create_network_contact

Legt einen Netzwerk-Kontakt an. Nur der Name ist Pflicht; der Typ ist standardmäßig freelancer. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, kein Modul-Schalter (immer verfügbar).

fullName
Pflicht · string — Vollständiger Name des Kontakts.
companyName
Optional · string — Firma des Kontakts.
specialization
Optional · string — Spezialisierung bzw. Fachgebiet des Kontakts.
phone
Optional · string — Telefonnummer.
email
Optional · string — E-Mail-Adresse.
website
Optional · string — Website-URL.
location
Optional · string — Ort bzw. Standort.
linkedinUrl
Optional · string — LinkedIn-Profil-URL.
type
Optional · string — Typ, z. B. freelancer, agency, partner, investor. Standard: freelancer.
hourlyRate
Optional · number — Stundensatz des Kontakts.
notes
Optional · string — Notizen als Freitext.
tags
Optional · string[] — Schlagwörter als Liste.

update_network_contact

Ändert einen Netzwerk-Kontakt; nur die übergebenen Felder werden angepasst. Website, Ort, LinkedIn-URL und Typ lassen sich über dieses Tool nicht ändern. Voraussetzungen: Rolle Member oder höher, Schlüssel-Scope „write“ oder höher, kein Modul-Schalter (immer verfügbar).

id
Pflicht · string — ID des Kontakts.
fullName
Optional · string — Vollständiger Name des Kontakts.
companyName
Optional · string — Neue Firma.
specialization
Optional · string — Spezialisierung bzw. Fachgebiet des Kontakts.
phone
Optional · string — Telefonnummer.
email
Optional · string — E-Mail-Adresse.
notes
Optional · string — Notizen als Freitext.
tags
Optional · string[] — Schlagwörter als Liste.
hourlyRate
Optional · number — Neuer Stundensatz.

delete_network_contact

Löscht einen Netzwerk-Kontakt. Erfordert mindestens die Rolle Admin und einen Schlüssel mit delete-Scope. Voraussetzungen: Rolle Admin oder höher, Schlüssel-Scope „delete“ oder höher, kein Modul-Schalter (immer verfügbar).

id
Pflicht · string — ID des Kontakts.

Häufige Stolperfallen

  • Kein Versand per MCP

    E-Mail-Entwürfe werden von einem Menschen im CRM geprüft und gesendet. Es gibt kein Tool zum Senden oder zum Markieren als gesendet.

  • Rechtsgrundlage vor dem ersten Entwurf

    Kalte Outbound-Leads brauchen eine dokumentierte consentBasis (TKG § 174), sonst wird kein Entwurf erstellt. Empfänger auf der Sperrliste werden abgelehnt.

  • Produkt-Briefing erforderlich

    Ohne freigegebenes Produkt-Briefing in der Knowledgebase verweigert create_crm_email_draft den Entwurf.

  • Kategorie-Filter mit Obergrenze

    list_crm_leads mit category durchsucht nur die 1.000 neuesten passenden Leads.

  • Phase active löst Automatik aus

    update_crm_lead mit stage active startet die Aktivierungs-Automatisierung der Organisation.

Weiterlesen

Antwort nicht gefunden oder Problem tritt weiter auf?

Zum Support-Bereich

Fachlich geprüft am 2026-09-26