KI-Assistenten (MCP)
Claude, ChatGPT, eigene Chatbots und Telefon-Agenten über den MCP-Server von vynst anbinden, mit den Rechten des Benutzers und Freigaben für heikle Aktionen.
vynst (inwendo ERP) bringt einen eigenen MCP-Server (Model Context Protocol) mit. Darüber arbeiten KI-Assistenten wie Claude, ChatGPT, Mistral Le Chat, Cursor oder eigene Chatbots mit euren Daten. Ein Assistent sieht und darf dabei nie mehr als die Person, mit deren Login er arbeitet.
Endpunkte
| Adresse | Für |
|---|---|
https://eure-instanz.iw-erp.de/mcp/ |
angemeldete Benutzer: OAuth, API-Token (x-iw-jwt-token) oder Sitzung |
https://eure-instanz.iw-erp.de/mcp/public/ |
ohne Anmeldung, nur öffentliche Tools wie Veranstaltungen und News, etwa für einen Chat auf der Website |
Der Server ist zustandslos: eine JSON-RPC-Nachricht je Anfrage, keine Sitzungen, kein SSE. Er kennt server/discover, tools/list und tools/call. Titel und Beschreibungen der Tools gibt es auf Deutsch und Englisch (?lang=en).
Claude und andere Assistenten verbinden
Mit der Einstellung mcp_oauth_discovery_enabled reichen die Adresse und ein Login:
- In Claude unter Einstellungen → Connectors → Eigenen Connector hinzufügen die URL
https://eure-instanz.iw-erp.de/mcpeintragen. - Claude findet über
/.well-known/oauth-protected-resource/mcpund/.well-known/oauth-authorization-serverden Login, legt sich selbst als OAuth-Client an und leitet zur Anmeldung. - Ihr meldet euch an und bestätigt die Berechtigung. Fertig.
Erlaubte Rücksprungadressen stehen in mcp_oauth_registration_redirect_hosts (ab Werk Claude, ChatGPT, Mistral, VS Code, Cursor und der MCP-Proxy von vynst; localhost immer, etwa für Claude Code). Der Webserver muss /mcp/*, /oauth/* und /.well-known/oauth-* an vynst weiterleiten.
Mit API-Token ausprobieren
curl -s https://eure-instanz.iw-erp.de/mcp/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H 'MCP-Protocol-Version: 2026-07-28' \
-H 'Mcp-Method: tools/list' \
-H 'x-iw-jwt-token: <TOKEN>' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}}}}'
Für tools/call setzt ihr zusätzlich den Header Mcp-Name: <tool>.
Was ein Assistent sieht
Ein Tool erscheint nur, wenn vier Prüfungen passen. Sonst sieht es für den Assistenten aus wie ein unbekanntes Tool:
| Prüfung | Beispiel |
|---|---|
| Schalter der Installation | mcp_report_tools_enabled aus: keine Kennzahlen-Tools |
| Tool-Filter des API-Tokens | Token darf nur crm_search_persons und ticket_create |
| Endpunkt-Einschränkung des Tokens | Token nur für GET /api/crm/crmpeople |
| Rechte des Benutzers | ohne Leserecht Kontakte keine crm_*-Tools |
Lesen, schreiben, vorschlagen
| Art | Bedeutung | Beispiele |
|---|---|---|
| lesend | ändert nichts | crm_search_persons, report_members, event_list_upcoming |
| schreibend | ändert sofort, aber nur Interna oder eigene Daten | ticket_add_internal_note, self_service_update_person |
| Vorschlag | legt einen Antrag an; erst wenn eine Person in der Verwaltung freigibt, passiert etwas | membership_propose_cancel, notification_propose_mail, api_propose_patch |
Alles, was kündigt, abrechnet, Geld bewegt, Mitglieder anschreibt oder die Kunden-App ändert, läuft über Freigaben. Mit mcp_approval_four_eyes müssen zwei Personen zustimmen; für Beitragslauf, SEPA und Importe ist das Vier-Augen-Prinzip ab Werk an.
Über die allgemeinen api_*-Tools erreicht ein Assistent jeden REST-Endpunkt. Was er dort ändern darf, legt mcp_api_write_mode fest: approval (Standard, nur Vorschläge), off (nur lesen) oder direct (sofort).
Wichtige Einstellungen
| Einstellung | Standard | Wirkung |
|---|---|---|
mcp_server_enabled |
an | MCP-Server unter /mcp/ |
mcp_server_public_enabled |
an | anonymer Endpunkt /mcp/public/ |
mcp_oauth_discovery_enabled |
aus | Verbinden per URL und Login |
mcp_api_write_mode |
approval |
Schreiben über die API-Tools |
mcp_approval_tools_enabled |
aus | Freigabe-Queue und alle Vorschläge |
mcp_report_tools_enabled |
aus | Kennzahlen (report_*) |
mcp_approval_import_enabled |
aus | Datei-Importe per Assistent (import_*) |
mcp_app_config_tools_enabled |
aus | Kunden-App v2 konfigurieren (app_*) |
mcp_audit_log_enabled |
an | jeder tools/call landet im Audit-Log, 180 Tage |
Telefon-Assistenten
KI-Agenten am Telefon prüfen Anrufer mit caller_verify, bevor sie Auskunft geben. Zusammen mit dem allgemeinen Anruf-Webhook landet das Gespräch danach als Anruf in vynst.
Daten importieren lassen
Ein Assistent kann eine Datei für den Import vorschlagen (import_propose_file) und den Stand abfragen (import_status). Eingespielt wird erst nach Freigabe. Welche Dateien vynst versteht, steht im Guide Daten importieren.