Servidor MCP MQTT de Coreflux
Se trata de un servidor de Protocolo de Contexto de Modelo (MCP) que se conecta a un broker MQTT de Coreflux y hace que las acciones de Coreflux y MQTT estén disponibles como herramientas para Claude y otros asistentes de IA compatibles con MCP.
Características
- Se conecta al broker MQTT de Coreflux
- Proporciona herramientas para todos los comandos Coreflux (modelos, acciones, reglas, rutas)
- Descubre y enumera las acciones disponibles
- Incluye documentación en lenguaje LOT como recursos
- Construido con el SDK oficial de MCP para una integración perfecta con Claude
- Asistente de instalación independiente para la configuración
Asistente de configuración
El servidor incluye un asistente de configuración independiente que puede ejecutarse por separado del servidor principal. Ejecute el asistente de configuración cuando:
- Necesites crear una configuración inicial (archivo .env)
- Desea actualizar la configuración existente
- Tenga problemas de conexión y necesite reconfigurar el servidor
Para ejecutar el asistente de configuración
python setup_assistant.py
El asistente de configuración te ayuda a
- Crear o actualizar el archivo
.env
con su configuración - Configurar los ajustes del broker MQTT (host, puerto, credenciales)
- Configurar TLS si es necesario
- Configurar las opciones de registro
Una vez finalizada la configuración, puede ejecutar el servidor normalmente.
Conexión de Claude al servidor MCP
Usando Claude Desktop Config
- Cree o edite
~/Library/Application
Support/Claude/claude_desktop_config
.json
(macOS/Linux) o%USERPROFILE%\AppData\Roaming\Claude\claude_desktop_config.json
(Windows) - Añada la siguiente configuración (ajuste las rutas en consecuencia):
{ "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":
{} } } }
- Reiniciar Claude Desktop
Argumentos de la línea de comandos
El servidor acepta los siguientes argumentos de línea de comandos. Estos parámetros también pueden configurarse a través del archivo .env
utilizando el asistente de configuración:
Argumento | Descripción | Predeterminado |
---|---|---|
--mqtt-host | Dirección del broker MQTT | localhost |
--puerto-mqtt | Puerto del agente MQTT | 1883 |
--usuario-mqtt | Nombre de usuario MQTT | - |
--contraseña-mqtt | Contraseña MQTT | - |
--mqtt-client-id | ID de cliente MQTT | claude-mcp-client |
--mqtt-use-tls | Habilitar TLS para la conexión MQTT | false |
--mqtt-ca-cert | Ruta al archivo de certificado CA | - |
--mqtt-client-cert | Ruta al archivo de certificado del cliente | - |
--mqtt-client-key | Ruta al archivo de claves del cliente | - |
--Nivel de registro | Nivel de registro (DEBUG/INFO/WARNING/ERROR/CRITICAL) | INFO |
Herramientas disponibles
El servidor proporciona herramientas para los comandos comunes de Coreflux:
add_rule
: Añadir una nueva regla de permisosremove_rule
: Eliminar una regla de permisoadd_route
: Añadir una nueva conexión de rutaremove_route
: Eliminar una conexión de rutaadd_model
: Añadir una nueva estructura de modeloremove_model
: Eliminar una estructura de modeloadd_action
: Añadir un nuevo evento/función de acciónremove_action
: Eliminar un evento/función de acciónrun_action
: Ejecutar un evento/función de acciónremove_all_models
: Eliminar todos los modelosremove_all_actions
: Eliminar todas las accionesremove_all_routes
: Eliminar todas las rutaslist_discovered_actions
: Lista todas las acciones Coreflux descubiertasrequest_lot_code
: Generar código LOT basado en peticiones en lenguaje natural
Depuración y resolución de problemas
Si encuentra problemas:
- Compruebe las credenciales del agente MQTT en la configuración de Claude
- Asegúrese de que el broker es accesible
- Ejecute el asistente de configuración para verificar o actualizar su configuración:
python setup_assistant.py
- Compruebe los registros de escritorio de Claude:
# Compruebe si hay errores en los registros de Claude (macOS/Linux) tail -n 20 -f ~/Library/Logs/Claude/mcp*.log # Windows PowerShell Get-Content -Path "$env:USERPROFILE\AppData\Roaming\ClaudeLogs\mcp*.log" -Tail 20 -Wait
el servidorEjecutar
con registro de depuración:
# Ejecución directa con registro de depuración python server.py --mqtt-host localhost --mqtt-port 1883 --log-level DEBUG