Skip to main content
Glama

block_device

Idempotent

Blocks a device by MAC address from the Verizon Fios router network using a two-phase preview and confirm flow to prevent unauthorized access.

Instructions

Block a device (by MAC) from the network. Two-phase.

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": {
      "mac": "<mac>"
    },
    "name": "block_device"
  }
}

Input Schema

NameRequiredDescriptionDefault
macYes
confirmNo
expected_etagNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and closed-world scope, so the safety profile is partly covered. The description's only addition is 'Two-phase', which hints at a confirm protocol but never explains what each phase does, whether the first call is a no-op, or how expected_etag guards against races. For a mutation tool that omits those mechanics, the value added is thin.

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

Conciseness3/5

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

The text is short and front-loaded with the action, with no filler words. However, the brevity crosses into under-specification: the single most important behavior, the two-phase protocol, is compressed into two words rather than explained.

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

Completeness2/5

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

An output schema exists, so return values need no prose. Still, for a state-changing, three-parameter tool with zero schema description coverage, the definition omits the confirm/etag workflow that an agent needs to invoke it correctly, which is a material completeness gap.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry all parameter meaning; it clarifies only 'mac'. The two parameters that drive the advertised two-phase workflow, confirm and expected_etag, get no explanation anywhere, leaving the agent to guess their roles and the correct call sequence.

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 and resource ('Block a device'), the identifying parameter ('by MAC'), and the effect scope ('from the network'), which distinguishes it cleanly from unblock_device and list_blocked_devices. It stops short of naming the sibling it pairs with, but the purpose 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?

'Two-phase' is the only usage signal, and it is never unpacked: the agent is not told that a first call previews and a second call with confirm=true commits, nor when to prefer this over unblock_device or check list_blocked_devices first. No prerequisites or failure conditions are given.

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