Yeelight IoT MCP Server

io.github.Yeelight由 GitHub 帳號 Yeelight 發布v0.1.0更新於 Oct 25, 2026

Yeelight device discovery, state, control, and scene execution.

已驗證Streamable HTTP可網頁執行位置與生活效率與工作流

概覽

AI 產生的概覽

Yeelight 官方雲端 MCP 伺服器,讓助理探索 Yeelight Pro 家庭中的區域、房間、裝置、群組與情境,並預覽或執行裝置控制與情境。

可以做什麼
讀取目前選定的家庭,列出區域、房間、裝置、群組與情境,支援游標分頁,裝置與群組可依房間篩選。預覽或執行裝置節點屬性指令,預設為試執行。預覽或執行情境,預設為試執行。
適用情境
適用於既有或專用整合需要直接讀取 Yeelight Pro 家庭即時狀態並進行聚焦控制的情況,包括 control_node 與 execute_scene 工具。一般使用者較適合使用合併的 Yeelight MCP 安裝方式,而非單獨安裝此伺服器。
執行需求
遠端 Streamable HTTP 端點,位於 Yeelight 官方 API 主機;或以 Python 3.10 以上與 uv 進行本機部署。每個請求都必須提供 Yeelight Authorization 權杖;Yeelight-Region 與 House-Id 標頭為選用。本機部署仍會呼叫 Yeelight 雲端 API,並非離線閘道。
安裝前請注意
Authorization 持有人權杖屬於憑證,每個請求都必須提供;建議安裝方式會避免將其複製到用戶端設定中。control_node 與 execute_scene 會改變真實裝置與情境:實際執行需同時設定 dryRun=false 與 confirmSideEffect=true,rs 屬性被封鎖,寫入失敗不要盲目重試。裝置與家庭資料會傳送至 Yeelight 雲端服務。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Yeelight IoT MCP Server,將其新增到工作區。
  2. 連接 Authorization token 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.Yeelight%2Fyeelight-iot-mcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "yeelight-iot": {
      "type": "http",
      "url": "https://api.yeelight.com/apis/mcp_server/v1/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

Yeelight IoT MCP

简体中文

Official Repository And Mirrors

GitHub is the canonical source for issues, contributions, CI, and releases. Read-only mirrors are available on Gitee and GitCode for users who cannot reach GitHub reliably, with GitLab.com as an additional global fallback. Clone from any reachable source, but report issues and contribute changes on GitHub.

[!IMPORTANT] New to Yeelight MCP? Use one Yeelight MCP setup instead of installing this repository separately.

The setup configures this live-state/control service and Yeelight Metadata MCP together. This repository remains the developer reference for its specialized server, endpoint, and tools.

Follow the official English Yeelight MCP tutorial for the complete beginner path, or open the Simplified Chinese tutorial.

Yeelight Cloud MCP Suite

This repository is the focused-control part of the official Yeelight cloud MCP suite. Ordinary users receive both independently deployed services as one capability group through the same setup:

ServerRole in the suiteCore capabilities
Metadata MCPHome understanding and guarded management.Broad discovery and guarded management workflows, multi-region authorization, and request-scoped home selection.
IoT MCPLive state and focused control.Direct topology and live-state access, control_node, and execute_scene.

Recommended composition: run one Yeelight MCP setup so both services are available without a second install or scan.

Which MCP should I use?

What you needRecommended entry point
First Yeelight MCP integrationConfigure the complete Yeelight MCP suite with yeelight-home setup --mode mcp --mcp-source cloud
Homes, rooms, devices, groups, panels, scenes, automations, favorites, maintenance, or account workflowsYeelight Metadata MCP
Multi-region authorization and request-scoped home selectionYeelight Metadata MCP, optionally configured with Yeelight Home
An existing integration that depends on control_node or execute_sceneKeep using Yeelight IoT MCP
Develop or troubleshoot focused direct control, live state, or scene executionUse this repository's server and tool documentation

Place In Yeelight AI

yeelight-home provides the recommended installation, QR sign-in, and client-configuration flow. Ordinary users should prefer the complete yeelight-smart-home Skill; MCP-only clients run one cloud setup for the complete Yeelight MCP suite. The cloud services then execute independently of the local Runtime.

In plain language: ordinary users do not install this server separately. It is included by the unified setup and remains independently addressable for existing or specialized integrations. It is not a dependency of Yeelight Home or either Skill.

Existing and specialized IoT MCP integrations

Yeelight IoT MCP is the official focused Model Context Protocol server for Yeelight Pro homes. It lets MCP clients discover homes, areas, rooms, devices, groups, and scenes, read current capabilities, prepare safe device controls, and execute confirmed controls or scenes. The following documentation remains the supported reference for existing and specialized integrations.

For the suite overview and recommended default setup, return to Yeelight Metadata MCP.

Capabilities

  • Streamable HTTP MCP transport.
  • Official hosted endpoint or self-hosted source deployment.
  • Eight tools for topology discovery, device control, and scene execution.
  • Cursor pagination for area, room, device, group, and scene lists.
  • Dry-run by default for device control and scene execution.
  • Redacted control plans and explicit side-effect confirmation.

Requirements

  • Python 3.10 or later for local deployment.
  • uv for the documented local workflow.
  • A Yeelight Authorization token. Region and House ID are optional.

Recommended: let Yeelight Home complete sign-in and configuration

bash
npm install --global yeelight-homeyeelight-home setup --lang en-US --mode mcp --agent cursor --mcp-source cloud --yes

The command displays a QR code. In Yeelight Pro app Home, tap the top-right +, choose MCP Authorization, and scan it. One Pro home is selected automatically; multiple homes are presented by name. Cloud mode configures Metadata and IoT MCP together through local credential proxies, without copying Authorization into the AI client's configuration. Manual token configuration remains an advanced compatibility path.

Hosted Service

Use the official Streamable HTTP endpoint:

text
https://api.yeelight.com/apis/mcp_server/v1/mcp

Required request header:

text
Authorization: <YOUR_AUTHORIZATION>

Optional headers are Yeelight-Region and House-Id. The server accepts a raw token or a value prefixed with Bearer. When Region is omitted, a JWT Region claim selects the official endpoint before the complete token is validated. When House ID is omitted, the server selects the first Pro home in that Region. Users never configure a Client ID; IoT upstream calls derive it from the validated JWT when required, falling back to dev in the development Region and iot-app in cn, sg, us, or eu.

Local Development

bash
git clone https://github.com/Yeelight/yeelight-iot-mcp.gitcd yeelight-iot-mcp
uv sync --extra testYEELIGHT_IOT_MCP_RUNTIME_ENV=local \YEELIGHT_IOT_MCP_NACOS_ENABLED=false \PYTHONPATH=src \uv run uvicorn main:streamable_http_app --host 127.0.0.1 --port 9000

The local MCP URL is http://127.0.0.1:9000/mcp. Local deployment still uses Yeelight cloud APIs; it is not an offline gateway. Every request must provide an explicit Authorization header regardless of bind address or runtime environment. The service never reads an operator's CLI Profile; tests may use an explicit isolated credential provider. Nacos registration is disabled by default in the public project and can be enabled explicitly through environment variables.

MCP Client Configuration

json
{  "mcpServers": {    "yeelight-iot": {      "url": "https://api.yeelight.com/apis/mcp_server/v1/mcp",      "headers": {        "Authorization": "<YOUR_AUTHORIZATION>"      }    }  }}

Restart the MCP client after changing its configuration, then verify that tools/list returns the Yeelight tools.

Tools

ToolPurposeSide effect
get_currnet_house_infoRead the selected house. The misspelling is retained for compatibility.Read only
get_areasList areas with cursor pagination.Read only
get_roomsList rooms with cursor pagination.Read only
get_devicesList all devices or filter by room.Read only
get_groupsList all groups or filter by room.Read only
get_scenesList scenes with cursor pagination.Read only
control_nodePreview or execute a node property command.Dry-run by default
execute_scenePreview or execute a scene.Dry-run by default

For request examples and operating rules, read the usage guide. For client and deployment details, read the integration guide.

Safety Model

control_node and execute_scene default to dryRun=true. A live operation requires both dryRun=false and confirmSideEffect=true. Callers should:

  1. Resolve names to current IDs using read tools.
  2. Inspect the target's supported properties and operators.
  3. Generate and review a dry-run plan.
  4. Obtain user confirmation in the calling application.
  5. Execute once and query the resulting state when possible.

The control property rs is blocked by the current safety policy. Do not retry failed writes or scene executions blindly.

Configuration

Common environment variables for local deployments:

VariableDefaultPurpose
YEELIGHT_IOT_MCP_API_BASE_URLhttps://api.yeelight.comYeelight API origin
YEELIGHT_IOT_MCP_DEFAULT_REGIONcnFallback Region for opaque tokens
YEELIGHT_IOT_MCP_BIND_HOST127.0.0.1 in local/testBind address; production defaults to 0.0.0.0
YEELIGHT_IOT_MCP_PATH/mcpStreamable HTTP path
YEELIGHT_IOT_MCP_HTTP_TIMEOUT15Upstream timeout in seconds
YEELIGHT_IOT_MCP_FETCH_NODES_MAX_SIZE300Maximum list page size
YEELIGHT_IOT_MCP_NACOS_ENABLEDfalseEnable optional service registration
YEELIGHT_IOT_MCP_LOG_DIR./logs/yeelight-online-iot-mcp-serverLog directory

Test

bash
uv run --extra test pytest -q

Tests cover JWT claim handling, multi-Region routing, local Profile isolation, Pro home fallback, authorization normalization, pagination, redacted plans, dry-run defaults, confirmation guards, and configuration overrides. They do not call the live Yeelight cloud.

License

Apache License 2.0. See LICENSE and NOTICE.

來源:README.md,提交 4d441cd

工具

0
該伺服器需要 API 金鑰等憑證,因此 SourceWeft 無法在沒有憑證的情況下讀取其工具,也未收錄。

版本歷史

1
  1. v0.1.0最新Oct 12, 2026

評分

已滿足適用檢查項的 85%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分