LIFX
Control LIFX smart lights through the LIFX HTTP API.
LIFX MCP Server
A Model Context Protocol (MCP) server that provides tools for controlling LIFX smart lights through the LIFX HTTP API.
Features
This MCP server exposes the following LIFX API functionality as tools:
- š list_lights - Get all lights or filter by selector
- ā” set_state - Control power, color, brightness of lights
- š toggle_power - Toggle lights on/off
- š« breathe_effect - Create breathing light effects
- š« pulse_effect - Create pulsing light effects
- š¬ list_scenes - List all saved scenes
- ā¶ļø activate_scene - Activate a specific scene
- ā validate_color - Validate color string formats
- ā¹ļø effects_off - Turn off any running effects
Prerequisites
- LIFX API Token: Get your token from LIFX Cloud Settings
- Node.js: Version 16 or higher
- MCP Client: Such as Claude Desktop or any MCP-compatible client
Installation
- Clone this repository:
git clone https://github.com/lenvolk/mcp-lifx.git
cd mcp-lifx
- Install dependencies:
npm install
- Build the project:
npm run build
Usage
With Claude Desktop
Add this server to your Claude Desktop configuration file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"lifx": {
"command": "node",
"args": ["C:/path/to/mcp-lifx/build/index.js"],
"env": {}
}
}
}
Direct Usage
You can also run the server directly:
npm start
Example Usage
Once connected to an MCP client, you can use commands like:
- "List all my LIFX lights"
- "Turn on the kitchen lights"
- "Set living room lights to blue"
- "Start a breathe effect on all lights with red color"
- "Show me all my saved scenes"
- "Activate the movie night scene"
LIFX Selectors
Use selectors to target specific lights:
all
- All lightslabel:Kitchen
- Lights labeled "Kitchen"group:Living Room
- Lights in "Living Room" grouplocation:Home
- Lights at "Home" locationid:d073d5000000
- Specific light by ID
Color Formats
The server supports various color formats:
- Named colors:
red
,blue
,green
,purple
, etc. - RGB:
rgb:255,0,0
(red) - HSB:
hue:120 saturation:1.0 brightness:0.5
- Kelvin:
kelvin:3500
(warm white)
Development
Project Structure
mcp-lifx/
āāā src/
ā āāā index.ts # Main MCP server implementation
āāā build/ # Compiled JavaScript output
āāā LIFX.md # LIFX API documentation
āāā mcp.md # MCP tutorial reference
āāā package.json # Project configuration
āāā tsconfig.json # TypeScript configuration
āāā README.md # This file
Available Scripts
npm run build
- Compile TypeScript to JavaScriptnpm start
- Run the compiled servernpm run dev
- Build and run in one command
API Reference
All LIFX API endpoints and parameters are documented in LIFX.md.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
License
ISC License
Support
For issues with this MCP server, please open an issue on GitHub. For LIFX API issues, refer to the official LIFX API documentation.
Note: This is an unofficial LIFX MCP server. LIFX is a trademark of LIFX Pty Ltd.
Related Servers
Hyteria MCP
A server for looking up the daily menu at the Hyteria (B1) restaurant.
NWC MCP Server
Control a Lightning wallet using Nostr Wallet Connect (NWC).
Brokerage-MCP
An MCP server for brokerage functionalities, built with the MCP framework.
Immanuel MCP Server
An MCP server for astrological chart calculations using the immanuel-python library.
Sequential Ethical Thinking
A tool for structured, step-by-step ethical reasoning using multiple moral frameworks for transparent deliberation.
Android-Mobile-MCP
This MCP server enabling AI agents to control Android devices.
Nano Currency MCP Server
Send Nano currency and retrieve account and block information using the Nano node RPC.
Ultra MCP SS
An MCP server for programmatic control of smartscreen.tv displays via HTTP and MCP commands, with YouTube integration.
Uber
Book Uber rides directly through your AI assistant.
Monzo
Access and manage your Monzo banking data, allowing you to check balances and view transactions.