Skip to main content
Glama
owine

UniFi Network MCP Server

by owine

Get WiFi

unifi_get_wifi
Read-only

Get full configuration for a WiFi broadcast (SSID): security settings, filters, schedules, and advanced options; passphrases are redacted unless includeSecrets is true.

Instructions

Get full configuration for a WiFi broadcast (SSID). Returns the list fields plus the booleans (hideName, clientIsolationEnabled, uapsdEnabled, multicastToUnicastConversionEnabled, bandSteeringEnabled, arpProxyEnabled, bssTransitionEnabled, advertiseDeviceName, channel2gLockedTo6, dtimPeriod2gLockedTo3), the full securityConfiguration (type, pmfMode, fastRoamingEnabled, saeConfiguration, presharedKeys[] on PPSK SSIDs, …), and optional configs when configured (omitted otherwise): clientFilteringPolicy, blackoutScheduleConfiguration, hotspotConfiguration, mdnsProxyConfiguration, handoffSuggestionsConfiguration, dtimPeriodByFrequencyGHzOverride, broadcastingDeviceFilter, mloEnabled. Passphrases (securityConfiguration.passphrase, presharedKeys[].passphrase) are returned as "[REDACTED]" unless includeSecrets is true.

Input Schema

NameRequiredDescriptionDefault
siteIdYesSite ID
includeSecretsNoReturn WiFi passphrases in plaintext instead of "[REDACTED]" (default: false). Only set this when the user explicitly needs the key.
wifiBroadcastIdYesWiFi Broadcast ID

Output Schema

NameRequiredDescriptionDefault
idYes
nameNo
typeNo
enabledNo
networkNo
hideNameNo
metadataNo
mloEnabledNo
bandSteeringEnabledNo
securityConfigurationNo
broadcastingDeviceFilterNo
broadcastingFrequenciesGHzNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changedv2.15.0
    • addedInput schema / properties / includeSecrets
      Added value: +{
      +  "description": "Return WiFi passphrases in plaintext instead of \"[REDACTED]\" (default: false). Only set this when the user explicitly needs the key.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / siteId / pattern
      Added value: +"^[A-Za-z0-9_-]{1,64}$"
    • addedInput schema / properties / wifiBroadcastId / pattern
      Added value: +"^[A-Za-z0-9_-]{1,64}$"
    • changedOutput schema / additionalProperties
      Previous value: -falseNew value: +{}
    • addedOutput schema / properties / metadata / properties / configurable
      Added value: +{
      +  "type": "boolean"
      +}
  2. First observedv2.8.0

TDQS

A3.6/5.0
Behavior4/5

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

Beyond the readOnlyHint/destructiveHint=false annotations, it discloses meaningful behavior: which optional config blocks are omitted when unconfigured, and that passphrases come back as '[REDACTED]' unless includeSecrets is true. That redaction detail is a genuine security-behavior disclosure an agent needs. It stops short of describing error or auth behavior.

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

Conciseness3/5

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

The purpose is front-loaded in the first clause, which is good. However, the remainder is a single run-on sentence enumerating a long list of field names that largely duplicates what the output schema already provides, so much of the text does not earn its place.

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

Completeness4/5

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

An output schema exists, so return values need not be detailed, and annotations already cover the read-only safety profile. What the description must supply — the conditional redaction and the omission of unconfigured optional blocks — is present, leaving only sibling routing and error context unaddressed.

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

Parameters3/5

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

Schema description coverage is 100%, so siteId, wifiBroadcastId and includeSecrets are all documented in the schema itself. The description restates the includeSecrets redaction semantics but adds no new syntax, format, or defaulting detail beyond that. Baseline 3 applies when the schema carries the parameter burden.

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

Purpose4/5

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

States a specific verb and resource: 'Get full configuration for a WiFi broadcast (SSID)'. An agent can immediately tell this retrieves a single SSID's config, distinct from the sibling unifi_list_wifi. It does not, however, explicitly name the list sibling to route between them.

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

Usage Guidelines3/5

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

Usage is implied (a point-lookup for a specific broadcast), and the description notes the includeSecrets condition for returning plaintext passphrases. But it never states when to use this versus unifi_list_wifi, nor any prerequisites such as needing the broadcast ID from a prior list call.

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