🗄️ Configuration Base de Données MySQL MCP

Guide complet pour intégrer des bases de données MySQL/MariaDB avec AI4CALL : connectez des bases de données d'entreprise, créez des requêtes SQL personnalisées comme outils MCP, permettez à l'assistant de lire/écrire des données en temps réel pendant les appels

AI4CALL - Configuration MCP Connecteur de Base de Données

Allez dans "MARKET""Marketplace Plugin" et cliquez sur Acheter pour "Database Connector"GRATUIT

Allez dans "MARKET""Mes Plugins" et cliquez sur Configurer pour "Database Connector"

⚠️ Services de tiers

Les intégrations décrites font référence à des services de tiers.
Les limites de débit, les modes d'authentification, les configurations techniques, les coûts et les politiques sont définis exclusivement par les fournisseurs respectifs et peuvent changer au fil du temps.

Les coûts des services externes sont supportés directement par l'utilisateur final auprès des fournisseurs des services eux-mêmes et ne sont en aucun cas gérés ou intermédiés par notre portail (par exemple, Meta ou d'autres fournisseurs pour WhatsApp, Zapier, Calendly, etc.).

⚠️ IMPORTANT - Sécurité Base de Données
Le plugin Database Connector permet d'exécuter des requêtes SQL directement sur votre base de données. Pour des raisons de sécurité : 1) Configurez toujours les connexions avec des utilisateurs DB ayant des permissions limitées aux seules opérations nécessaires 2) Testez les requêtes en environnement de développement avant de les utiliser en production 3) N'utilisez pas les identifiants d'administrateur de la base de données 4) Surveillez régulièrement les logs des requêtes exécutées

1

Que sont les Database MCP et comment ils fonctionnent

Database MCP est un plugin AI4CALL qui transforme vos requêtes SQL en outils que l'assistant peut utiliser pendant les appels en temps réel. Il permet à l'IA d'accéder à vos données d'entreprise sans besoin d'export/import manuels.

Fonctionnalités MCP Database :
  • Connexion en temps réel : L'assistant accède à la base de données pendant l'appel
  • Requêtes paramétriques : Créez des requêtes qui acceptent des paramètres (ex. ID client, plage de dates)
  • Sécurité intégrée : Chaque requête a son propre contexte de permissions
  • Journalisation complète : Toutes les opérations sont tracées et enregistrées
  • Support multiple : MySQL, MariaDB, PostgreSQL, SQL Server
💡 Quand utiliser Database MCP
  • Clients : Vérifier la disponibilité d'un produit, les prix, les échéances
  • Support : Consulter l'historique des tickets, contrats actifs
  • Ventes : Contrôler l'inventaire, les prix promotionnels
  • Administration : Vérifier les factures, paiements, échéances
  • Projets : Consulter les délais, ressources assignées
🔒 Considérations sur la Sécurité
  • Bonnes Pratiques : Créez un utilisateur DB dédié avec des permissions spécifiques
  • Requêtes Sûres : Utilisez toujours des prepared statements pour les paramètres
  • Accès Limité : Accordez uniquement SELECT sur les tables nécessaires
  • À Éviter : Permissions DROP, DELETE, TRUNCATE
  • À Éviter : Requêtes qui acceptent un input SQL direct
2

Configurez la connexion à la base de données

Avant de créer des requêtes, vous devez configurer la connexion à votre base de données. Assurez-vous d'avoir à disposition : hôte, nom de la base de données, nom d'utilisateur, mot de passe et port.

Procédure de connexion :
  1. Allez dans "MARKET""Mes Plugins"
  2. Cliquez "Configurer" sur "Database Connector"
  3. Insérez les données de connexion :
    • Type DB : MySQL / MariaDB
    • Hôte : adresse du serveur (ex : localhost ou IP)
    • Port : 3306 (default MySQL)
    • Base de données : nom de la base de données
    • Nom d'utilisateur : utilisateur avec permissions
    • Mot de passe : mot de passe de l'utilisateur
  4. Cliquez "Tester la Connexion"
  5. Si tout est ok, cliquez "Sauvegarder la Configuration"
