CheerLights

by cheerlights

1 stars
441 downloads
Not rated
GitHub Website

About

Connects Claude to the CheerLights IoT ecosystem, enabling retrieval of current colors and history from the global light synchronization project through the ThingSpeak API.

Details

Author
cheerlights
Repository
cheerlights/cheerlights-mcp
GitHub stars
1
Downloads
441
License
MIT License
Categories
Design, Developer Tools, AI, Project Management, Frontend, API, Other
Tags
#web

- Tools to get current color, history, statistics, and search colors
- Resources for current color, formatted history, and supported colors list
- Prompts for trend analysis and color reports
- Structured output with Pydantic models and error handling
- Configurable history count (1–100) and statistics sample size

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:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name CheerLights
    Command (node, npx, python, etc.) uv
    Arguments
    • Argument 1 run
    • Argument 2 cheerlights-mcp

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

uv sync

git clone https://github.com/cheerlights/cheerlights-mcp.git
cd cheerlights-mcp
pip install -e .

uv sync --dev

uv run pre-commit install

from cheerlights_mcp import create_server

bash

git clone https://github.com/cheerlights/cheerlights-mcp.git
cd cheerlights-mcp
uv sync --dev

get_current_cheerlights_color

Returns structured ColorData with the current CheerLights color, including color name, timestamp, entry ID, and optional created at datetime.

get_cheerlights_history

Returns ColorHistory with recent color changes, allowing a configurable count of entries (1-100).

analyze_color_statistics

Returns ColorStatistics with color frequency counts, most/least popular colors, analysis period information, and unique color count. Sample size is configurable.

search_colors

Returns ColorSearchResult with matching entries for a specific color, with an optional limit on the number of results.

get_hex_color_code

Returns HexColor with hex code and RGB values for a specified CheerLights color name.

get_current_cheerlights_color()

Returns structured ColorData with: - color: Current color name - timestamp: When it was set - entry_id: Unique identifier - created_at: Parsed datetime (optional)

get_cheerlights_history(count: int = 5)

Returns ColorHistory with recent changes (1-100 entries).

analyze_color_statistics(sample_size: int = 50)

Returns ColorStatistics with: - Color frequency counts - Most/least popular colors - Analysis period information - Unique color count

search_colors(color: str, limit: int = 20)

Returns ColorSearchResult with matching entries.

get_hex_color_code(color_name: str)

Returns HexColor with hex code and RGB values.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "cheerlights": {
            "cwd": "/path/to/cheerlights-mcp",
            "env": {},
            "args": [
                "run",
                "cheerlights-mcp"
            ],
            "command": "uv"
        }
    }
}

Linux

{
    "cwd": "/path/to/cheerlights-mcp",
    "env": [],
    "args": [
        "run",
        "cheerlights-mcp"
    ],
    "command": "uv"
}

Macos

{
    "cwd": "/path/to/cheerlights-mcp",
    "env": [],
    "args": [
        "run",
        "cheerlights-mcp"
    ],
    "command": "uv"
}

Windows

{
    "cwd": "/path/to/cheerlights-mcp",
    "env": [],
    "args": [
        "/c",
        "uv run cheerlights-mcp"
    ],
    "command": "cmd"
}

CheerLights MCP Server

Python Version
MCP Compatible
License: MIT

A modern Model Context Protocol (MCP) server that provides comprehensive access to the CheerLights API. CheerLights is a global IoT project that synchronizes colors across thousands of connected lights worldwide, creating a real-time shared experience.

🌈 Features

Tools (Actions)

- Current Color: Get the most recent CheerLights color from the global network - Color History: Retrieve recent color changes with configurable count (1-100) - Color Statistics: Analyze color usage patterns and popularity over time - Color Search: Find specific colors in the historical data - Hex Color Codes: Get hex codes and RGB values for CheerLights colors

Resources (Context)

- Current Color Resource: Real-time current color as a readable resource - History Resource: Formatted color history for context injection - Supported Colors: Complete list of valid CheerLights colors with hex codes

Prompts (Templates)

- Trend Analysis: Generate prompts for analyzing CheerLights color trends - Color Reports: Create detailed reports about specific colors

🚀 Quick Start

Using uv (Recommended)

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.