Coreflux MCP Server - UBOS

✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

Coreflux MQTT MCP Server

This is a Model Context Protocol (MCP) server that connects to a Coreflux MQTT broker and makes Coreflux and MQTT actions available as tools for Claude and other MCP-compatible AI assistants.

Features

  • Connects to Coreflux MQTT broker
  • Provides tools for all Coreflux commands (models, actions, rules, routes)
  • Discovers and lists available actions
  • Includes LOT language documentation as resources
  • Built with the official MCP SDK for seamless Claude integration
  • Standalone setup assistant for configuration

Setup Assistant

The server includes a standalone setup assistant that can be run separately from the main server. Run the setup assistant when:

  • You need to create an initial configuration (.env file)
  • You want to update your existing configuration
  • You’re experiencing connection issues and need to reconfigure

To run the setup assistant:

python setup_assistant.py

The setup assistant helps you:

  • Create or update the .env file with your configuration
  • Configure MQTT broker settings (host, port, credentials)
  • Set up TLS configuration if needed
  • Configure logging options

After configuration is complete, you can run the server normally.

Connecting Claude to the MCP Server

Using Claude Desktop Config

  1. Create or edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS/Linux) or %USERPROFILE%AppDataRoamingClaudeclaude_desktop_config.json (Windows)
  2. Add the following configuration (adjust the paths accordingly):
    {
      "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": {}
        }
      }
    }
    
  3. Restart Claude Desktop

Command-Line Arguments

The server accepts the following command-line arguments. These settings can also be configured via the .env file using the setup assistant:

ArgumentDescriptionDefault
--mqtt-hostMQTT broker addresslocalhost
--mqtt-portMQTT broker port1883
--mqtt-userMQTT username-
--mqtt-passwordMQTT password-
--mqtt-client-idMQTT client IDclaude-mcp-client
--mqtt-use-tlsEnable TLS for MQTT connectionfalse
--mqtt-ca-certPath to CA certificate file-
--mqtt-client-certPath to client certificate file-
--mqtt-client-keyPath to client key file-
--log-levelLogging level (DEBUG/INFO/WARNING/ERROR/CRITICAL)INFO

Available Tools

The server provides tools for common Coreflux commands:

  • add_rule: Add a new permission rule
  • remove_rule: Remove a permission rule
  • add_route: Add a new route connection
  • remove_route: Remove a route connection
  • add_model: Add a new model structure
  • remove_model: Remove a model structure
  • add_action: Add a new action event/function
  • remove_action: Remove an action event/function
  • run_action: Run an action event/function
  • remove_all_models: Remove all models
  • remove_all_actions: Remove all actions
  • remove_all_routes: Remove all routes
  • list_discovered_actions: List all discovered Coreflux actions
  • request_lot_code: Generate LOT code based on natural language prompts

Debugging and Troubleshooting

If you encounter issues:

  1. Verify your MQTT broker credentials in your Claude configuration
  2. Ensure the broker is accessible
  3. Run the setup assistant to verify or update your configuration:
    python setup_assistant.py
    
  4. Check Claude Desktop logs:
    # Check Claude's logs for errors (macOS/Linux)
    tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
    # Windows PowerShell
    Get-Content -Path "$env:USERPROFILEAppDataRoamingClaudeLogsmcp*.log" -Tail 20 -Wait
    
  5. Run the server with debug logging:
    # Direct execution with debug logging
    python server.py --mqtt-host localhost --mqtt-port 1883 --log-level DEBUG
    

References

Featured Templates

View More

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.