Serveur Coreflux MQTT MCP
Il s'agit d'un serveur MCP (Model Context Protocol) qui se connecte à un courtier Coreflux MQTT et rend les actions Coreflux et MQTT disponibles en tant qu'outils pour Claude et d'autres assistants d'intelligence artificielle compatibles MCP.
Caractéristiques
- Se connecte au courtier Coreflux MQTT
- Fournit des outils pour toutes les commandes Coreflux (modèles, actions, règles, routes)
- Découvre et liste les actions disponibles
- Inclut la documentation en langage LOT comme ressources
- Construit avec le SDK officiel MCP pour une intégration transparente avec Claude
- Assistant d'installation autonome pour la configuration
Assistant de configuration
Le serveur comprend un assistant de configuration autonome qui peut être exécuté séparément du serveur principal. Exécutez l'assistant de configuration lorsque
- Vous devez créer une configuration initiale (fichier .env)
- Vous voulez mettre à jour votre configuration existante
- Vous rencontrez des problèmes de connexion et devez reconfigurer votre serveur
Pour lancer l'assistant d'installation :
python setup_assistant.py
L'assistant d'installation vous aide à
- Créer ou mettre à jour le fichier
.env
avec votre configuration - Configurer les paramètres du broker MQTT (hôte, port, identifiants)
- Configurer TLS si nécessaire
- Configurer les options de journalisation
Une fois la configuration terminée, vous pouvez exécuter le serveur normalement.
Connexion de Claude au serveur MCP
Utilisation de Claude Desktop Config
- Créez ou éditez
~/Bibliothèque/Application Support/Claude/claude_desktop_config.json
(macOS/Linux) ou%USERPROFILE%\AppData\Roaming\Claude\claude_desktop_config.json
(Windows) - Ajoutez la configuration suivante (ajustez les chemins en conséquence) :
{ "mcpServers" : { "coreflux" : { "command" : "python", "args" : ["/PATH/TO/server.py", "--mqtt-host", "localhost", "--mqtt-port", "1883", "--mqtt-user", "root", "--mqtt-password", "coreflux", "--mqtt-client-id", "claude-coreflux-client" ], "description" : "Coreflux MQTT Broker Control", "icon" : "🔄", "env" :
{} } } }
- Redémarrer Claude Desktop
Arguments de la ligne de commande
Le serveur accepte les arguments de ligne de commande suivants. Ces paramètres peuvent également être configurés via le fichier .env
à l'aide de l'assistant d'installation :
Argument | Argument Description | Défaut |
---|---|---|
--mqtt-host | Adresse du courtier MQTT | localhost |
--mqtt-port | Port du courtier MQTT | 1883 |
--mqtt-user | Nom d'utilisateur MQTT | - |
--mqtt-password | Mot de passe MQTT | - |
--mqtt-client-id | ID du client MQTT | claude-mcp-client |
--mqtt-use-tls | Activer TLS pour la connexion MQTT | faux |
--mqtt-ca-cert | Chemin d'accès au fichier de certificat CA | - |
--mqtt-client-cert | Chemin d'accès au fichier de certificat du client | - |
--mqtt-client-key | Chemin d'accès au fichier de clé du client | - |
--log-level | Niveau de journalisation (DEBUG/INFO/WARNING/ERROR/CRITICAL) | INFO |
Outils disponibles
Le serveur fournit des outils pour les commandes Coreflux courantes :
add_rule
: Ajouter une nouvelle règle de permissionremove_rule
: Supprimer une règle de permissionadd_route
: Ajouter une nouvelle connexion d'itinéraireremove_route
: Supprimer une connexion d'itinéraireadd_model
: Ajouter une nouvelle structure de modèleremove_model
: Supprime une structure de modèleadd_action
: Ajouter un nouvel événement/fonction d'actionremove_action
: Suppression d'un événement/fonction d'actionrun_action
: Exécuter un événement/fonction d'actionremove_all_models
: Supprime tous les modèlesremove_all_actions
: Supprime toutes les actionsremove_all_routes
: Supprime tous les itinéraireslist_discovered_actions
: Liste de toutes les actions Coreflux découvertesrequest_lot_code
: Génère un code LOT basé sur des invites en langage naturel
Débogage et dépannage
Si vous rencontrez des problèmes :
- Vérifiez les informations d'identification du courtier MQTT dans la configuration de Claude
- Assurez-vous que le courtier est accessible
- Exécutez l'assistant d'installation pour vérifier ou mettre à jour votre configuration :
python setup_assistant.py
- Vérifier les journaux de Claude :
# Vérifier les journaux de Claude pour les erreurs (macOS/Linux) tail -n 20 -f ~/Library/Logs/Claude/mcp*.log # Windows PowerShell Get-Content -Path "$env:USERPROFILE\Data\Roaming\Claude\Logs\mcp*.log" -Tail 20 -Wait
- Exécuter le serveur avec la journalisation de débogage :
# Exécution directe avec la journalisation de débogage python server.py --mqtt-host localhost --mqtt-port 1883 --log-level DEBUG