From unifi-network
Configures the UniFi Network MCP server for Claude Code, Codex, or OpenClaw. Walks through controller host, credentials, API key, and optional settings.
How this skill is triggered — by the user, by Claude, or both
Slash command
/unifi-network:unifi-network-setupThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Walk the user through configuring their UniFi Network controller connection. Ask one question at a time and wait for the answer before continuing.
Walk the user through configuring their UniFi Network controller connection. Ask one question at a time and wait for the answer before continuing.
Use the client target that matches the current agent runtime:
claudecodexopenclawIf the runtime is unclear, ask which client to configure. For questions, use the platform's blocking question tool when available (AskUserQuestion in Claude Code, request_user_input in Codex). If no blocking question tool is available, ask in chat with numbered options and wait for the user's reply.
On macOS and Linux, resolve setup scripts relative to this skill file:
../../scripts/check-prereqs.sh../../scripts/set-env.shWhen the host exposes a plugin-root variable such as CLAUDE_PLUGIN_ROOT, using $CLAUDE_PLUGIN_ROOT/scripts/... is also valid. Do not assume the current shell directory is the plugin root.
On Windows with Claude Code, use ../../scripts/set-env.ps1 for the final Claude settings write. On Windows with Codex, prefer the native PowerShell prereq script and call codex mcp add directly with the same env variables if Bash is unavailable. On Windows with OpenClaw, call openclaw mcp set directly with a JSON object containing command, args, and env if Bash is unavailable. Do not run the Bash prereq script on Windows unless the user explicitly asks to use a Bash environment.
Before asking for credentials, run the prereq checker for the current OS.
On macOS/Linux:
bash <path-to-plugin>/scripts/check-prereqs.sh --target <claude|codex|openclaw> "unifi-network"
On Windows PowerShell:
powershell -ExecutionPolicy Bypass -File <path-to-plugin>/scripts/check-prereqs.ps1 -Target <claude|codex|openclaw> -PluginName "unifi-network"
If the script exits non-zero, stop and report the error. Do not proceed to credentials.
Ask: "What is your UniFi controller's IP address or hostname?" Example: 192.168.1.1.
Ask for:
Username and password are required.
After collecting username and password, explain that UniFi API key support is experimental and limited to read-only operations and a subset of tools. Ask whether to configure an API key too.
If yes, ask for the API key and include UNIFI_NETWORK_API_KEY. If no, skip it.
Ask whether to use defaults or customize:
443, site default, SSL verification false, lazy tool loadingAsk whether to enable write permissions:
Collect any selected policy variables. Use the existing UNIFI_POLICY_NETWORK_<CATEGORY>_<ACTION>=true format.
On macOS/Linux, run the target-aware setup script with only values the user provided or selected:
bash <path-to-plugin>/scripts/set-env.sh --target <claude|codex|openclaw> \
UNIFI_NETWORK_HOST=<host> \
UNIFI_NETWORK_USERNAME=<username> \
UNIFI_NETWORK_PASSWORD=<password>
Add optional values and policy variables to the same command, for example:
bash <path-to-plugin>/scripts/set-env.sh --target <claude|codex|openclaw> \
UNIFI_NETWORK_HOST=<host> \
UNIFI_NETWORK_USERNAME=<username> \
UNIFI_NETWORK_PASSWORD=<password> \
UNIFI_NETWORK_API_KEY=<api-key> \
UNIFI_POLICY_NETWORK_FIREWALL_UPDATE=true
The script handles the client-specific write:
.claude/settings.local.jsonunifi-network MCP server via codex mcp add --env ... -- uvx ...unifi-network MCP server via openclaw mcp set ...For Claude Code, tell the user:
"Configuration saved to .claude/settings.local.json. Restart Claude Code or run /reload-plugins, then confirm the plugin is enabled with /plugin."
For Codex, tell the user:
"Codex MCP server unifi-network configured. Restart Codex so the updated MCP server is loaded."
For OpenClaw, tell the user:
"OpenClaw MCP server unifi-network configured. Restart the OpenClaw Gateway so the updated MCP server is loaded."
npx claudepluginhub sirkirby/unifi-mcp --plugin unifi-networkConfigures UniFi Access MCP server by prompting for controller host, API key or username/password credentials, and permissions; saves to .claude/settings.local.json via Bash or PowerShell.
Configures UniFi Protect NVR connection: prompts for host, username/password/API key, permissions, and writes to .claude/settings.local.json using platform scripts.
Manages Ubiquiti UniFi networks via unifly Rust CLI: VLANs, SSIDs, firewalls, NAT, DHCP reservations, clients, devices, events, stats, DPI, backups, raw API.