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
šØ Interactive MCP App
NEW! This server includes an interactive web-based UI that provides:
- Visual controls for all your LIFX lights
- Real-time power, color, and brightness adjustments
- One-click color presets
- Visual effects (breathe & pulse) controls
- Theme-aware design that adapts to your client
See MCP_APP_GUIDE.md for details on using the interactive UI.
Prerequisites
- LIFX API Token: Get your token from LIFX Cloud Settings
- Node.js: Version 16 or higher
- VS Code with GitHub Copilot extension
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 VS Code and GitHub Copilot
The LIFX MCP server works seamlessly with VS Code's GitHub Copilot:
- Ensure the server is built:
npm run build - Set your
LIFX_API_TOKENenvironment variable - The server will be automatically discovered by VS Code's MCP integration
- Open GitHub Copilot Chat and interact with your lights
Example interactions:
- "List all my LIFX lights"
- "Open LIFX control" - launches the interactive UI with visual controls
- "Show LIFX app" - alternative way to open the control interface
- "Turn on the kitchen lights"
- "Set living room lights to blue"
- "Launch LIFX dashboard" - opens the visual control panel
Running the Server
You can run the server directly with:
npm start
Or in development mode:
npm run serve
Example Usage
Once connected to an MCP client, you can use commands like:
Text Commands
- "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"
Interactive UI
Launch the visual control interface with any of these prompts:
- "Open LIFX control" - Primary command to launch the UI
- "Show LIFX app" - Alternative prompt
- "Launch LIFX interface" - Opens the interactive controls
- "Open LIFX dashboard" - Displays the visual UI
- "Show me LIFX controls" - Launches the control panel
- "Open the LIFX control panel" - Starts the interactive interface
- "I want to control my LIFX lights visually" - Opens the UI
- "Show LIFX remote" - Alternative way to access controls
The interactive UI provides visual controls for power, brightness, colors, and effects without needing text commands. See MCP_APP_GUIDE.md for details.
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
ā āāā mcp-app.tsx # React MCP app UI
ā āāā mcp-app.html # HTML entry point for app
āāā build/
ā āāā index.js # Compiled server
ā āāā src/
ā āāā mcp-app.html # Bundled single-file app UI
āāā LIFX.md # LIFX API documentation
āāā MCP_APP_GUIDE.md # Interactive UI usage guide
āāā mcp.md # MCP tutorial reference
āāā vite.config.ts # Vite build configuration
āāā package.json # Project configuration
āāā tsconfig.json # TypeScript configuration
āāā README.md # This file
Available Scripts
npm run build- Build both the MCP app UI and servernpm run build:app- Build only the React UInpm run build:server- Build only the TypeScript servernpm start- Run the compiled servernpm run serve- Run server in development mode (with tsx)npm run dev- Build and run in one commandnpm run clean- Remove build directorynpm run rebuild- Clean and rebuild everything
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
Web-Algebra
Suite of generic Linked Data/SPARQL as well as LinkedDataHub-specific MCP tools
Upstox MCP server
A MCP server for integrating with the Upstox trading API by Upstox.
SpeedOf.Me Speed Test MCP
Official SpeedOf.Me server for AI agents - accurate speed tests via 129 global edge servers with analytics dashboard.
Bitcoin MCP Server
MCP server dedicated to the Bitcoin ecosystem for traders, analysts, developers, and more.
root-mcp
MCP server for ROOT CERN files
Cinode
Give agents a view of people, projects, skills and assignments
inspirehep-mcp
InspireHEP MCP Server - integrate high-energy physics literature with LLMs.
OctoEverywhere For 3D Printing
A 3D Printing MCP server that allows for querying for live state, webcam snapshots, and 3D printer control.
wodeapp
AI-powered no-code app builder with 17 MCP tools ā create projects, generate pages from natural language, AI text/image generation (GPT, Claude, Gemini, 14+ models), page CRUD, workflow execution, publish & version control. SSE transport, API key auth.
F1 MCP Server
Provides advanced Formula 1 data analysis, including real-time telemetry, tire performance, weather prediction, and race strategy simulation.