Skip to content
SZ-MCP
Get Support

The two API surfaces

SmartZone exposes two separate REST APIs, and SZ-MCP presents each as its own namespace. They are independent catalogues with independent tags — an endpoint on one is never reachable through the other.

wifiswitches
SmartZone APIWSG (wireless)SwitchM (switch)
Base path/wsg/api/public/{version}/switchm/api/{version}
Operations1,116238
Tags11942
Spec titleVirtual SmartZone - High ScaleSwitch Manager

Those counts come from the indexes bundled into the deployed Worker, built from specs vendored at version v13_1.

The version is detected once, from your controller, when you save credentials — and the same value is used to build the base path for both namespaces. There is no separate SwitchM version to configure.

This matters because the SwitchM base path does carry the version, exactly as WSG’s does. A call to switches.call({ path: '/switches' }) on a controller detected as v13_1 reaches /switchm/api/v13_1/switches.

Every primitive takes the raw path from the spec, starting with /. The base path is added server-side.

// Correct
await wifi.call({ method: 'GET', path: '/domains' });
await switches.call({ method: 'GET', path: '/switches' });
// Wrong — the prefix is added for you
await wifi.call({ method: 'GET', path: '/wsg/api/public/v13_1/domains' });

The service ticket is added server-side too. Although serviceTicket appears as a query parameter on nearly every operation in the spec, you never pass it.

The two catalogues are shaped very differently, and it is worth knowing which one a question belongs to before searching.

The WSG API is where zones, AP groups, WLANs, authentication and the system itself live. Its biggest tags:

TagOperations
Access Point Configuration81
AP Group79
Ruckus Wireless AP Zone38
System33
Application Visibility Control32
Authentication Service29
Cluster Management27
WLAN26

SwitchM covers switch configuration, groups, VLANs, ports and health:

TagOperations
Switch Configuration16
Switch CLI Config CLI Template14
Switch BGP eVPN13
Switch11
Switch Group9
Switch Traffic9
Switch VLAN Setting8
Switch Health7

Worth internalising before pointing Claude at a production controller: these are configuration APIs, and most of their operations change things.

Methodwifiswitches
GET31665
POST27289
PUT8136
PATCH942
DELETE35346

DELETE is the single most common method on the WSG surface. SZ-MCP does not gate by method — see Security model.

Specs are vendored, not fetched from your controller at runtime. SZ-MCP ships two artefacts per surface:

  • A slim index bundled into the Worker, holding one entry per operation: method, path, operationId, tags, summary and a parameter summary. This is what search_endpoints and list_endpoints_by_tag read, with no network call.
  • The full spec, stored in object storage and lazy-loaded the first time get_endpoint_details asks for that surface in a given isolate. That first load adds a few hundred milliseconds; subsequent calls in the same isolate are served from memory.