# Divoom LAN Watchface

This MCP server controls Divoom LAN watchfaces from AI clients. Use it to inspect, edit, switch, and preview local faces with read-before-write checks.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 7
- Author: DivoomDevelop
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/DivoomDevelop/mcp-divoom-lan
- Updated: 2026-10-16
- HTML: https://affpapa.org/en/nevibecode/mcp/divoom-lan-watchface

## What it does

Divoom LAN Watchface exposes TimesFrame and AstroToo LAN APIs as MCP tools. It discovers devices, selects a product profile from the returned `Hardware` value, and checks the managed configuration before changing it. The tool set covers local watchfaces, brightness, screen state, file uploads, device snapshots, and raw API calls.

Edits use a managed slot, so clients do not provide `ClockId` themselves. `watchface_patch_local` handles changes, while `watchface_create_local_clock` is used for a new face or a full replacement. Catalog tools provide model-specific clocks, fonts, `disp` values, templates, and layout guidance. Claude Code needs the device address in `DIVOOM_DEVICE_HOST`.

An empty `ItemList` from `GetLocalClockInfo` stops writes until an editable watchface is selected. If device detection gets no response, the server falls back to the TimesFrame profile; an explicit unknown `Hardware` value is rejected.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `DIVOOM_DEVICE_HOST`, `DIVOOM_DEVICE_PORT`, `DIVOOM_TIMEOUT_MS` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env DIVOOM_DEVICE_HOST=<DIVOOM_DEVICE_HOST> --env DIVOOM_DEVICE_PORT=<DIVOOM_DEVICE_PORT> --env DIVOOM_TIMEOUT_MS=<DIVOOM_TIMEOUT_MS> --transport stdio divoom-lan-watchface -- npx -y mcp-divoom-lan
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add divoom-lan-watchface --env DIVOOM_DEVICE_HOST=<DIVOOM_DEVICE_HOST> --env DIVOOM_DEVICE_PORT=<DIVOOM_DEVICE_PORT> --env DIVOOM_TIMEOUT_MS=<DIVOOM_TIMEOUT_MS> -- npx -y mcp-divoom-lan
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "divoom-lan-watchface": {
            "command": "npx",
            "args": [
                "-y",
                "mcp-divoom-lan"
            ],
            "env": {
                "DIVOOM_DEVICE_HOST": "<DIVOOM_DEVICE_HOST>",
                "DIVOOM_DEVICE_PORT": "<DIVOOM_DEVICE_PORT>",
                "DIVOOM_TIMEOUT_MS": "<DIVOOM_TIMEOUT_MS>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "divoom-lan-watchface": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "mcp-divoom-lan"
            ],
            "env": {
                "DIVOOM_DEVICE_HOST": "<DIVOOM_DEVICE_HOST>",
                "DIVOOM_DEVICE_PORT": "<DIVOOM_DEVICE_PORT>",
                "DIVOOM_TIMEOUT_MS": "<DIVOOM_TIMEOUT_MS>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e DIVOOM_DEVICE_HOST=<DIVOOM_DEVICE_HOST> -e DIVOOM_DEVICE_PORT=<DIVOOM_DEVICE_PORT> -e DIVOOM_TIMEOUT_MS=<DIVOOM_TIMEOUT_MS> divoom-lan-watchface npx -y mcp-divoom-lan
```
Replace <…> with your own values

## When to use it
- discover Divoom devices on the LAN
- inspect the current local watchface
- patch a watchface before writing it
- switch the selected face or screen brightness
- upload an asset for a local watchface

## Example prompts
- Find the Divoom devices on my LAN and show their detected models.
- Read the current local watchface and replace its background with `background.png`.
- Switch the device to another watchface, then retrieve a screen snapshot.

## Similar
- [MCP Toolbox for Databases](https://affpapa.org/en/nevibecode/mcp/googleapis-mcp-toolbox-for-databases.md) — MCP server · ★ 16730
- [PostHog MCP Server](https://affpapa.org/en/nevibecode/mcp/posthog-mcp-server.md) — MCP server · ★ 40459
- [OpenWork MCP Gateway](https://affpapa.org/en/nevibecode/mcp/openwork-mcp-gateway.md) — MCP server · ★ 24271
- [Keploy](https://affpapa.org/en/nevibecode/mcp/keploy.md) — MCP server · ★ 18779
- [Nhost](https://affpapa.org/en/nevibecode/mcp/nhost.md) — MCP server · ★ 9369
- [basebalance.cloud — x402 RPC & MCP gateway](https://affpapa.org/en/nevibecode/mcp/basebalancecloud-x402-rpc-mcp-gateway.md) — MCP server · ★ 7548

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
