unifi-protect

unifi-protect is a plugin for Claude Code from sirkirby/unifi-mcp. Its manifest loads nothing; the 4 skills it bundles cost 279 tokens per session together, scanned A, original, MIT.

A plugin that connects an AI agent to UniFi Protect, a system for security cameras, video recording, and camera alerts.

In plain words
What is it for?
Use it to manage cameras and the recorder, review recordings, and handle smart-detection information.
Why use it?
It lets the agent work with camera and recording data through the UniFi Protect system.

Plugin for Claude Code

Written for Claude Code: ${CLAUDE_PLUGIN_ROOT} variable.

Good fit Use it to manage cameras and the recorder, review recordings, and handle smart-detection information.

Compare 6 plugins from other repositories ↓
Install in Claude Code
/plugin marketplace add sirkirby/unifi-mcp
/plugin install unifi-protect
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/sirkirby/unifi-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for unifi-protect

README.md
[![agentmods](https://agentmods.dev/badge/plugins/sirkirby/unifi-mcp/unifi-protect/github.svg)](https://agentmods.dev/plugins/sirkirby/unifi-mcp/unifi-protect)
Your own site
<a href="https://agentmods.dev/plugins/sirkirby/unifi-mcp/unifi-protect"><img src="https://agentmods.dev/badge/plugins/sirkirby/unifi-mcp/unifi-protect/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for unifi-protect

Your own site · 80×15
<a href="https://agentmods.dev/plugins/sirkirby/unifi-mcp/unifi-protect"><img src="https://agentmods.dev/badge/plugins/sirkirby/unifi-mcp/unifi-protect.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session not measured What this adds to a session before it is invoked.
When invoked not measured The manifest loads nothing itself; its 4 skills cost 279 tokens a session between them.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Security

Grade A, and why

unifi-protect scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

plugins/unifi-protect/.claude-plugin/plugin.json · 158 lines

How it starts

The opening of the file, as written. The whole thing — 158 lines — stays where its author put it; the contents beside it link to each section on GitHub.

{
  "name": "unifi-protect",
  "version": "1.1.10",
  "description": "UniFi Protect MCP server \u2014 manage security cameras, NVR, recordings, and smart detections",
  "author": {
    "name": "sirkirby",
    "url": "https://github.com/sirkirby"
  },
  "license": "MIT",
  "icon": "./assets/icon.png",
  "keywords": [
    "unifi",
    "protect",
    "cameras",
    "nvr",
    "security",
    "mcp"
  ],
  "mcpServers": {
    "unifi-protect": {
      "command": "uvx",
      "args": [
        "--python-preference",
        "system",
        "unifi-protect-mcp==0.9.5"
      ],
      "env": {
        "UNIFI_PROTECT_HOST": "${user_config.host}",
        "UNIFI_PROTECT_USERNAME": "${user_config.username}",
        "UNIFI_PROTECT_PASSWORD_FILE": "${user_config.password_file}",
        "UNIFI_PROTECT_PASSWORD_COMMAND": "${user_config.password_command}",
        "UNIFI_PROTECT_PASSWORD": "${user_config.password}",
        "UNIFI_PROTECT_API_KEY_FILE": "${user_config.api_key_file}",
        "UNIFI_PROTECT_API_KEY_COMMAND": "${user_config.api_key_command}",
        "UNIFI_PROTECT_API_KEY": "${user_config.api_key}",
        "UNIFI_PROTECT_PORT": "${user_config.port}",
        "UNIFI_PROTECT_VERIFY_SSL": "${user_config.verify_ssl}",
        "UNIFI_POLICY_PROTECT_CREATE": "${user_config.policy_create}",
        "UNIFI_POLICY_PROTECT_UPDATE": "${user_config.policy_update}",
        "UNIFI_POLICY_PROTECT_DELETE": "${user_config.policy_delete}",
        "UNIFI_PROTECT_TOOL_PERMISSION_MODE": "${user_config.permission_mode}",
        "UNIFI_TOOL_REGISTRATION_MODE": "${user_config.registration_mode}"
      }
    }
  },
  "userConfig": {
    "host": {
      "type": "string",
      "title": "Host",
      "description": "UniFi Protect console or NVR IP address or hostname"
    },
    "username": {
      "type": "string",
      "title": "Username",
      "description": "Local account username for session authentication"
    },
    "password_file": {
      "type": "string",
      "title": "Pass

Read the full file on GitHub · 158 lines

Contents

What it installs

The manifest is a name and a version. 4 skills travel with it, and installing the plugin installs all of them — 279 tokens a session between them. Each is measured on its own page, and each can be installed alone.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago Changed · +1 lines 21ea270e8c66
  2. 5d ago Changed 46bf0ec828be
  3. 10d ago Changed d99ba31fb1bf
  4. 12d ago Changed 632a973009af
  5. 13d ago Changed f506d5c8ab5b
  6. 14d ago Changed bb4c2faf42b7
  7. 15d ago Changed · +113 lines 0c2375fff427
  8. 18d ago Changed d7b8bfe76189
  9. 19d ago Changed 8c5ba797faec
  10. 26d ago First seen · 44 lines scan A 17d2bc0faf19

Subscribe to this mod's changes

unifi-protect is a plugin published in the GitHub repository sirkirby/unifi-mcp (955 stars, last pushed yesterday), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other plugins, from other repositories

android-remote-control

Channel plugin for Android Remote Control MCP — receives device events (notifications, WiFi, geofence) and pushes them into Claude Code sessions.

danielealbano/android-remote-control-mcp · not measured

aurora

Aurora Smart Home - skills for Home Assistant, ESPHome, Node-RED, custom integrations, API catalog, and dashboard design.

tonylofgren/aurora-smart-home · not measured

aruba-central-mcp

Aruba Central (GreenLake New Central API) for Claude Code, through an OAuth2 Client Credentials service account. List and inspect access points, radios, BSSIDs, WLANs, swarms, switches, and wireless clients, get bandwidth/throughput trends and client mobility trails, see each swarm's firmware and upgrade status…

shigechika/aruba-central-mcp · not measured

connectwise-control

Manage ConnectWise Control (ScreenConnect) remote support and access sessions from the terminal or your AI agent: list and inspect sessions across groups, run commands on guest machines, rename and tag sessions, manage instance users, and query the audit log - the whole instance from one CLI.

Servosity/msp-skills · not measured

domotz

Every Domotz endpoint, plus a local SQLite fleet mirror that answers cross-site questions.

Servosity/msp-skills · not measured

levelio

Every Level RMM endpoint, plus a local SQLite fleet store and offline cross-entity rollups no Level tool has: at-risk ranking, patch posture, alert triage, and stale-device detection in one command.

Servosity/msp-skills · not measured