Control a Shelly Duo RGBW smart bulb as an availability status indicator -- red when you're on a call, green when you're free, or any color you like.
Three independent components work together:
| Component | What it does |
|---|---|
| shelly-mcp/ | Go binary -- MCP server for Claude Code and standalone CLI |
| mic-monitor/ | Python daemon -- watches macOS mic activity and sets the light automatically |
| shelly-light/ | Stream Deck plugin -- physical buttons for status presets and custom colors |
- Shelly Duo RGBW (Gen 1) on your local network
- macOS (mic-monitor uses CoreAudio; the other components are cross-platform)
- Elgato Stream Deck (optional, only for the Stream Deck plugin)
-
Copy the example configs and fill in your Shelly's IP address:
cp shelly-mcp/config.example.json shelly-mcp/config.json cp mic-monitor/config.example.json mic-monitor/config.json
-
Build the Go binary:
cd shelly-mcp && go build -o shelly-mcp .
-
Test it:
./shelly-mcp status available # light turns green ./shelly-mcp color red # light turns red ./shelly-mcp off # light turns off
See each component's README for full setup instructions.
MIT -- see LICENSE.