New Tool Architecture supports both the latest mcp clients that are capable of dynamically loading tools (Claude) as well as smaller self-hosted models like gpt-oss:20b. For all clients, unifi_tool_index will be the entry point; lazy-loading-aware clients will use unif_load_tools to load tools based on the prompt/request dynamically. For all other clients, unifi_execute({tool_name}) allows lazy-style tool use without loading all tools into context in eager mode. In addition, I reworked the async_job meta tool into a more useful unifi_batch tool, allowing more advanced jobs, such as mass device updates in a single job, and added unifi_batch_status to enable the LLM to check the completion status.
| Tool | Purpose |
|---|---|
| unifi_tool_index | CALL FIRST - Discover all 80+ tools with schemas |
| unifi_execute | Execute a single discovered tool (returns result directly) |
| unifi_batch | Execute multiple tools in parallel (returns job IDs) |
| unifi_batch_status | Check status of batch operations |
| unifi_load_tools | (Lazy mode only) Load tools for direct MCP access |
The workflow is now predictable: discover → execute (or discover → batch → status for parallel ops). Great for automated workflows.
Enhancements for automation and self-hosted clients & models
For automation tools like n8n and smaller self-hosted models like gpt-oss:20b, it's now possible to configure the server to load only specific tools or a specific tool category. Lazy loading is still the preferred method; however, if you are prompting for particular tools, then you can skip the extra tool calls and save context for tools you are never going to use.
config.yaml
enabled_categories: clients,devices
# Valid values:
# - clients # Client listing, blocking, guest auth
# - config # Configuration management
# - devices # Device listing, reboot, locate, upgrade
# - events # Events and alarms
# - firewall # Firewall rules and groups
# - hotspot # Vouchers for guest network
# - network # Network/VLAN management
# - port_forwards # Port forwarding rules
# - qos # QoS/traffic shaping rules
# - routing # Static routes (V1 API)
# - stats # Statistics and metrics
# - system # System info, health, settings
# - traffic_routes # Policy-based routing (V2 API)
# - usergroups # Bandwidth profiles/user groups
# - vpn # VPN servers and clients
enabled_tools: unifi_list_clients,unifi_top_clientsENV
UNIFI_ENABLED_CATEGORIES=clients,firewall,devices
UNIFI_ENABLED_TOOLS=unifi_list_vouchers,unifi_create_voucherFixes bug in #29
What's Changed
Full Changelog: v0.2.1...v0.3.1