Skip to main content
Glama
UniFi MCP Server

UniFi MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
REDIS_DBNoRedis database number
REDIS_HOSTNoRedis host for caching
REDIS_PORTNoRedis port
AGNOST_ORG_IDNoAgnost organization ID
UNIFI_API_KEYNoYour UniFi API key from unifi.ui.com
UNIFI_PROFILENoTool scope profile: network, devices, security, system, or minimal
AGNOST_ENABLEDNoEnable agnost.ai performance tracking (true/false)
REDIS_PASSWORDNoRedis password if required
UNIFI_API_TYPENoAPI mode: local, cloud-v1, or cloud-ea
WEBHOOK_SECRETNoSecret for webhook HMAC verification
AGNOST_ENDPOINTNoAgnost API endpoint
MCP_SERVER_HOSTNoBind address0.0.0.0
MCP_SERVER_PORTNoServer port3000
UNIFI_LOCAL_HOSTNoLocal gateway IP address (required for local mode)
UNIFI_LOCAL_PORTNoLocal gateway port443
UNIFI_DEFAULT_SITENoDefault site IDdefault
UNIFI_CLOUD_API_URLNoCloud API URLhttps://api.ui.com
AGNOST_DISABLE_INPUTNoDisable input tracking
MCP_SERVER_TRANSPORTNoTransport mode: stdio, sse, http, streamable_httpstdio
AGNOST_DISABLE_OUTPUTNoDisable output tracking
UNIFI_LOCAL_VERIFY_SSLNoSSL verification for local gatewayfalse
UNIFI_SITE_MANAGER_ENABLEDNoEnable Site Manager multi-site tools for cloud-eafalse

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

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_site_detailsC

Get detailed site information.

list_sitesC

List all accessible sites.

compare_site_performanceA

Compare performance metrics across all sites.

Analyzes uptime, latency, bandwidth, and health status to identify best and worst performing sites.

get_cross_site_statisticsC

Get aggregate statistics across multiple sites.

get_hostC

Get host details by ID.

get_internet_healthC

Get internet health metrics across sites.

get_isp_metricsC

Get ISP metrics for a specific site.

get_sdwan_configC

Get SD-WAN configuration by ID.

get_sdwan_config_statusC

Get SD-WAN configuration deployment status.

get_site_health_summaryB

Get health summary for all sites or a specific site.

get_site_inventoryB

Get comprehensive inventory for a site or all sites.

Provides detailed breakdown of resources including devices, clients, networks, SSIDs, VPN tunnels, and firewall rules.

get_version_controlC

Get API version control information.

list_all_sites_aggregatedC

List all sites with aggregated stats from Site Manager API.

list_hostsC

List all managed hosts/consoles.

list_sdwan_configsC

List all SD-WAN configurations.

list_vantage_pointsC

List all Vantage Points.

query_isp_metricsC

Query ISP metrics with optional filters.

search_across_sitesB

Search for resources across all sites.

Search for devices, clients, or networks across all managed sites. Useful for locating resources in multi-site deployments.

connector_network_deleteC

Proxy a DELETE request to the Network Application via Cloud Connector.

connector_network_getA

Proxy a GET request to the Network Application via Cloud Connector.

Forwards the request to https://api.ui.com/v1/connector/consoles/{console_id}/proxy/network/{path} and returns the raw response.

connector_network_patchC

Proxy a PATCH request to the Network Application via Cloud Connector.

connector_network_postC

Proxy a POST request to the Network Application via Cloud Connector.

connector_network_putC

Proxy a PUT request to the Network Application via Cloud Connector.

connector_protect_deleteC

Proxy a DELETE request to the Protect Application via Cloud Connector.

connector_protect_getA

Proxy a GET request to the Protect Application via Cloud Connector.

Forwards the request to https://api.ui.com/v1/connector/consoles/{console_id}/proxy/protect/{path} and returns the raw response.

connector_protect_patchC

Proxy a PATCH request to the Protect Application via Cloud Connector.

connector_protect_postC

Proxy a POST request to the Protect Application via Cloud Connector.

connector_protect_putC

Proxy a PUT request to the Protect Application via Cloud Connector.

get_integration_clientC

Get a single connected client via the integration API.

get_integration_deviceC

Get a single adopted device via the integration API.

get_integration_dns_policyB

Get a single DNS policy via the integration API.

get_integration_wifi_broadcastC

Get a single WiFi broadcast via the integration API.

list_dpi_application_categoriesA

List DPI application categories via the integration API.

This endpoint is global (not site-scoped) and returns the canonical list of application categories used by DPI and traffic-routing features.

list_integration_clientsC

List connected clients via the integration API.

list_integration_device_tagsC

List device tags via the integration API.

list_integration_devicesC

List adopted devices via the integration API.

list_integration_dns_policiesB

List DNS policies via the integration API.

list_integration_networksC

List networks via the integration API.

