# zigbee2mqtt-mcp

Подключает ассистента к брокеру Zigbee2MQTT для проверки сети, связывания устройств, мониторинга батарей и обновления прошивок через протокол stdio.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 34
- Автор: alexpfau
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/alexpfau/zigbee2mqtt-mcp
- Обновлён: 2026-10-23
- HTML: https://affpapa.org/nevibecode/mcp/zigbee2mqtt-mcp

## Что делает

Сервер подключается к брокеру MQTT напрямую через stdio, минуя веб-интерфейс Zigbee2MQTT. База данных не требуется. Актуальное состояние сети кэшируется в оперативной памяти из retained-сообщений брокера. Каждому запросу сопоставляется идентификатор транзакции, поэтому параллельные вызовы не конфликтуют.

Управление разделено на три уровня доступа: `off`, `safe` и `full`. По умолчанию включён безопасный режим `safe`. Он позволяет настраивать привязки, опрашивать датчики и управлять группами. Опасные операции вроде удаления узлов или перепрошивки заблокированы до перехода в режим `full` и требуют подтверждения параметром `confirm: true`.

Без Node.js 22 и прямого сетевого доступа к брокеру MQTT сервер не запустится. Для части диагностических эндпоинтов моста обязателен Zigbee2MQTT 2.x.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `Z2M_MQTT_URL`, `Z2M_MQTT_USERNAME`, `Z2M_MQTT_PASSWORD`, `Z2M_BASE_TOPIC`, `Z2M_WRITE_MODE` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env Z2M_MQTT_URL=<Z2M_MQTT_URL> --env Z2M_MQTT_USERNAME=<Z2M_MQTT_USERNAME> --env Z2M_MQTT_PASSWORD=<Z2M_MQTT_PASSWORD> --env Z2M_BASE_TOPIC=<Z2M_BASE_TOPIC> --env Z2M_WRITE_MODE=<Z2M_WRITE_MODE> --transport stdio zigbee2mqtt-mcp -- npx -y zigbee2mqtt-mcp
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add zigbee2mqtt-mcp --env Z2M_MQTT_URL=<Z2M_MQTT_URL> --env Z2M_MQTT_USERNAME=<Z2M_MQTT_USERNAME> --env Z2M_MQTT_PASSWORD=<Z2M_MQTT_PASSWORD> --env Z2M_BASE_TOPIC=<Z2M_BASE_TOPIC> --env Z2M_WRITE_MODE=<Z2M_WRITE_MODE> -- npx -y zigbee2mqtt-mcp
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "zigbee2mqtt-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "zigbee2mqtt-mcp"
            ],
            "env": {
                "Z2M_MQTT_URL": "<Z2M_MQTT_URL>",
                "Z2M_MQTT_USERNAME": "<Z2M_MQTT_USERNAME>",
                "Z2M_MQTT_PASSWORD": "<Z2M_MQTT_PASSWORD>",
                "Z2M_BASE_TOPIC": "<Z2M_BASE_TOPIC>",
                "Z2M_WRITE_MODE": "<Z2M_WRITE_MODE>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "zigbee2mqtt-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "zigbee2mqtt-mcp"
            ],
            "env": {
                "Z2M_MQTT_URL": "<Z2M_MQTT_URL>",
                "Z2M_MQTT_USERNAME": "<Z2M_MQTT_USERNAME>",
                "Z2M_MQTT_PASSWORD": "<Z2M_MQTT_PASSWORD>",
                "Z2M_BASE_TOPIC": "<Z2M_BASE_TOPIC>",
                "Z2M_WRITE_MODE": "<Z2M_WRITE_MODE>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e Z2M_MQTT_URL=<Z2M_MQTT_URL> -e Z2M_MQTT_USERNAME=<Z2M_MQTT_USERNAME> -e Z2M_MQTT_PASSWORD=<Z2M_MQTT_PASSWORD> -e Z2M_BASE_TOPIC=<Z2M_BASE_TOPIC> -e Z2M_WRITE_MODE=<Z2M_WRITE_MODE> zigbee2mqtt-mcp npx -y zigbee2mqtt-mcp
```
Вместо <…> подставьте свои значения

## Когда брать
- проверить качество связи и топологию сети Zigbee
- найти устройства с низким зарядом батареи или долгим отсутствием связи
- настроить группы и прямое связывание устройств без веб-интерфейса
- включить сопряжение новых датчиков через команду ассистенту

## Примеры запросов агенту
- Найди все устройства Zigbee с уровнем батареи ниже 20% или слабым сигналом
- Включи режим сопряжения permit_join на мосту Zigbee2MQTT
- Проверь статус подключения к брокеру через z2m_connection_status

## Похожие
- [Scrapling MCP Server](https://affpapa.org/nevibecode/mcp/scrapling-mcp-server.md) — MCP-сервер · ★ 89433
- [browser-use](https://affpapa.org/nevibecode/mcp/browser-use.md) — MCP-сервер · ★ 119160
- [AIHawk](https://affpapa.org/nevibecode/mcp/aihawk.md) — MCP-сервер · ★ 32221
- [Skyvern](https://affpapa.org/nevibecode/mcp/skyvern.md) — MCP-сервер · ★ 23263
- [SeleniumBase MCP](https://affpapa.org/nevibecode/mcp/seleniumbase-mcp.md) — MCP-сервер · ★ 13169
- [Inbox Zero](https://affpapa.org/nevibecode/mcp/inbox-zero.md) — MCP-сервер · ★ 12791

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