Connexion Réussie
Si le test affiche "Connexion établie avec succès", cela signifie qu'AI4CALL peut communiquer avec votre base de données. Une liste des tables disponibles sera affichée, confirmant que les permissions sont configurées correctement.
🔍 Résolution des Problèmes de Connexion
  • Erreur "Hôte inaccessible" : Vérifiez que le serveur DB soit en ligne et accessible depuis le réseau d'AI4CALL
  • Erreur "Accès refusé" : Contrôlez le nom d'utilisateur/mot de passe et les permissions de l'utilisateur
  • Erreur "Base de données non trouvée" : Vérifiez que la base de données existe et soit correctement écrite
  • Firewall/Port bloqué : Assurez-vous que le port 3306 soit ouvert sur le serveur
  • Connexion distante : Pour les serveurs distants, vérifiez que l'hôte permette les connexions depuis des IP externes
Configuration connexion base de données AI4CALL
Configuration de la connexion : insérez hôte, base de données, utilisateur et mot de passe
Test connexion base de données réussi
Test de connexion positif : les tables de la base de données sont visibles et sélectionnables
3

Créez des requêtes SQL personnalisées

Maintenant vous pouvez créer les requêtes SQL que l'assistant utilisera comme outils. Chaque requête peut avoir des paramètres dynamiques que l'IA complétera pendant l'appel.

Création de requête :
  1. Dans la configuration du plugin, allez à la section "Requêtes SQL"
  2. Cliquez "Nouvelle Requête"
  3. Configurez la requête :
    • Nom de la Requête : Nom descriptif (ex : "Rechercher Client par Email")
    • Description : Explique ce que fait la requête à l'assistant
    • Requête SQL : Le code SQL avec d'éventuels paramètres {param}
    • Paramètres : Définissez le nom et le type de chaque paramètre
    • Tables impliquées : Sélectionnez les tables utilisées
  4. Utilisez "Aperçu des Résultats" pour tester
  5. Cliquez "Sauvegarder la Requête"
💡 Exemples de Requêtes Utiles
Exemple 1 - Recherche client :
SELECT * FROM clients WHERE email = {email_client}

Exemple 2 - Commandes récentes :
SELECT * FROM commandes WHERE client_id = {id_client} AND date > DATE_SUB(NOW(), INTERVAL 30 DAY)

Exemple 3 - Disponibilité produit :
SELECT nom, quantite FROM produits WHERE id = {id_produit} AND quantite > 0

Exemple 4 - Factures à échéance :
SELECT * FROM factures WHERE client_id = {id_client} AND payee = 0 AND echeance BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 7 DAY)
⚠️ Sécurité des Requêtes
  • Utilisez toujours des paramètres : Ne concaténez jamais directement des valeurs dans les requêtes
  • Limitez les résultats : Ajoutez toujours LIMIT aux requêtes qui pourraient retourner beaucoup d'enregistrements
  • Spécifiez les colonnes : Évitez SELECT * quand c'est possible, listez uniquement les colonnes nécessaires
  • Testez avec des données réelles : Vérifiez que la requête fonctionne avec différentes valeurs de paramètres
  • Considérez les performances : Les requêtes complexes pourraient ralentir la base de données pendant les appels
Création requête SQL avec paramètres
Création d'une requête paramétrique : définissez nom, description, SQL et paramètres
4

Activez les requêtes comme outils MCP

Après avoir créé et testé les requêtes, vous devez les activer comme outils MCP afin que l'assistant puisse les utiliser pendant les appels.

Procédure d'activation :
  1. Dans la liste des requêtes, trouvez celle que vous voulez activer
  2. Activez l'interrupteur "Activer comme Outil MCP"
  3. Configurez les options de l'outil :
    • Visibilité : Choisissez dans quels assistants il sera disponible
    • Priorité : Définissez quand l'assistant devrait utiliser cet outil
    • Description MCP : Comment l'outil est présenté à l'IA
  4. Cliquez "Sauvegarder les Paramètres de l'Outil"
  5. Répétez pour toutes les requêtes que vous voulez rendre disponibles
Outil Activé avec Succès
Une fois activé, l'outil apparaîtra dans la liste des outils MCP disponibles pour l'assistant. L'IA sera capable de reconnaître quand l'utiliser en se basant sur la description que vous avez fournie et sur le contexte de la conversation.
💡 Quand l'Assistant Utilise les Outils
L'assistant décide de manière autonome quand utiliser un outil MCP en se basant sur :

