Skip to main content
Glama
UniFi MCP Server

UniFi MCP Server

assign_carrier_subscriber_plan

Assign a service plan to a UniFi Carrier Fabric subscriber, with optional dry-run preview and confirmation before applying the change.

Instructions

Assign a service plan to a UniFi Carrier Fabric subscriber.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "subscriber_id": "<subscriber_id>",
      "plan_id": "<plan_id>"
    },
    "name": "assign_carrier_subscriber_plan"
  }
}

Input Schema

NameRequiredDescriptionDefault
confirmNoMust be true to apply the change (required unless dry_run)
dry_runNoPreview the change without applying it
plan_idYesService plan identifier (required)
controllerNoController to run against (see list_controllers). Defaults to the controller chosen with select_controller, then the server default.
subscriber_idYesSubscriber identifier

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.6.4
    • addedInput schema / properties / confirm / description
      Added value: +"Must be true to apply the change (required unless dry_run)"
    • addedInput schema / properties / dry_run / description
      Added value: +"Preview the change without applying it"
    • addedInput schema / properties / plan_id / description
      Added value: +"Service plan identifier (required)"
    • addedInput schema / properties / subscriber_id / description
      Added value: +"Subscriber identifier"
  2. Addedv0.6.1

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the behavioral burden for a mutation tool. It does not disclose the effect on an existing plan, whether the change is reversible, required permissions, or how confirm and dry_run govern execution, although those parameters are documented in the schema.

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

Conciseness4/5

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

The description is a single front-loaded sentence with no wasted text. Its brevity is appropriate structurally, though it leaves out important operational context.

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

Completeness3/5

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

The schema is rich: all parameters are documented and an output schema exists, reducing the description's burden for return values. However, for a mutation tool with no annotations, the description remains incomplete because it does not cover usage conditions or mutation safety.

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 all five parameters are already documented in the schema, including confirm, dry_run, controller, subscriber_id, and plan_id. The description adds no parameter-level meaning beyond what the schema provides.

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?

The description states a specific verb and resource: assigning a service plan to a UniFi Carrier Fabric subscriber. It does not explicitly differentiate this operation from nearby siblings such as update_carrier_subscriber, but the core action is unambiguous.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus alternatives, nor does it mention prerequisites such as confirming the plan exists or whether an existing plan is replaced. It only states the bare action.

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

Deploy Server

Other Tools