Skip to main content
Glama
jaseonline

unifi-console-mcp

by jaseonline

unifi_console_network

Destructive

Preview and apply LAN/VLAN network changes with safeguards: confirm=false returns a before/after diff and warnings; confirm=true applies using the preview fingerprint and approval note.

Instructions

Preview, then apply, a change to a LAN/VLAN network. Tier C: a wrong change can cut DHCP, the VLAN and routing for a whole segment.

Two steps, always: confirm=false returns a read-only preview (before, after, diff, what uses the network, the clients on it, warnings, errors, a fingerprint); then call again with the same fields plus confirm=true, that fingerprint and an approval_note. A new network is created disabled. The network that holds the console, a switch, an access point or the gateway needs acknowledge_infrastructure=true for disabling, deleting, or changing its VLAN, subnet or DHCP server; a network used by an SSID or switch port cannot be deleted; disabling it or disruptive edits with clients connected need acknowledge_disconnect=true. After a change that touches an enabled network every connected device must still be connected and DNS must still work, otherwise the previous state is restored once. WAN, VPN, IPv6 and DHCP options are not offered. Applying also needs UNIFI_CONSOLE_ENABLE_WRITES=true and 'network' in UNIFI_CONSOLE_WRITE_ENTITIES. Every write is journalled.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paramsYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, and the description adds substantial context beyond them: preview contents, fingerprint binding, post-change verification ('every connected device must still be connected and DNS must still work'), automatic single rollback on failure, new networks created disabled, and journaling of every write. This is unusually rich behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads purpose and the tier-C warning, then moves to the required two-step flow and finally to constraints and exclusions. It is dense and longer than average, but nearly every clause carries operational weight; a small amount of tightening is possible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, multi-action network tool this covers everything an agent needs: the mandatory preview/apply cycle, the approval and acknowledgement gates, auth/env requirements, failure and rollback behavior, and unsupported feature areas. An output schema exists and the description appropriately describes the preview contents rather than restating return shapes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is reported at 0%, so the description must carry weight, and it does for the workflow-critical fields: confirm/fingerprint/approval_note semantics, the two acknowledge_* flags with their triggering conditions, and enabled's create-only behavior. It does not explain the DHCP-related fields (dhcp_start/stop/dns/lease), though the schema itself describes those, leaving a small gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a concrete verb+resource+scope: 'Preview, then apply, a change to a LAN/VLAN network,' and immediately flags the risk class ('Tier C: a wrong change can cut DHCP, the VLAN and routing for a whole segment'). This clearly separates it from the read-side sibling unifi_console_network_list and from other write tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit two-step protocol (confirm=false preview first, then confirm=true with the same fields, fingerprint and approval_note), plus the conditions that gate the write: acknowledge_infrastructure for console/switch/AP/gateway networks, acknowledge_disconnect for disruptive edits with clients attached, and env-var prerequisites. It also states exclusions ('WAN, VPN, IPv6 and DHCP options are not offered'), which is exactly the when-not guidance an agent needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.