1. Contexte de la conversation : Si vous parlez de clients, commandes, produits, etc.
2. Questions spécifiques : "Quel est l'état de ma commande ?", "Ai-je des factures à échéance ?"
3. Paramètres manquants : L'IA demandera les paramètres nécessaires (ex : "J'ai besoin de l'email du client")
4. Description de l'outil : À quel point vous avez décrit précisément l'objectif de la requête
Activation requête comme outil MCP
Activation de l'outil : activez l'interrupteur et configurez visibilité et priorité
5

Instruisez l'assistant sur l'utilisation des outils

La dernière étape consiste à instruire l'assistant sur quand et comment utiliser les outils base de données que vous avez configurés. Vous pouvez le faire via les instructions système et des exemples de conversation.

📝 Workflows et Exemples
Exemple d'Instructions Système :
"Si l'utilisateur demande des informations sur des clients, commandes, produits ou factures, utilisez les outils MCP base de données pour récupérer des informations mises à jour. Demandez les paramètres nécessaires (ex : email, ID, nom) s'ils ne sont pas fournis."

Exemple de Conversation :
Utilisateur : "Je voudrais connaître l'état de ma commande récente"
IA : "Certainement ! Pour récupérer vos commandes récentes, j'ai besoin de votre email. Pouvez-vous me la fournir ?"
Utilisateur : "mario.rossi@email.com"
IA : [Utilise l'outil "Rechercher Commandes par Email" avec le paramètre email_client="mario.rossi@email.com"]
IA : "J'ai trouvé 2 commandes récentes : ..."
🧪 Test Complet du Flux
Pour tester que tout fonctionne :

1. Lancez un appel de test avec l'assistant
2. Demandez des informations qui devraient activer un outil base de données
3. Vérifiez que l'IA :
- Reconnaisse la nécessité d'utiliser l'outil
- Demande les paramètres manquants si nécessaire
- Exécute correctement la requête
- Présente les résultats de manière compréhensible
4. Consultez les logs dans le plugin pour voir la requête exécutée
5. Vérifiez que les données soient correctes et à jour

❓ Questions Fréquentes Database MCP

Réponses aux questions les plus courantes sur la configuration et l'utilisation du Connecteur de Base de Données MCP

Actuellement, le plugin supporte une connexion à une base de données par instance. Si vous avez besoin d'accéder à plusieurs bases de données, vous pouvez : 1) Utiliser une base de données centrale qui réplique les données nécessaires, 2) Créer des vues qui unissent des données de plusieurs bases de données, 3) Configurer plusieurs instances d'AI4CALL avec des connexions différentes.

Oui, les requêtes sont exécutées en temps réel quand l'assistant décide d'utiliser l'outil. La réponse de la base de données est incorporée dans la réponse de l'IA presque instantanément, typiquement en moins de 2-3 secondes.

Si la base de données n'est pas joignable, l'assistant recevra une erreur de connexion et informera l'utilisateur qu'il ne peut pas récupérer les données pour le moment. L'appel continuera normalement pour les autres fonctionnalités.

Oui, mais avec une extrême prudence. Nous recommandons de : 1) Utiliser des utilisateurs DB avec les permissions minimales nécessaires, 2) Ajouter des confirmations avant les opérations destructrices, 3) Mettre en œuvre des sauvegardes automatiques, 4) Tester minutieusement en environnement de développement.

Il n'y a pas de limite physique au nombre de requêtes, mais pour des performances optimales nous recommandons : 1) Maximum 20-30 requêtes actives simultanément, 2) Regrouper les requêtes similaires en une seule paramétrique, 3) Désactiver les requêtes non utilisées fréquemment.

Oui, le plugin supporte toute base de données MySQL/MariaDB compatible, incluant les services cloud. Configuration typique : 1) Utilisez l'endpoint fourni par le cloud comme hôte, 2) Configurez le security group pour permettre l'IP d'AI4CALL, 3) Utilisez SSL si requis.

Si vous modifiez des tables/colonnes : 1) Mettez à jour les requêtes qui utilisent ces tables, 2) Testez toutes les requêtes modifiées, 3) Communiquez les changements aux utilisateurs s'ils affectent les résultats, 4) Considérez la rétrocompatibilité (ex : nouvelles colonnes optionnelles).

Oui, en utilisant des conditions SQL : WHERE (email = {email} OR {email} IS NULL). L'assistant cherchera quand même à fournir tous les paramètres définis. Pour des paramètres vraiment optionnels, créez des requêtes séparées avec et sans ce paramètre.


Quelques utilisateurs d'ai4call