CLI & Editoren
Claude Code, Codex, Cursor und die Gemini CLI per API-Key mit Customermates verbinden. Ein Abschnitt pro Client, plus Config-Fallback für Claude Desktop.
Customermates ist das Open-Source-KI-CRM. Einmal verbunden, liest und schreibt Ihr Coding-Agent Contacts, Deals und Notizen, ohne das Terminal zu verlassen. Alle Clients hier authentifizieren sich gleich: mit einem API-Key im x-api-key-Header gegen <BASE_URL>/api/v1/mcp, wobei <BASE_URL> die Adresse ist, unter der Sie Customermates öffnen, in der Cloud oder auf Ihrer eigenen Instanz. Die Snippets unten enthalten bereits die Adresse der Seite, auf der Sie diese Doku lesen; öffnen Sie Customermates woanders, ersetzen Sie neben YOUR_KEY auch diese Adresse.
Nutzen Sie stattdessen die App von Claude oder ChatGPT? Die verbinden sich mit dem Custom Connector (OAuth, kein Key).
API-Key anlegen
Öffnen Sie in Customermates API-Schlüssel, klicken Sie auf Hinzufügen und wählen Sie Standard-API-Key. Geben Sie ihm einen Namen, der den Client beschreibt (zum Beispiel Claude Code); ohne Datum unter Läuft ab läuft er nie ab. Der 64-Zeichen-Key wird einmal angezeigt, also sofort kopieren. Die Schnellverbindungen im selben Dialog erledigen das automatisch: Dort wird der Key nach dem Client benannt, läuft nach 365 Tagen ab und steht bereits im angezeigten Setup-Snippet; darunter steht sein Ablaufdatum.
Zum Anlegen eines Keys braucht Ihre Rolle Erstellen in der Zeile API & Webhooks, und die Seite selbst braucht Lesen Alle in dieser Zeile; die eingebaute Rolle Admin hat beides. Ein Key erbt die Berechtigungen des Users, der ihn erstellt hat; einen Scope pro Key gibt es nicht. Legen Sie pro Client einen eigenen Key an, damit Sie einen Client einzeln widerrufen können, ohne die anderen zu treffen; das Audit-Log protokolliert den User, dem ein Key gehört, nicht den Key selbst. API-Keys und MCP funktionieren in jedem Tarif und auf selbst gehosteten Instanzen. Details: API-Keys.
Claude Code
Claude Code fügt MCP-Server über sein CLI hinzu. Ein Befehl erledigt das Setup. In einem beliebigen Terminal ausführen, YOUR_KEY ersetzen:
claude mcp add --transport http customermates https://customermates.com/api/v1/mcp \
--header "x-api-key: YOUR_KEY"Kein Neustart, keine Konfigurationsdatei. Claude Code verbindet sich automatisch. Mit claude mcp list prüfen, dass customermates aufgeführt ist.
Scope: Der Befehl nutzt standardmäßig den lokalen Scope. Mit --scope user ist Customermates auf Ihrer Maschine überall verfügbar, mit --scope project landet die Konfiguration in der .mcp.json des Repos, sodass Teammitglieder sie übernehmen.
Codex
Codex verbindet sich direkt per Streamable HTTP mit Customermates. codex mcp add customermates --url <BASE_URL>/api/v1/mcp fügt die Serveradresse hinzu, aber der CLI-Befehl bietet keine Option für einen eigenen x-api-key-Header. Für den Zugriff per API-Key öffnen Sie ~/.codex/config.toml (bei Bedarf anlegen) und fügen den vollständigen Block unten ein. Ersetzen Sie YOUR_KEY:
[mcp_servers.customermates]
enabled = true
url = "https://customermates.com/api/v1/mcp"
http_headers = { "x-api-key" = "YOUR_KEY" }Um den Key aus einer Umgebungsvariable zu lesen, statt ihn in der Datei zu speichern, ersetzen Sie die http_headers-Zeile im Block oben durch:
env_http_headers = { "x-api-key" = "CUSTOMERMATES_API_KEY" }Dann CUSTOMERMATES_API_KEY im Shell-Profil exportieren. Neue Sessions erkennen den Server, also die aktuelle beenden und eine neue starten.
Derselbe HTTP-Endpunkt akzeptiert auch OAuth. Wenn Sie sich lieber anmelden möchten, fügen Sie die Adresse mit codex mcp add customermates --url <BASE_URL>/api/v1/mcp hinzu und führen anschließend codex mcp login customermates aus. Die weiter unten beschriebene stdio-Brücke ist für Claude Desktop-Clients gedacht, die sie benötigen.
Cursor
Für die Einrichtung in Cursor Settings → Tools & MCP → Add new MCP server öffnen und Folgendes einfügen, YOUR_KEY ersetzen:
{
"customermates": {
"url": "https://customermates.com/api/v1/mcp",
"headers": {
"x-api-key": "YOUR_KEY"
}
}
}Cursor lädt hot: kein Neustart nötig, die Tools erscheinen direkt im Composer. Um die Datei direkt zu bearbeiten, kommt derselbe Block in ~/.cursor/mcp.json (global) oder <project>/.cursor/mcp.json (pro Projekt), eingebettet unter mcpServers.
Gemini CLI
Die Gemini CLI lädt MCP-Server aus ~/.gemini/settings.json. Folgendes mergen, YOUR_KEY ersetzen:
{
"mcpServers": {
"customermates": {
"httpUrl": "https://customermates.com/api/v1/mcp",
"headers": {
"x-api-key": "YOUR_KEY"
}
}
}
}Falls mcpServers bereits Einträge enthält, fügen Sie customermates daneben ein, statt das Objekt zu überschreiben.
Claude Desktop (config file)
Der empfohlene Weg für Claude Desktop ist der Connector-Weg: OAuth, kein Key, über Ihre Geräte synchronisiert. Im Free-Plan, oder wenn Sie lieber einen statischen Key nutzen, funktioniert die Konfigurationsdatei unten auch.
Claude → Settings → Developer → Edit Config öffnen, oder die Datei direkt:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Diesen Block mergen, YOUR_KEY ersetzen:
{
"mcpServers": {
"customermates": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://customermates.com/api/v1/mcp",
"--header",
"x-api-key:YOUR_KEY"
]
}
}
}mcp-remote ist ein Shim, der Claude Desktop über stdio mit einem Remote-HTTP-MCP-Server sprechen lässt. Er wird beim ersten Aufruf via npx heruntergeladen, Sie brauchen also Node 18+ im PATH.
Danach neu starten: vollständig beenden (⌘Q auf macOS, nicht nur das Fenster schließen) und neu öffnen. Customermates erscheint im Tools-Panel mit den CRM-Tools.
Probieren Sie Ihren ersten Prompt
Der Server stellt beim Verbinden Anweisungen zur Tool-Oberfläche, zu Sicherheitsregeln und zum Abruf relevanter Wissensdatenbank-Seiten bereit. Der jeweilige Client entscheidet, ob er diese Anweisungen an seinen Agent weitergibt. Tut er das nicht, ergänzen Sie die Wissensdatenbank-Abrufregel in den dauerhaften Anweisungen dieses Clients. In Clients, die MCP-Prompts unterstützen (etwa Claude Code), können Sie den eingebauten get-started-Prompt für einen geführten Start nutzen: Er liest zuerst Ihren Workspace und relevante Wissensdatenbank-Seiten und fragt nur nach fehlenden Informationen.
- "Setz das Status-Feld des Acme-Deals auf 'Won' und füge eine Notiz hinzu, dass der Vertrag heute unterschrieben wurde."
- "Hol die letzten zehn Contacts, die ich angelegt habe. Welche haben keine E-Mail-Adresse?"
- "Leg einen Contact für Jane Doe bei Initech an, verknüpf ihn mit der Initech-Organisation und starte einen Deal über 12 Stunden Beratung."
Contacts, Organizations, Deals, Services und Tasks sind die anfänglichen Datensatztypen; Ihr Workspace kann weitere hinzufügen. Attribute wie die Phase eines Deals oder die Priorität einer Task hängen von der Workspace-Konfiguration ab. Rufen Sie vor dem Schreiben discover_record_types und danach get_record_model für die relevanten Typ-IDs auf.
Troubleshooting
| Client | Symptom | Ursache | Lösung |
|---|---|---|---|
| Claude Desktop | npx: command not found | Kein Node im PATH | Node 18+ von nodejs.org installieren |
| Claude Desktop | Tools-Panel nach Config-Änderung leer | Claude Desktop lädt MCP-Configs nicht hot | Vollständig beenden (⌘Q) und neu öffnen |
| Codex | TOML-Parse-Fehler | Inline-Tabellen nutzen =, nicht : | Die env_http_headers = { ... }-Zeile prüfen |
| Alle | Der Client verbindet sich nicht oder listet keine Tools; der Server antwortet mit HTTP 401 | Der Key ist falsch oder abgeschnitten, oder ein Key, der funktioniert hat, ist abgelaufen (Keys aus den Schnellverbindungen laufen nach 365 Tagen ab) oder wurde gelöscht. Der Server prüft den x-api-key-Header bei jeder Anfrage und antwortet mit 401 und einem WWW-Authenticate-Header, bevor er ein Tool listet, Doku-Abfragen eingeschlossen | Unter API-Schlüssel einen neuen Key anlegen, die vollständigen 64 Zeichen einfügen und den Client aktualisieren |
| Alle | Eine Verbindung, die funktioniert hat, scheitert jetzt mit „Your user account is inactive. Contact a workspace administrator.“ | Der Besitzer des Keys steht auf Inaktiv | Ein Mitglied mit Bearbeiten auf Benutzer & Rollen setzt ihn unter Mitglieder wieder auf Aktiv; danach funktioniert der vorhandene Key wieder |
| Alle | Verknüpfung wird abgelehnt | Eine Beziehungs-ID oder ein Endpunkt fehlt oder ist nicht zugänglich | Den Agenten bitten, get_record_model zu lesen und dann mutate_crm_record mit link oder unlink und stabilen Datensatzreferenzen zu verwenden |
Weiter
- Custom Connector: der OAuth-Weg für die Apps von Claude und ChatGPT.
- MCP-Tool-Katalog: jedes Tool, das der Agent aufrufen kann.
- Webhooks: andere Systeme über CRM-Änderungen informieren.