list_integration_sitesA

List sites via the integration API.

Returns UUID-based site identifiers suitable for use with other integration API tools in this module.

list_integration_vpn_serversC

List VPN servers via the integration API.

list_integration_wansC

List WAN connections via the integration API.

list_integration_wifi_broadcastsC

List WiFi broadcasts (SSIDs) via the integration API.

assign_carrier_subscriber_planC

Assign a service plan to a UniFi Carrier Fabric subscriber.

attach_carrier_subscriber_hostC

Attach a gateway host to a UniFi Carrier Fabric subscriber.

create_carrier_subscriberC

Create a UniFi Carrier Fabric subscriber.

detach_carrier_subscriber_hostC

Detach the gateway host from a UniFi Carrier Fabric subscriber.

get_carrier_service_planB

Get a UniFi Carrier Fabric service plan by ID.

get_carrier_subscriberC

Get a UniFi Carrier Fabric subscriber by ID.

list_carrier_service_plansB

List UniFi Carrier Fabric service plans.

list_carrier_subscribersB

List UniFi Carrier Fabric subscribers.

resume_carrier_subscriberB

Resume a suspended UniFi Carrier Fabric subscriber.

suspend_carrier_subscriberC

Suspend a UniFi Carrier Fabric subscriber.

update_carrier_subscriberA

Update a UniFi Carrier Fabric subscriber.

Only provided fields are sent to the API. Spec semantics: an absent field leaves it unchanged, while an explicit null clears the field. This tool only sends provided fields, so use plan_id="" style clearing via direct API if ever needed.

download_innerspace_assetC

Download an asset (e.g. floor plan image) from InnerSpace.

get_innerspace_projectC

Get the InnerSpace project data for the integration on a console.

list_innerspace_access_pointsB

List access points known to InnerSpace on a console.

list_innerspace_floor_plansB

List InnerSpace floor plans on a console.

list_innerspace_inventoryB

List unplaced devices in InnerSpace inventory on a console.

list_innerspace_switchesC

List switches placed on InnerSpace floor plans on a console.

get_mobility_deviceC

Get detail for a UniFi Mobility device.

list_mobility_device_clientsC

List clients attached to a UniFi Mobility device.

list_mobility_devicesC

List devices in a UniFi Mobility workspace.

list_mobility_workspace_adminsC

List admins of a UniFi Mobility workspace.

list_mobility_workspacesB

List UniFi Mobility workspaces.

update_mobility_deviceC

Rename a UniFi Mobility device.

update_mobility_device_networkC

Update LAN / DHCP settings on a UniFi Mobility device.

update_mobility_device_wirelessC

Update WiFi settings on a UniFi Mobility device.

list_controllersA

List the UniFi controllers this server can reach.

Every controller-bound tool accepts a controller argument naming one of these; without it, calls go to the controller chosen with select_controller, then to the default.

Returns: Controllers (name, API type, host, default site, labels), the default controller, and this session's selection

select_controllerA

Choose the controller this session's later tool calls target.

A tool call's own controller argument still takes precedence.

get_active_controllerA

Show which controller a tool call without controller would target.

Returns: The controller name and where it came from: session (select_controller) or default; both are None when neither is set

health_checkA

Health check endpoint to verify server is running.

Returns: Status information

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
get_sites_resourceGet all UniFi sites. Returns: JSON string of sites list
get_site_manager_sites_resourceGet all sites from Site Manager API. Returns: JSON string of sites list
get_site_manager_health_resourceGet cross-site health metrics. Returns: JSON string of health metrics
get_site_manager_internet_health_resourceGet internet connectivity status. Returns: JSON string of internet health

TDQS

C2.6/5.0

Scored across 71 tools

Disambiguation2/5

The set exposes many overlapping read paths for the same concepts: list_sites, list_integration_sites, and list_all_sites_aggregated; get_site_details, get_site_health_summary, get_site_inventory, and get_cross_site_statistics; plus generic connector_network_get alongside specialized integration getters. Connector proxy tools also overlap conceptually with direct API tools, making it unclear when to use which path.

Naming Consistency4/5

Most names follow a predictable snake_case verb_noun pattern, and the connector_* family is internally consistent. Minor deviations like health_check, connector_network_post, and list_all_sites_aggregated keep it from being fully uniform, but the convention is still readable.

Tool Count1/5

Seventy-one tools is an extreme surface for a single MCP server, even one spanning multiple UniFi sub-products. The set is large enough to overwhelm tool selection and includes many parallel read-only variants that could be consolidated.

Completeness3/5

Coverage is broad across sites, clients, devices, connectors, Carrier Fabric, InnerSpace, and Mobility, and the connector proxy provides an escape hatch for raw Network/Protect operations. However, many integration-API resources only expose list/get, with no direct create/update/delete, so the lifecycle coverage is uneven.

Maintenance

ActivityActive
ResponsivenessUsually handled