feat: MCP Server plugin (Task 5.16) - expose LeoCRM tools to external AI clients
- New plugin app/plugins/builtins/mcp_server/ with 9 MCP tools
- Tools: search_contacts, get_contact, create_contact, list_calendar_entries,
create_calendar_entry, list_emails, send_email, list_files, upload_file
- Routes: GET /api/v1/mcp/tools, POST /api/v1/mcp/tools/{name}/execute, GET /api/v1/mcp/config
- API-token auth via session + RBAC (mcp:read, mcp:write)
- Frontend: mcp.ts API client with React Query hooks
- Frontend: SettingsMcp.tsx settings page with tool listing and execution
- i18n: de.json and en.json updated with MCP entries
- Tests: 7 tests covering tool listing, config, execution, auth, schema validation
This commit is contained in:
@@ -16,7 +16,8 @@
|
||||
"users": "Benutzer",
|
||||
"auditLog": "Audit-Log",
|
||||
"settings": "Einstellungen",
|
||||
"aiAssistant": "KI Assistent"
|
||||
"aiAssistant": "KI Assistent",
|
||||
"mcpSettings": "MCP Einstellungen"
|
||||
},
|
||||
"auth": {
|
||||
"login": "Anmelden",
|
||||
@@ -284,7 +285,8 @@
|
||||
"livePreview": "Live-Vorschau",
|
||||
"livePreviewDescription": "So sieht die Anwendung mit dem aktuellen Theme aus",
|
||||
"resetTheme": "Zurücksetzen",
|
||||
"saveTheme": "Theme speichern"
|
||||
"saveTheme": "Theme speichern",
|
||||
"mcp": "MCP"
|
||||
},
|
||||
"auditLog": {
|
||||
"title": "Audit-Log",
|
||||
@@ -918,5 +920,52 @@
|
||||
"tab": "Tab wechseln",
|
||||
"settings": "Einstellungen ändern"
|
||||
}
|
||||
},
|
||||
"mcp": {
|
||||
"title": "MCP Server & Client",
|
||||
"server": {
|
||||
"title": "MCP Server",
|
||||
"description": "LeoCRM als MCP-Server für externe KI-Clients",
|
||||
"tools": "Verfügbare Tools",
|
||||
"toolCount": "Anzahl Tools",
|
||||
"toolName": "Tool",
|
||||
"toolDescription": "Beschreibung",
|
||||
"toolCategory": "Kategorie",
|
||||
"toolPermission": "Berechtigung",
|
||||
"execute": "Ausführen",
|
||||
"executeTool": "Tool ausführen",
|
||||
"arguments": "Argumente (JSON)",
|
||||
"result": "Ergebnis",
|
||||
"error": "Fehler",
|
||||
"success": "Erfolgreich",
|
||||
"config": "Server-Konfiguration",
|
||||
"serverName": "Server-Name",
|
||||
"serverVersion": "Version",
|
||||
"protocolVersion": "Protokoll-Version",
|
||||
"authMethod": "Authentifizierung",
|
||||
"availableTools": "Verfügbare Tools",
|
||||
"noTools": "Keine Tools verfügbar"
|
||||
},
|
||||
"client": {
|
||||
"title": "MCP Client",
|
||||
"description": "Beschreibung",
|
||||
"servers": "Server-Konfigurationen",
|
||||
"addServer": "Server hinzufügen",
|
||||
"editServer": "Server bearbeiten",
|
||||
"deleteServer": "Server löschen",
|
||||
"serverName": "Name",
|
||||
"serverUrl": "URL",
|
||||
"apiToken": "API-Token",
|
||||
"enabled": "Aktiviert",
|
||||
"lastConnected": "Zuletzt verbunden",
|
||||
"noServers": "Keine Server konfiguriert",
|
||||
"deleteConfirm": "Möchten Sie diesen Server wirklich löschen?",
|
||||
"serverCreated": "Server erfolgreich erstellt.",
|
||||
"serverUpdated": "Server erfolgreich aktualisiert.",
|
||||
"serverDeleted": "Server erfolgreich gelöscht.",
|
||||
"viewTools": "Tools anzeigen",
|
||||
"tools": "Tools",
|
||||
"noTools": "Keine Tools verfügbar"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user