Aller au contenu principal

Architecture Chatbotaurus

Chatbotaurus est une plateforme MGaaS (MCP Gateway as a Service) 100% souveraine europeenne. Elle combine un agent IA conversationnel, un gateway MCP avec 40+ connecteurs, et une infrastructure EU complete.

Composants Principaux

Chatbotaurus fonctionne avec quatre composants principaux : le frontend, le backend, le MCP Gateway et l'infrastructure EU.

  • Frontend : Application Next.js 16 avec React 19 et shadcn/ui. Interface chat moderne avec composants dynamiques, workflows visuels et dashboard d'administration.

  • Backend : Serveur Node.js/Express en TypeScript. Gere l'authentification (Keycloak SSO), les workflows, la memoire contextuelle et l'orchestration des agents IA.

  • MCP Gateway : Passerelle MCP utilisant le transport Streamable HTTP (spec 2025-03-26). Expose 40+ connecteurs vers des services EU (Odoo, n8n, Matomo, etc.) via le protocole JSON-RPC 2.0.

  • Infrastructure EU : 23 conteneurs Podman sur VPS1 (Core) + services metier sur VPS2 (Demo). PostgreSQL, Qdrant, Valkey, Ollama, Keycloak, Vault, Traefik, etc.

Architecture 4 Couches PODIUM

COUCHE 1: Reasoning Engine
ToTLiteEngine, SelfConsistencyEngine, ChainOfVerification, MCTSLite

COUCHE 2: Agent Orchestration
AgentGatewayMGaaS, MoELiteRouter, TaskDecomposer, AgentMCPRegistry

COUCHE 3: Tool Intelligence
RAREngine, DynamicToolPruner, ToolPatternMemory

COUCHE 4: Execution & Validation
SpeculativeDecoder, ParallelStreamingExecutor, GroundingEngine

Transport MCP : Streamable HTTP

Le MCP Gateway utilise le transport Streamable HTTP conforme a la spec MCP 2025-03-26 :

POST /api/v1/mcp          -> JSON-RPC 2.0 (initialize, tools/list, tools/call)
GET /api/v1/mcp -> SSE stream notifications (optionnel)
DELETE /api/v1/mcp -> Terminer session
GET /api/v1/mcp/catalog -> Catalogue REST public

Les sessions sont gerees via le header Mcp-Session-Id avec un TTL de 30 minutes. Le batching supporte jusqu'a 50 requetes JSON-RPC par batch.

Catalogue Business

Le catalogue business expose les serveurs MCP deployables :

GET  /api/v1/mcp/catalog-business              -> Liste serveurs
GET /api/v1/mcp/catalog-business/stats -> Statistiques
GET /api/v1/mcp/catalog-business/:id -> Detail serveur
POST /api/v1/mcp/catalog-business/:id/deploy -> Deploiement one-click
GET /api/v1/mcp/catalog-business/:id/status -> Statut conteneur
GET /api/v1/mcp/catalog-business/:id/security -> Rapport Trivy + SBOM

Connecteurs MCP

Chatbotaurus fournit 40+ connecteurs MCP organises en categories :

CategorieExemplesProtocole
ERP/CRMOdoo, DolibarrXML-RPC, REST
Workflowsn8nREST API
AnalyticsMatomoREST API
CollaborationNextcloud, Rocket.Chat, JitsiWebDAV, REST
Recherche EUOpenAlex, CORDIS, EurostatREST API
SecuriteVault, Keycloak, WazuhREST API

Modeles IA

ModeleRoleRAM
qwen3:8bRaisonnement principal (ToT, MCTS, CoV)~8 Go
tomng/nanbeige4.1:3bChat rapide, tool calling, draft~4.2 Go
qwen3-embedding:0.6bEmbeddings (1024 dimensions)~300 Mo

Tous les modeles sont executes localement via Ollama. Aucun appel vers des services IA US.

Gestion des Erreurs

Chatbotaurus capture et gere les erreurs a chaque niveau :

  • Erreurs de transport MCP (JSON-RPC invalide, session expiree)
  • Erreurs de connecteurs (timeout, authentification, service indisponible)
  • Erreurs d'inference IA (hallucination detectee, timeout modele)
  • Degradation gracieuse sur 5 niveaux (FULL -> TEMPLATE_ONLY)

Pour plus de details, voir le guide Gestion des Erreurs.