LIFX LAN MCP
About
MCP (Model Context Protocol) server for allowing AI agents to interact with the Lifx lights on your LAN. Not officially affiliated with Lifx or Feit Electric
Explore
- List all available LIFX lights on your network
- Get the current state of lights (color, on/off, labels)
- Turn lights on/off
- Change light colors
- Local network operation (no cloud required, server must be running on the same network)
- Configurable transport (sse or stdio)
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
LIFX LAN MCPCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
- Node.js
- TypeScript
- LIFX lights on your local network
Add this, or similar, to your LLM MCP config file (ex. for Claude Desktop this is claude_desktop_config.json).
{
"mcpServers": {
"lifx-lan-mcp": {
"command": "npx",
"args": [
"-y",
"lifx-lan-mcp"
]
}
}
}
The server can be run in two modes: stdio (default) or HTTP server mode. The server supports both the 2025-03-26 and 2024-11-05 protocol versions.
lifx_lan_list_lights
List all Lifx lights currently available on the user's local area network (LAN).Each light is specified by a unique string label.Use this to get which lights the user wants to interact with, as the label is used in other tools to interact with lights.Also includes additional information about the light, such as group and location
lifx_lan_get_lights_state
Get the current state of one or more LIFX lights, including their colors, whether they're on or off, and what groups and locations they belong to (if any).
lifx_lan_set_lights_color
Set the color of one or more Lifx lights. Must specify hue, saturation, brightness, and may optionally specify kelvin temperature (otherwise 3500 is used).
lifx_lan_turn_on_lights
Turn on one or more Lifx lights, optionally at specific color.
lifx_lan_turn_off_lights
Turn off one or more Lifx lights.
- lifx_lan_list_lights
- List all Lifx lights currently available on the user's local area network (LAN)
- Each light is specified by a unique string label
- Includes additional information about the light, such as group and location
- Inputs: None required
- lifx_lan_get_lights_state
- Get the current state of one or more LIFX lights, including colors, on/off state, groups and locations
- Inputs:
- labels (string[]): Array of light labels to get state for
- lifx_lan_set_lights_color
- Set the color of one or more Lifx lights
- Inputs:
- labels (string[]): Array of light labels to set color for
- color (object): Color specification
- hue (number): Hue value (0.0-1.0)
- saturation (number): Saturation value (0.0-1.0)
- brightness (number): Brightness value (0.0-1.0)
- kelvin (number, optional): Color temperature in Kelvin (1500-9000, defaults to 3500)
- duration (number, optional): Transition duration in milliseconds
- lifx_lan_turn_on_lights
- Turn on one or more Lifx lights, optionally at specific color
- Inputs:
- labels (string[]): Array of light labels to turn on
- color (object, optional): Color specification if changing color
- hue (number, optional): Hue value (0.0-1.0)
- saturation (number, optional): Saturation value (0.0-1.0)
- brightness (number, optional): Brightness value (0.0-1.0)
- kelvin (number, optional): Color temperature in Kelvin
- duration (number, optional): Transition duration in milliseconds
- lifx_lan_turn_off_lights
- Turn off one or more Lifx lights
- Inputs:
- labels (string[]): Array of light labels to turn off
- duration (number, optional): Transition duration in milliseconds
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"lifx lan mcp": {
"lifx-lan-mcp": {
"command": "npx",
"args": [
"-y",
"lifx-lan-mcp"
]
}
}
}
}
McpServers
{
"lifx-lan-mcp": {
"command": "npx",
"args": [
"-y",
"lifx-lan-mcp"
]
}
}

A Model Context Protocol (MCP) server for allowing an LLM to control LIFX lights over your local area network (LAN), without cloud connectivity.
Note that the MCP server must be running on the same wifi network as your LIFX lights in order for the tool to work.
Features
- List all available LIFX lights on your network
- Get the current state of lights (color, on/off, labels)
- Turn lights on/off
- Change light colors
- Local network operation (no cloud required, server must be running on the same network)
- Configurable transport (sse or stdio)
Installation
NPX (configuring via local stdio) - default
Add this, or similar, to your LLM MCP config file (ex. for Claude Desktop this is claude_desktop_config.json).
{
"mcpServers": {
"lifx-lan-mcp": {
"command": "npx",
"args": [
"-y",
"lifx-lan-mcp"
]
}
}
}
Running the Server
The server can be run in two modes: stdio (default) or HTTP server mode. The server supports both the 2025-03-26 and 2024-11-05 protocol versions.
Stdio Mode (Default)
Stdio mode is the simplest way to run the server, where it communicates directly with the LLM through standard input/output. This is the default mode and requires no additional configuration. In this mode, the MCP server
is started directly by the client with which it's communicating.
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



