UniFi Network MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| UNIFI_API_KEY | Yes | API key from your UniFi Console | |
| UNIFI_BASE_URL | Yes | Your UniFi Console URL (e.g., https://192.168.1.1) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| unifi_get_infoB | Get application information including version and whether it's a UniFi OS Console |
| unifi_list_sitesC | List all sites available to the API key |
| unifi_list_devicesB | List all adopted devices at a site |
| unifi_get_deviceB | Get a specific device by ID |
| unifi_get_device_statisticsC | Get latest statistics for a device |
| unifi_adopt_deviceC | Adopt a pending device |
| unifi_restart_deviceC | Restart a device |
| unifi_locate_deviceC | Enable or disable the locate function (flashing LED) on a device |
| unifi_list_pending_devicesB | List devices pending adoption (global, not site-specific) |
| unifi_power_cycle_portB | Power cycle a specific port on a device (PoE restart) |
| unifi_list_clientsC | List all connected clients (wired, wireless, VPN) at a site |
| unifi_get_clientB | Get a specific client by ID |
| unifi_authorize_guestC | Authorize a guest client on a hotspot network |
| unifi_list_networksB | List all networks at a site |
| unifi_get_networkC | Get a specific network by ID |
| unifi_create_networkC | Create a new network |
| unifi_update_networkC | Update an existing network |
| unifi_delete_networkC | Delete a network |
| unifi_get_network_referencesB | Get references to a network (what WiFi broadcasts, firewall zones, etc. use this network) |
| unifi_list_wifiC | List all WiFi broadcasts (SSIDs) at a site |
| unifi_get_wifiC | Get a specific WiFi network by ID |
| unifi_create_wifiC | Create a new WiFi network (SSID) |
| unifi_update_wifiC | Update an existing WiFi network |
| unifi_delete_wifiC | Delete a WiFi network |
| unifi_list_vouchersB | List all hotspot vouchers at a site |
| unifi_get_voucherB | Get a specific hotspot voucher by ID |
| unifi_create_voucherC | Create hotspot vouchers |
| unifi_delete_voucherC | Delete a hotspot voucher |
| unifi_bulk_delete_vouchersB | Bulk delete hotspot vouchers based on filter criteria (e.g., 'expired.eq(true)' to delete all expired vouchers) |
| unifi_list_firewall_zonesB | List all firewall zones at a site |
| unifi_get_firewall_zoneC | Get a specific firewall zone by ID |
| unifi_create_firewall_zoneC | Create a new custom firewall zone |
| unifi_update_firewall_zoneC | Update a firewall zone |
| unifi_delete_firewall_zoneC | Delete a custom firewall zone |
| unifi_list_acl_rulesB | List all ACL (firewall) rules at a site |
| unifi_get_acl_ruleC | Get a specific ACL rule by ID |
| unifi_create_acl_ruleC | Create a new ACL (firewall) rule |
| unifi_update_acl_ruleC | Update an ACL rule |
| unifi_delete_acl_ruleC | Delete an ACL rule |
| unifi_list_traffic_matching_listsB | List all traffic matching lists at a site (port groups, IP groups) |
| unifi_get_traffic_matching_listC | Get a specific traffic matching list by ID |
| unifi_create_traffic_matching_listC | Create a new traffic matching list |
| unifi_update_traffic_matching_listC | Update a traffic matching list |
| unifi_delete_traffic_matching_listC | Delete a traffic matching list |
| unifi_list_wansB | List all WAN interfaces at a site |
| unifi_list_vpn_tunnelsC | List all site-to-site VPN tunnels at a site |
| unifi_list_vpn_serversB | List all VPN servers at a site |
| unifi_list_radius_profilesB | List all RADIUS profiles at a site |
| unifi_list_device_tagsC | List all device tags at a site (used for WiFi broadcast assignments) |
| unifi_list_dpi_categoriesC | List all DPI (Deep Packet Inspection) categories for traffic identification |
| unifi_list_dpi_applicationsC | List all DPI applications for traffic identification and filtering |
| unifi_list_countriesB | List all countries/regions for geo-based rules (ISO codes and names) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 52 tools
Most tools have distinct purposes targeting specific resources and actions, such as unifi_get_acl_rule for retrieving a rule and unifi_update_acl_rule for modifying it. However, some overlap exists, like unifi_list_acl_rules and unifi_get_acl_rule, which could cause confusion if an agent needs to differentiate between listing all rules and fetching a specific one by ID, though descriptions help clarify this.
All tool names follow a consistent verb_noun pattern with a 'unifi_' prefix, such as unifi_create_network, unifi_delete_wifi, and unifi_list_devices. This uniformity makes the tool set predictable and easy to navigate, with no deviations in naming conventions.
With 52 tools, the count is excessive for a network management server, making it overwhelming and difficult for agents to manage. While the domain is broad, this many tools suggests poor scoping, as many operations could be consolidated or streamlined, leading to potential confusion and inefficiency.
The tool set provides comprehensive coverage for UniFi network management, including CRUD operations for key resources like networks, WiFi, ACL rules, and vouchers, along with monitoring, configuration, and maintenance tasks. No obvious gaps are present, ensuring agents can handle full lifecycle workflows without dead ends.