Skip to main content
Glama
cormac-rynne

hikvision-mcp

by cormac-rynne

{"type": "text"}# hikvision-mcp

[!ВАЖНО] Альфа-программное обеспечение для локальных доверенных развертываний. Перед включением записи проверяйте работу на точной модели камеры и прошивке.

Локальный MCP-сервер с поддержкой возможностей для безопасного просмотра и настройки камер Hikvision. Текущий выпуск реализует первый сквозной вертикальный срез PRD:

  • TOML-конфигурация и секреты через переменные окружения;

  • контроль разрешений для каждой камеры и каждого инструмента;

  • асинхронный ISAPI с дайджест-аутентификацией, безопасным разбором XML и ограниченной потоковой передачей событий;

  • определение идентичности и возможностей камеры;

  • чтение предупредительной подсветки и частичное обновление конфигурации с использованием JSON-схемы камеры;

  • доступные только для чтения зоны вторжения, цели, расписания постановки на охрану и связи событий;

  • правила движения, взлома, пересечения линии, вторжения, входа/выхода из зоны и смены сцены с зонами, расписаниями, целями и связями (только чтение);

  • работоспособность камеры, профили потоков, настройки изображения/день-ночь, статус хранилища, конфигурация звуковой сигнализации и чтение возможностей двусторонней аудиосвязи;

  • ограниченный мониторинг живых оповещений с семантическим типом события и состоянием активно/неактивно;

  • обязательный запасной вариант утверждения предложения/применения;

  • обнаружение конфликтов, проверенное чтение, аудит/история изменений SQLite и откат;

  • MCP-транспорты stdio и localhost Streamable HTTP.

Адаптеры предупредительной подсветки, обнаружения поля и потока оповещений имеют очищенное покрытие фикстур для DS-2CD2346G2-ISU/SL с прошивками V5.7.14 и V5.7.19. Расширенная поверхность чтения имеет очищенное покрытие фикстур V5.7.19. Аппаратные записи по-прежнему требуют явного одобрения и должны быть необязательными, пока цикл PUT/чтения не будет проверен на целевом устройстве. Различия в прошивке должны находиться в подклассах адаптеров, а не в обработчиках MCP.

Совместимость

Поверхность

Фикстуры V5.7.14

Фикстуры V5.7.19

Эталонное оборудование V5.7.19

Предупредительная подсветка, вторжение, поток оповещений

Да

Да

Только чтение проверено

Работоспособность, потоки, изображение, хранилище, аудио

—

Да

Только чтение проверено

Общие правила обнаружения

—

Да

Прочитано семь заявленных типов правил

Эталонное оборудование — DS-2CD2346G2-ISU/SL. Другие устройства Hikvision обрабатываются с помощью определения возможностей, автоматического или настраиваемого выбора канала и регистрации адаптеров модели/прошивки; они не заявляются как протестированные, пока не будут добавлены очищенные фикстуры или аппаратные доказательства.

Related MCP server: Hikvision CCTV MCP

Установка

uv sync --extra dev
Copy-Item config.example.toml config.toml
$env:HIKVISION_CAMERA_USERNAME = "service-account"
$env:HIKVISION_CAMERA_PASSWORD = "..."

В Linux или macOS используйте cp и export для эквивалентного копирования файлов и значений окружения.

Храните config.toml локально и никогда не фиксируйте учетные данные. Проверьте и запустите:

uv run hikvision-mcp config validate --config config.toml
uv run hikvision-mcp serve --transport stdio --config config.toml
uv run hikvision-mcp serve --transport streamable-http --config config.toml

Конечная точка HTTP MCP по умолчанию: http://127.0.0.1:8000/mcp.

Безопасный поток изменений

Пример конфигурации доступен только для чтения. Сознательно поднимите потолки политик сервера и камеры до уровня 3, прежде чем использовать этот поток.

  1. Вызовите get_capabilities(camera="example_camera").

  2. Вызовите get_warning_light.

  3. Вызовите configure_warning_light; это только создаст предложение.

  4. Получите явное одобрение человека.

  5. Вызовите apply_change(proposal_id=..., approved=true).

  6. Сервер проверяет конфликты, записывает один раз, считывает, проверяет и аудирует.

  7. Используйте rollback_change для создания отдельно одобренного предложения отката.

Диагностика только для чтения

  • get_detection_rules(camera="example_camera") считывает типы детекторов, рекламируемые камерой. Передайте kinds для проверки конкретных типов. Каждый результат сообщает о поддержке независимо и сохраняет читаемую конфигурацию, если подресурсы расписания или связи недоступны.

  • get_camera_health, get_stream_profiles, get_image_settings и get_storage_status предоставляют операционное состояние без возможности изменения сети, учетных записей, прошивки или сброса.

  • get_audio_alarm и get_two_way_audio описывают звуковое отпугивание и конфигурацию разговорного канала. Они не воспроизводят звук, не открывают сеанс разговора и не изменяют состояние камеры.

  • get_intrusion_detection(camera="example_camera") возвращает включение обнаружения поля, зоны, полигоны, цели, чувствительность, расписание постановки на охрану и методы связи.

  • monitor_events(camera="example_camera", duration_seconds=15) отслеживает поток оповещений в течение ограниченного периода. Используйте event_types=["fielddetection"] для фильтрации точных имен событий камеры.

  • get_warning_light(camera="example_camera") возвращает продолжительность, частоту и расписание. Эталонная прошивка V5.7.19 не сообщает о яркости или отдельном флаге включения.

Проверка качества

uv run ruff check .
uv run mypy
uv run pytest

См. CONFIGURATION.md, SECURITY.md и DEVELOPMENT.md.

Статус проекта и поддержка

Этот проект не связан с Hikvision и не одобрен ею. Hikvision и ISAPI используются только для идентификации совместимых продуктов и протоколов. Поведение оборудования и прошивки различается; неподдерживаемые или неизвестные функции возвращают unsupported_capability, а не угадываются.

Приветствуются отчеты об ошибках и вклад. Прочтите CONTRIBUTING.md перед отправкой полезных данных камеры или изменений и используйте SECURITY.md для уязвимостей.

Лицензировано под лицензией MIT.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server for managing Hikvision NVRs and IP cameras via ISAPI, providing tools for device info, camera channels, user management, and configuration changes with safety confirmations.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables secure, auditable access to Home Assistant through MCP, with a read-only observer profile and an operator profile for controlled mutations.
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables unified access to multiple MCP backend servers through one local daemon, with curated per-client tool profiles, allow/deny policies, audit logging, and drift protection.
    32 npm
    1
    MIT