Skip to main content
Glama
dulithdivisekara

universal-tplink-mcp

router_set_cell_lock

Locks or unlocks a TP-Link router to a specific cellular tower using EARFCN and PCI. Unlocking returns to auto roaming; requires confirmation due to link renegotiation.

Instructions

Locks or unlocks the router to a specific cellular base station tower (EARFCN + PCI).

IMPORTANT: Changing the cell tower momentarily drops and renegotiates the cellular link. You MUST provide confirm=True to execute.

Args: enable: True to lock to cell, False to unlock (return to auto roaming). earfcn: E-UTRA Absolute Radio Frequency Channel Number (e.g. '1550' for Band 3). pci: Physical Cell Identity (e.g. '58'). confirm: Safety confirmation. Set to True to proceed with connection renegotiation. force: Set to True to bypass Network Guard safety check.

Input Schema

NameRequiredDescriptionDefault
pciNo
forceNo
earfcnNo
enableYes
confirmNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations at all, the description carries the full burden and does well: it warns that the cellular link momentarily drops and renegotiates, mandates confirm=True, and discloses that force bypasses the Network Guard safety check. What's missing is failure behavior (what happens if the cell is unreachable) and whether a lock survives reboot.

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?

Purpose is front-loaded in the first sentence, the disruptive side effect is called out in an IMPORTANT block before the parameters, and each arg line earns its place given zero schema descriptions. The Args section slightly restates what the schema titles already show, but that repetition is justified here.

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

Completeness5/5

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

For a destructive-by-nature mutation with no annotations, the description supplies the safety gate, the disruption warning, the bypass flag's meaning, and every parameter's semantics; return values are covered by the existing output schema. An agent has enough to invoke it correctly and cautiously.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must document all five parameters — and it does, with concrete examples ('1550' for Band 3, '58') plus the non-obvious semantics of force (bypasses Network Guard) and confirm (required safety gate). This adds meaning well beyond the bare string/boolean schema types.

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?

States a specific verb pair (locks/unlocks) and a precise resource: the router's cellular cell lock keyed by EARFCN + PCI. That implicitly separates it from band-level siblings like router_set_lte_band, but no sibling is named explicitly, so differentiation is left to inference.

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

Usage Guidelines3/5

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

The description gives the lock/unlock condition ('enable: True to lock to cell, False to unlock (return to auto roaming)') and a hard prerequisite (confirm=True), which is real guidance. It never says when an agent should choose this over router_set_lte_band or router_get_rf_signal, and offers no when-not guidance.

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