Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp-light-control

MCP.Pizza Chef: ykhli

The mcp-light-control is an MCP server that enables control of Philips Hue smart lights, including the unique ability to send Morse code messages through light signals. It integrates with platforms like Cursor and Claude Desktop, allowing users to automate light-based notifications and interactions. This server leverages the Philips Hue API to provide real-time, programmable light control for enhanced ambient communication and task signaling.

Use This MCP server To

Send Morse code notifications via Philips Hue lights Automate light signals for task completion alerts Integrate light control with Cursor or Claude Desktop agents Use Philips Hue lights for ambient messaging Trigger light-based alerts from automated workflows

README

Morse Code Light MCP Server (Philips Hue) 💡

This MCP server allows Cursor or Claude Desktop to control Philips Hue lights and send messages through them using Morse code.

💡Example use case💡: tell Cursor agent to send a Morse code message to you when it's done with a task.

Demo

https://www.youtube.com/watch?v=GM1l98TtZmk

Cursor agent sends Morse code through my lamp

Built with:

Setup

Prerequisites

  • Philips Hue bridge and lights
  • Hue bridge username (API key)
  • Node.js (v14 or higher)
  • Cursor or Claude Desktop

Local API Setup

  1. Clone this repository locally.

  2. Obtain your Philips Hue bridge IP address and username. If you don't have one, run the discovery script:

    node build/discover-bridge.js

    Follow the prompts to press the link button on your Hue bridge and receive your API key.

  3. Run npm install followed by npm run build in the project directory. This will generate the MCP server script in the /build directory.

  4. Add the following MCP configuration. In Cursor it's under Settings -> MCP -> Add new MCP server. In Claude Desktop it's under Settings -> MCP -> Add new MCP server.

{
  "mcpServers": {
    "control_lights": {
      "command": "node",
      "args": ["ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js"],
      "env": {
        "HUE_USERNAME": "YOUR_HUE_USERNAME",
        "BRIDGE_IP": "YOUR_BRIDGE_IP"
      }
    }
  }
}

Remote API Setup

This project supports controlling your Philips Hue lights remotely (from outside your local network) using the Hue Remote API. This enables you to control your lights from anywhere with an internet connection.

Getting Remote API Credentials

  1. Create a Hue Developer Account:

  2. Create a Remote Hue API App:

    • Go to https://developers.meethue.com/my-apps/
    • Create a new app with these details:
      • App name: Choose a name for your app
      • Callback URL: Use http://localhost/ for simple testing
      • Application description: Brief description of your app
    • After creating the app, you'll receive:
      • Client ID
      • Client Secret
  3. Get Access and Refresh Tokens:

    a. Construct an authorization URL and open it in your browser:

    https://api.meethue.com/oauth2/auth?clientid=YOUR_CLIENT_ID&response_type=code&state=anystring&appid=YOUR_APP_NAME&deviceid=test-device&devicename=TestDevice
    

    Replace YOUR_CLIENT_ID and YOUR_APP_NAME with your values.

    b. Log in with your Hue developer account and authorize the app.

    c. You'll be redirected to your callback URL with a code parameter.

    d. Extract the code from the URL (e.g., ?code=abcd1234&state=anystring).

    e. Exchange the code for tokens using cURL or Postman:

    curl -X POST https://api.meethue.com/oauth2/token \
      -d "code=YOUR_AUTHORIZATION_CODE&grant_type=authorization_code" \
      -u "YOUR_CLIENT_ID:YOUR_CLIENT_SECRET"

    f. The response will contain:

    {
      "access_token": "YOUR_ACCESS_TOKEN",
      "refresh_token": "YOUR_REFRESH_TOKEN",
      "token_type": "bearer",
      "expires_in": 604800
    }

    Store these tokens securely. The access token is valid for approximately 7 days, and the refresh token for approximately 100 days.

Add this to your MCP configuration:

{
  "mcpServers": {
    "control_lights": {
      "command": "node",
      "args": ["ABSOLUTE_PATH_TO_MCP_SERVER/build/index.js"],
      "env": {
        "USE_REMOTE": "true",
        "REMOTE_CLIENT_ID": "YOUR_CLIENT_ID",
        "REMOTE_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
        "REMOTE_ACCESS_TOKEN": "YOUR_ACCESS_TOKEN",
        "REMOTE_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN"
      }
    }
  }
}

Available Tools

control_lights

Turn specific or all Philips Hue lights on or off.

Parameters:

  • state (boolean): True to turn lights on, false to turn them off
  • specific_lights (array of strings, optional): List of specific light IDs to control

get_lights_info

Retrieve information about all available Philips Hue lights.

Parameters: None

send_morse_code_through_light

Send a message through Philips Hue lights using Morse code.

Parameters:

  • message (string): The message to send through the lights
  • speed_multiplier (number, optional): Speed multiplier for the Morse code (0.1 to 5, default 1)
  • restore_state (boolean, optional): Whether to restore lights to their original state after sending

Development

npm install
npm run build

mcp-light-control FAQ

How do I set up the mcp-light-control server?
Clone the repository, install Node.js v14+, obtain your Philips Hue bridge IP and username, then run the discovery script to connect your lights.
What hardware do I need to use this MCP server?
You need a Philips Hue bridge and compatible Philips Hue lights to control via this server.
Can I send custom Morse code messages through the lights?
Yes, the server supports sending arbitrary Morse code messages through your Philips Hue lights.
Which platforms can integrate with this MCP server?
It integrates with Cursor and Claude Desktop, enabling AI agents to control your Philips Hue lights.
Is this MCP server compatible with other smart light brands?
No, it is specifically designed for Philips Hue lights using the Philips Hue API.
What Node.js version is required?
Node.js version 14 or higher is required to run this MCP server.
Can this server be used for real-time notifications?
Yes, it can send real-time Morse code light signals as notifications or alerts.
Is the source code available for customization?
Yes, the source code is open on GitHub for modification and extension.