Skip to main content
Glama
jgonzalez007

kwikset-mcp

by jgonzalez007

kwikset-mcp

MCP-сервер, который позволяет Claude проверять состояние и управлять умными замками семейства Kwikset Halo (Halo, Halo Keypad, Halo Touch, Halo Select / Select Plus).

Это тонкая обёртка вокруг aiokwikset — поддерживаемого сообществом Python-клиента для облачного API Kwikset; того же, что используется в Home Assistant Kwikset integration.

Важно: Kwikset не публикует и официально не поддерживает этот API. aiokwikset получает его методом реверс-инжиниринга, поэтому он может сломаться, если Kwikset что-то изменит на серверной стороне. Этот сервер включает инструмент debug_api_surface и защитные проверки, чтобы такой сбой было легко диагностировать и исправить, а не получить тихий жёсткий отказ.

Это не проверено на реальной учётной записи и реальном замке — он написан по опубликованной документации aiokwikset и исходному коду интеграции Home Assistant, без доступа к учётным данным Kwikset и без физического замка. Выполите шаги ниже и относ1/замок как смоук-тест; если что-то вызывает ошибку api_mismatch, вставьте её (и вывод debug_api_surfase) обратно Claude, чтобы он исправил одно-два несовпадающих имени методов.

Почему вход в систему — отдельнный шаг

Ваш пароль Kwikset никогда не должен попадать в диалог с LLM. Поэтому утентификация виполняется один раз в обычном термиale через auth_setup.py, которая сохраняет локально только полученный токен сессии (и никогда — пароль). MCP-сервер читает и незаметно обновляет эти токены — он никогда не запрашивает ваш пароль ни у Claude, ни у вас в диалге с Claude.

Related MCP server: Seam MCP Server

Настройка

  1. Установите зависи мости (Python 3.10+):

    cd kwikset-mcp
    python3 -m venv .venv

    Активируйте вертуальное окружение — команда зависит от вашей оболочки:

    # macOS / Linux (bash or zsh)
    source .venv/bin/activate
    # Windows PowerShell
    .venv\Scripts\Activate.ps1
    :: Windows Command Prompt (cmd.exe)
    .venv\Scripts\activate.bat

Вы поймёте, что всё получилось, когда в приглашении оболочки появится префикс (.venv). Если PowerShell отказывалась выплнить скрипт («в этой системе отлёчено выполнение сценариев»), сначалы выплните Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass, потом повтороне комаду актации.

The following must be with the venv active:

pip install -e .
  1. Войдите один раз. Обётные данные можно задать тремя способами, они прочеряются в таком порядоке:

    # 1. Command-line flags (any OS/shell)
    python auth_setup.py --email you@example.com --password 'hunter2'
    
    # 3. Interactive prompt (any OS/shell; default if nothing else is given)
    python auth_setup.py

    Вариант 2 — сначала задать переменные окружения — предпочительнее, чем флаг --password выше (пароль, переданный в командной строке, виден остальным процессам через ps aux/Таск Meetingер и остаётся в истории оболочки), — но синтакссис за висит от оболочки:

    # macOS / Linux (bash or zsh)
    KWIKSET_EMAIL=you@example.com KWIKSET_PASSWORD='hunter2' python auth_setup.py
    # Windows PowerShell
    $env:KWIKSET_EMAIL = "you@example.com"
    $env:KWIKSET_PASSWORD = "hunter2"
    python auth_setup.py

    Если в учётной записи включена MFA, вас попросят ввеси код (или можно задать его с зарание через --mfa-code / $KWIKSESET_MFA_CODE). В лю лубом слу чае при этом созда ётся ~/.kwікset-mcp/tokеns.json (достоп на чтен/запisen only вла дельца) и в и тогда больше никогда не обра лай гируйте к вашему паролю — MCP-сервер випл нользует по л уч енный токен по вто рно and refresh его across silent.

  2. Дакажите Claude на этот сервер.

    For Claude Code, в этом каталоге проекта:

    # macOS / Linux
    claude mcp add kwikset -- "$(pwd)/.venv/bin/python" -m kwikset_mcp.server
    # Windows PowerShell
    claude mcp add kwikset -- "$PWD\.venv\Scripts\python.exe" -m kwikset_mcp.server

    For Claude Desktop, add this to claude_desktop_config.json (Settings → Developer → Edit Config), replacing the absolute path to .venv of this directory:

    {
      "mcpServers": {
        "kwikset": {
          "command": "/absolute/path/to/kwikset-mcp/.venv/bin/python",
          "args": ["-m", "kwikset_mcp.server"]
        }
      }
    }

    На Windows in command use C:\\absolute\\path\\to\\kwikset-mcp\\.venv\\Scripts\\python.exe (use double slash, because JSON). Add double backslashes.

    Then restart the Claude client to load the new server.

  3. Попробуйте. Спросите Claude, например: «перечисли мои замки Kwikset» или «заперта ли входная дверь?» — он должен вызвать list_locks / get_lock_status. Для разблокировки нужен явный запрос: unlock_door отказывается действовать, если его не вызвать с confirm=true, а Claude сделает это только тогда, когда вы чётко попросите разблокировать эту дверь.

Доступные инструменты

Tool

Description

list_locks

Всезмки на учётной записи: статус, заряд батареи (%), дом

get_lock_status(device_id)

Статус/батарея/Wi-Fi для одного замка

lock_door(device_id)

Запереть дверь

unlock_door(device_id, confirm)

Отпереть дверь (требуется confirm=true)

debug_api_surface

Диагностический дамп реальных имён методов установленной aiokwikset-библиотеки

Повторная аутентификация

Если токены истекли и не могут быть незаметно обновлены (например, изменился пароль Kwikset или сброшен MFA), вызовы инструментов вернут ошиб쿠 auth_required with instruction — просто повторно запусстите python auth_setup.py.

Файлы

kwikset-mcp/
├── auth_setup.py           # run once, by hand, to log in
├── src/kwikset_mcp/
│   ├── auth.py              # local token file read/write
│   ├── client.py            # aiokwikset wrapper (locks, status, etc.)
│   └── server.py            # FastMCP server + tool definitions
├── pyproject.toml
└── requirements.txt
F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables control of smart locks through the Seam API, allowing users to lock/unlock doors, check status, and manage access codes across 100+ supported lock brands. Supports comprehensive access code management including temporary codes and multi-lock operations.
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI models to control and query smart home devices (air conditioners, lights, locks, cameras, refrigerators) through a backend API. Supports device control operations, status queries, and detailed device information retrieval with built-in documentation for proper device usage.
    2
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to control PetLibro RFID pet feeders and water fountains by checking food/battery/water status, dispensing food by the cup, and force-opening feeder lids via the PetLibro cloud API.
    GPL 3.0

View all related MCP servers

Related MCP Connectors

  • Connect your Oura Ring account and enable access to your wellness data in apps and automations. In…

  • Tailscale device, route, DNS, key, user, and ACL management over MCP and CLI.

  • MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jgonzalez007/kwikset-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server