CAMERAS & NVRS / HM-CV-035
HM-CV-035 · datasheet

mcp-unifi

Safety-first MCP server for self-hosted UniFi: Network, plus opt-in Protect cameras and Access doors, with dry-run previews and an audit log

01 · What it does

  • Network: devices, AP radios, VLANs, WLANs, firewall (legacy and zone-based), switch ports, port forwards, DHCP reservations
  • Protect (opt-in): cameras, motion events, smart detections, recording config
  • Access (opt-in, read-only): doors, credentials, visitors, badge events, hubs and readers
  • Every destructive tool takes dry_run=True; composite tools roll back on partial failure
  • MCP_UNIFI_READONLY=true hides and refuses all mutating tools; JSONL audit log of every call

02 · Install

$ export MCP_UNIFI_TOKEN=$(openssl rand -hex 32)
$ docker run -d --rm -p 3714:3714 -e STUB_MODE=false -e UNIFI_HOST=192.168.1.1 -e UNIFI_API_KEY=<your-local-api-key> -e MCP_UNIFI_AUTH_TOKENS="$MCP_UNIFI_TOKEN" --name mcp-unifi ghcr.io/pete-builds/mcp-unifi:latest
$ claude mcp add --transport http --scope user unifi http://localhost:3714/mcp --header "Authorization: Bearer $MCP_UNIFI_TOKEN"
  1. Create the local API key on the gateway under Settings > Control Plane > Integrations. No cloud account needed
  2. Try it first with -e STUB_MODE=true (two stubbed devices, no hardware), as in the README quick start
  3. Enable Protect and Access with MCP_UNIFI_MODULES_ENABLED=network,protect,access
  4. Other installs: .dxt one-click for Claude Desktop, Helm chart, or uvx --from git+https://github.com/pete-builds/mcp-unifi mcp-unifi (stdio)

Install steps taken from the project README (its recommended path first). Placeholders are the maintainer's. Not bench-tested by HardwareMCP yet.

Weekly bulletin

New hardware MCP servers and setups that actually worked on a bench. One email, Fridays.