vigor3912s-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vigor3912s-mcpshow me the current WAN status"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
jooservices/vigor3912s-mcp
MCP server (Model Context Protocol) for a DrayTek Vigor 3912S router (DrayOS) over SSH.
Covers the full CLI command set (217 commands across 42 families) as MCP tools:
Read commands (108) run freely — verified view/status/display commands, all 108 verified against the real router (fw 4.4.7_RC2).
Write commands (109) require a two-step confirm gate (preview → single-use 60s token) before execution. Lockout-prone writes also need
acknowledge: true.
Status
v0.6.0 — local stdio MCP server for trusted LAN use; hosted on
jooservices/vigor3912s-mcp.
Local deployments should expose only read tools by default
(EXPOSE_TOOLS=readonly). Write tools are exercised in CI against a simulated
DrayOS server (npm run e2e:testing, EXPOSE_TOOLS=all).
Related MCP server: AsusWRT MCP Server
Documentation
Command registry · Logging schema · Configuration · MCP integration
Vigor 3912S reference (self-contained, incl. original PDFs)
Safety model
SSH host-key pin — set
VIGOR_SSH_HOST_FINGERPRINT(required). UseVIGOR_SSH_INSECURE_SKIP_VERIFY=trueonly for tests / simulated DrayOS.Read tools — unit tests (mocked shell) and read-only E2E (
npm run e2e); E2E never calls a write tool on a real router.Write tools — unit tests with a mocked shell; CI E2E against simulated DrayOS only. A write executes only after confirm (token or human code).
Confirm gate — single-use 60s token bound to the exact rendered command.
Dangerous writes — additionally require
acknowledge: trueand return a lockout warning (policy insrc/commands/write-policy.ts).Human confirm (optional) —
VIGOR_HUMAN_CONFIRM=truehides the token; approve withconfirmation_id+VIGOR_CONFIRM_PASSPHRASE.Auto-commit — after a successful confirmed write,
sys commitruns (VIGOR_AUTO_COMMIT; skipped forskipCommit). Outcome inwrite_audit.commit_status.Command mutex — commands are serialized on the shared SSH shell.
Hard blocklist —
sys cfg default,sys halt,mngt rmtcfg enable,linux clean *refused regardless of the registry.Tool filters —
EXPOSE_TOOLS/VIGOR_DISABLED_TOOLS; read output capped viaVIGOR_TOOL_OUTPUT_LIMIT.Injection guards — shared Zod validators (
safeText/noControl/ipv4Mask, …).Credentials live only in
.env(chmod 600, gitignored); secret args are redacted in SQLite logs.
Architecture
opencode ←stdio→ MCP server (Node 24 + TypeScript)
│ ssh2 interactive shell channel
▼
DrayOS CLI @ <VIGOR_HOST> (prompt `DrayTek> `)Layer | Role |
| CLI catalog by family ( |
| Shared Zod arg schemas |
|
|
| Confirm → snapshot → execute → commit → audit |
| MCP tool registration |
| Registry-derived allowlist for |
| Interactive shell client + host-key verify |
DrayOS SSH does not support the exec channel or key auth — password auth and an interactive shell only.
Tools
Every registry command becomes an MCP tool:
Read tools (108) — run the CLI and return output (structured when a parser exists). Formatters receive validated args (e.g.
ip_pingtarget).Write tools (109) — first call returns a preview +
confirm_token(orconfirmation_idin human-confirm mode); second call executes.
Tool | CLI (live-verified, fw 4.4.7_RC2) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Requirements
Node.js >= 24
Router SSH enabled (
System Maintenance >> Management), reachable on the LANAdmin password and SSH host fingerprint in
.env
Setup
cp .env.example .env
# Set VIGOR_HOST / PORT / USER / PASSWORD
# Pin the host key (required for live routers):
ssh-keyscan -t rsa,ecdsa,ed25519 "$VIGOR_HOST" 2>/dev/null | ssh-keygen -lf - -E sha256
# → put the SHA256:… value in VIGOR_SSH_HOST_FINGERPRINT
# Recommended local surface:
# EXPOSE_TOOLS=readonly
chmod 600 .env
npm install
npm run buildRegister in opencode
Add to opencode.json (project or global):
{
"mcp": {
"vigor3912s": {
"type": "local",
"command": ["node", "/abs/path/to/vigor3912s-mcp/dist/index.js"],
"cwd": "/abs/path/to/vigor3912s-mcp",
"enabled": true
}
}
}Restart opencode, then: get the WAN status from the router.
Logging (SQLite)
Every router request is logged to data/vigor3912s.db (or VIGOR_LOG_DB, WAL):
requests— tool, CLI, args, outcome, timing, output excerptwrite_audit— preview / executed / failed / expired / mismatch / denied, optional before/after snapshots,commit_status
Passwords and configured secretArgs are redacted to ***. Logging is
best-effort and never blocks a router command.
sqlite3 data/vigor3912s.db "SELECT ts, tool_id, command, outcome FROM requests ORDER BY id DESC LIMIT 20;"
sqlite3 data/vigor3912s.db "SELECT ts, tool_id, status, success FROM write_audit ORDER BY id DESC LIMIT 20;"Development
npm run lint # tsc --noEmit
npm test # unit tests (mocked ssh2; no router)
npm run e2e # read tools vs real router (needs .env + host pin)
npm run e2e:testing # full tool surface vs simulated DrayOS (CI)Security
See SECURITY.md for the threat model, live-router ops
(HUMAN_CONFIRM / readonly), and accepted risks (noControl passwords,
internal sys commit after a gated write).
Never weaken the driver allowlist/blocklist or the confirm gate.
Do not set
VIGOR_SSH_INSECURE_SKIP_VERIFY=trueagainst a live router on an untrusted LAN.
Available Tools
217 toolsapm_disableB
Disable AP management (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the full burden of behavioral disclosure. It does add value by stating that this is a write operation requiring confirmation, but it doesn't explain the confirmation flow, side effects, reversibility, or failure behavior. The disclosed traits are correct and useful, but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler: the action ('Disable AP management') comes first, followed by the essential 'write — requires confirmation' qualifier. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a write tool with three undocumented parameters DN and no output schema, this one-line description is insufficient. It leaves the agent guessing about how to initiate confirmation, what to supply for each field, and what indicates success. The description is far too sparse for reliable autonomous invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain user_code, confirm_token, or confirmation_id. The phrase 'requires confirmation' weakly hints that confirm_token and confirmation_id are involved, but an agent still has no idea how to obtain or format these values. The description fails to compensate for schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Disable AP management') and the 'write' qualifier explicitly marks it as a mutation, clearly distinguishing it from read-only AP tools like apm_show and apm_query. The sibling apm_enable provides the direct contrast, making the tool's role unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives such as apm_enable or apm_show. The parenthetical 'requires confirmation' is a behavioral warning, not a usage condition, so an agent gets no context about prerequisites, sequencing, or situations that call for this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apm_enableC
Enable AP management (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It does explicitly label the operation as 'write' and notes that it 'requires confirmation,' which gives useful safety context. However, it does not explain side effects, reversibility, authorization requirements, or the confirmation flow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and free of filler, but it omits essential invocation details. This reads as under-specification rather than disciplined conciseness, since the agent still lacks enough context to call the tool correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three undocumented parameters, no output schema, and no annotations, this description is incomplete. The agent can infer the high-level action but cannot determine how to supply confirmation parameters or what a successful invocation requires, so it barely crosses the minimum viable threshold.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for three undocumented parameters. The phrase 'requires confirmation' hints at why confirm_token and confirmation_id exist, but it does not explain user_code or clarify how the parameters relate to a real invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Enable AP management.' This is a specific, actionable purpose and is distinguishable from the sibling 'apm_disable' by the enable/disable direction, though it does not explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like apm_disable or apm_show, nor about prerequisites such as how to obtain user_code, confirm_token, or confirmation_id. There are no exclusions or alternative routing hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apm_queryC
AP query (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The 'read-only' note is a genuinely useful safety signal that tells the agent this operation has no mutating side effects. However, nothing else is disclosed - no return format, no indication of result size or data characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three words with zero waste, and the read-only safety trait is front-loaded. But the brevity crosses the line into under-specification rather than effective conciseness - it is comparable to the 'Process' example in being too sparse to carry meaning, though it is saved by adding the read-only hint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 0-param tool, the agent needs to know what the query returns and when it is the right choice. There is no output schema to compensate for the missing return-value description, and no indication of how apm_query relates to apm_show or apm_stanum. The read-only note and empty schema reduce misuse risk, but the tool is not adequately specified for correct selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty schema, so per the calibration baseline, 0 params earns a 4. There is no parameter information the description could add because none exist; the schema coverage is trivially 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb ('query') and a resource ('AP'), so it is not a tautologytons. However, 'AP query' is vague - it doesn't specify what aspect of AP is being queried or what operation is performed. Critically, it does not distinguish itself from siblings in the same domain such as apm_show and apm_stanum, which an agent could easily confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. With over 200 sibling tools including apm_show, apm_stanum, apm_enable, and apm_disable, the description provides no selection criteria or exclusions. The agent is left to infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apm_showB
AP management status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly says 'read-only', which is a key behavioral trait. With no annotations provided, this is the only behavioral disclosure. It does not mention output format, response size, or any other side effects, but for a simple read operation it adds some value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient phrase: 'AP management status (read-only)'. It is front-loaded and contains no wasted words. It is as concise as possible while conveying the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description is extremely minimal. It does not specify what fields or information the status will contain, nor does it clarify the meaning of 'AP' or provide any context about the response. An agent would not know what to expect from the tool's output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description does not need to explain any. The baseline for 0 params is 4, and the description does not add any parameter-related meaning, which is fine since there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('AP management status') and the read-only nature, which makes it clear it's a status query. However, it does not differentiate from sibling tools like apm_query or apm_stanum, so the exact scope of what status is shown remains ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description does not mention any conditions, prerequisites, or comparisons to other show/AP tools, leaving the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apm_stanumB
AP station number (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral transparency burden, and the parenthetical '(read-only)' does add a useful explicit signal that calling this tool has no side effects. However, it does not describe what value is returned, how the result is formatted, or whether any APM feature needs to be enabled first. The read-only disclosure is helpful but leaves meaningful behavioral details to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely compact and front-loaded, with no filler or redundant phrasing. It loses one point because it is a sentence fragment that omits the operation verb, but for a parameterless read-only accessor the brevity is still appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument, read-only tool the description is nearly enough to invoke correctly, but the lack of an output schema and lack of an explicit statement about what is returned creates ambiguity around 'station number' (e.g., a count vs. an identifier). It also gives no contextual connection to the APM sibling tools, so an agent has to guess when this tool is the right one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% schema description coverage, so there are no parameter semantics for the description to clarify. The baseline for a parameterless tool is 4, and no information is missing in this dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource, 'AP station number,' and marks it as read-only, so the general intent is understandable. However, it is a noun phrase rather than a statement with an action verb, leaving the agent to infer that the tool retrieves or reports this value. It also does not distinguish itself from nearby siblings like apm_show or apm_query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when this tool should be used instead of related APM tools such as apm_show, apm_query, apm_enable, or apm_disable. No preconditions, alternatives, or exclusions are mentioned. The description provides zero usage context beyond the vague read-only label.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
appqos_enableB
Enable/disable APP QoS (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It usefully discloses that the operation is a write and requires confirmation, which is a meaningful safety signal. However, it does not explain the confirmation workflow, side effects, or whether the operation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact, front-loaded sentence with no filler. Every word contributes to the action, the resource, or the critical confirmation requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with confirmation parameters, no annotations, and no output schema, this description is incomplete. An agent cannot determine how to obtain confirmation_id/confirm_token, what mode values mean, or what the result of the operation will be.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to explain mode, user_code, confirm_token, and confirmation_id. It only implies mode through 'enable/disable' and leaves the confirmation-related parameters completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (enable/disable) and a specific resource (APP QoS), making the tool's core purpose immediately clear. The parenthetical 'write — requires confirmation' further distinguishes it from the many read-style sibling tools such as appqos_view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives like appqos_view or qos_setup. The intended use is implied only by the verb and tool name, and no prerequisites such as how to obtain a confirmation token are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
appqos_viewA
APP QoS profile view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description is the only source of behavioral information. It explicitly states 'read-only', which is a valuable safety cue for an agent. However, it does not describe what the returned profile contains, whether it reflects running or saved configuration, or any failure conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase that front-loads the resource and read-only nature. Every word contributes; there is no filler. For a zero-parameter view tool, this is appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no params, no output schema, no annotations), and the description gives the core action and safety profile. Still, it omits any detail about the content or format of the APP QoS profile data and does not differentiate from other QoS-related tools, so an agent gets only minimal context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty and schema description coverage is 100%, so there are no parameters to document. For a zero-parameter tool, the description correctly conveys that no arguments are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact resource ('APP QoS profile') and operation ('view'), and explicitly marks it read-only, which separates it from mutation siblings like appqos_enable. It is concise and not a tautology. The intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to choose this tool over alternatives such as qos_setup, qos_class, or appqos_enable. The 'view' wording implies an inspection use case, but there are no explicit conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
csm_appe_setB
Set APP enforcement profile (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose that this is a write operation requiring confirmation, which is meaningful. However, it does not explain what 'requires confirmation' entails, what side effects may occur, or whether additional confirmation steps are needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with no filler, front-loading the verb and object. While brevity is a strength, it omits information that could be useful, so it is efficient but not fully structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations, no output schema, and zero schema parameter descriptions, yet the description only states the high-level purpose. It does not cover the confirmation flow, required parameter semantics, or expected return behavior, leaving the agent with significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain any of the four parameters, including the required 'param'. The agent is left without guidance on what values to pass for param, user_code, confirm_token, or confirmation_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Set' with a clear resource 'APP enforcement profile', and explicitly notes it is a write operation. This differentiates it from the sibling read tool csm_appe_show without requiring the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as csm_appe_show or other configuration tools. The phrase 'write — requires confirmation' implies a configuration action but does not state conditions, exclusions, or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
csm_appe_showB
APP enforcement profile view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explicitly states 'read-only', which signals no side effects and is useful. However, it does not describe what the tool returns (e.g., profile fields, formatting) or any prerequisites, leaving the agent to guess the output structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase that immediately states the purpose and read-only nature. It is front-loaded, contains zero filler, and is appropriately sized for a parameterless tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is minimal. It states what it is ('view') but does not specify the return format or content, which the agent would need to interpret results. Since it is a simple show tool, this is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema coverage is trivially 100%. Per the rubric, a baseline of 4 applies. The description adds nothing about parameters because none exist, but no compensation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('APP enforcement profile') and the verb ('view'), and explicitly notes it is read-only, which distinguishes it from the sibling csm_appe_set. However, it does not explicitly name the alternative or contrast it, so it stops short of perfect clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many sibling show tools or the setter csm_appe_set. The description implies it is for viewing but gives no context such as 'use this to check current settings' or exclusions. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
csm_dnsfC
DNS filter settings (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior itself. It mentions that it is a write and requires confirmation, but does not explain the confirmation flow, what the write changes, whether it is destructive or reversible, or what the response contains. This is minimal disclosure for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise, but it is under-specified rather than efficient. It front-loads the key facts (write, requires confirmation) but leaves critical details unaddressed, so the brevity is not helpful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (write operation, 4 parameters, no output schema, no annotations), the description is grossly insufficient. It does not explain the confirmation mechanism, parameter meanings, expected outcomes, or error conditions. An agent cannot reliably call this tool correctly based on the description alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention any of the four parameters (param, user_code, confirm_token, confirmation_id). The agent gets no guidance on what values to supply, so it must rely entirely on the bare schema, which lacks descriptions. The description adds no semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (DNS filter settings) and the action (write) clearly, and notes the requirement for confirmation. It distinguishes itself from the many read-only show_* siblings by indicating a write operation, though it doesn't detail exactly what the write does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, typical use cases, or any contrast with sibling tools that might also modify DNS or filter settings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
csm_ucfC
URL content filter settings (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and it does disclose two important traits: the operation mutates state ('write') and it requires confirmation. However, it omits specifics such as what 'requires confirmation' means for the invocation flow, whether existing settings are overwritten, or what response is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is very short and front-loaded, with no wasted words. However, it is more terse than structured and omits necessary contextual detail, making it under-specified rather than efficiently complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given four parameters, no annotations, no output schema, and zero parameter descriptions, this fragment is far from complete. An agent cannot infer the required parameter semantics, the confirmation flow, or the effect of the operation well enough to reliably invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description provides no meaning for the required 'param' parameter or for 'user_code', 'confirm_token', and 'confirmation_id'. The confirmation-related fields are not explained, so an agent cannot determine what values to supply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource, URL content filter settings, and labels the operation as 'write', which conveys mutation. It does not explicitly name sibling alternatives, so it lacks clear differentiation, but it is not tautological and an agent can form a basic idea of the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 related siblings such as csm_wcf, csm_dnsf, csm_appe_set, or any read-style tools. It only notes that confirmation is required, leaving the selection context entirely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
csm_wcfC
Web content filter settings (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It discloses that this is a write operation and requires confirmation, which is useful, but it doesn't explain the confirmation flow, what happens after the write, or any side effects. It's minimal but not contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the resource and operation. It's efficient but omits essential details, so it's not well-structured for usability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no schema descriptions, no annotations, and no output schema, the description is far too sparse. It doesn't explain how to use the confirmation mechanism, what the 'param' string should contain, or what the tool returns. It's inadequate for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage, so the description must explain the parameters. It does not mention any of the four parameters (param, user_code, confirm_token, confirmation_id) or their meaning. This is a critical gap for an agent to invoke the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear purpose: writing web content filter settings, and notes it requires confirmation. It distinguishes from sibling read-only tools like csm_appe_show and other csm_* write tools, though it doesn't detail what settings are configurable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It doesn't mention that this is for write operations while others are for show, nor does it explain prerequisites like obtaining a confirmation token.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ddns_enableB
Enable/disable DDNS (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. 'write — requires confirmation' meaningfully discloses that this is a mutating operation and that a confirmation step is involved. Still, it does not explain what enabling/disabling DDNS does in practice or how confirmation is obtained, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded: the core action appears first, with the write/confirmation caveat in a parenthetical. It wastes no words, though it could be slightly more informative about parameters and the confirmation flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write operation with four parameters, no annotations, and no output schema, so the description needs to explain more. The current text covers the basic action and the need for confirmation, but does not explain how the confirmation-related parameters interact, what the expected outcome is, or what prerequisites exist. An agent calling this tool without additional context would be guessing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It maps loosely to onoff via 'enable/disable' and hints at confirmation fields via 'requires confirmation', but it does not explain user_code, confirm_token, or confirmation_id. This is insufficient for an agent to confidently supply all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Enable/disable DDNS', which clearly identifies the operation this tool performs. It also distinguishes itself from siblings like ddns_show, ddns_log, and ddns_forceupdate by implying status viewing/logging/force-updating are separate actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The verb 'Enable/disable' gives an implicit usage context: use this when toggling the DDNS state. However, it does not explicitly state when to avoid this tool or compare it to alternatives such as ddns_show or ddns_forceupdate. The confirmation note is a hint but not a full usage guide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ddns_forceupdateC
Force DDNS update (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must itself disclose behavior; it does clearly say this is a write action and that confirmation is required. However, it does not explain the confirmation flow, what side effects a forced update has, or what happens if the confirmation is invalid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The one-line description is front-loaded and free of filler, which is good, but it is also under-specified for a write tool with three undocumented parameters. Brevity here crosses from concise into incomplete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations, no output schema, 0% parameter coverage, and zero required parameters, the description does not explain how to invoke the operation correctly or interpret the result. It is minimally usable at best.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no descriptions for user_code, confirm_token, or confirmation_id (0% coverage), and the tool description does not explain or map these parameters. 'Requires confirmation' only hints at the token/id fields without giving the agent enough to populate them correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource ('Force DDNS update') and flags it as a write operation, which separates it from the surrounding read/query tools like ddns_show and ddns_log. It mostly restates the tool name and doesn't explicitly contrast it with ddns_enable, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to force an update versus using ddns_show, ddns_log, or ddns_enable, and no mention of prerequisites such as obtaining or supplying a confirmation. The 'requires confirmation' note is a precondition, not a usage rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ddns_logC
DDNS log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral disclosure. It only states 'read-only', which hints at non-destructive behavior, but does not describe the output format, whether logs are filtered, or any rate limits. This is insufficient for a log tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using a single phrase without redundancy. The 'read-only' parenthetical adds a key behavioral hint. It is efficiently front-loaded, though the brevity comes at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large set of sibling tools including many log-related tools, this description is incomplete. It does not state what the log contains, how it is formatted, or how it differs from similar tools like log_tail. The absence of an output schema and behavioral details leaves a significant gap for an agent trying to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is fully covered and there is nothing to explain. The description correctly omits parameter details, and the baseline of 4 applies because there is no need for additional semantic explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'DDNS log (read-only)' clearly identifies the resource and action (reading logs), but it is vague about what exactly is returned. It doesn't explicitly distinguish from sibling log tools like log_tail or ddns_show, though 'log' implies it's different from configuration display. The purpose is generally clear but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. No mention of when to prefer ddns_log over ddns_show or other log tools. The description provides no context for selection, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ddns_showC
DDNS configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states 'read-only', which is a behavioral trait, but with no annotations, it carries the full burden. It does not explain what the tool returns, whether it queries live data, or any potential errors. This is insufficient for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it borders on under-specification. It is not a tautology because it adds 'read-only', but it is terse enough that an agent may not fully grasp the tool's function. It is appropriately front-loaded but lacks substance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with no output schema, the description should explain what information is returned or displayed. It does not, nor does it mention any prerequisites or context. Given the large set of sibling tools, this is incomplete for effective tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema has no properties, so the description need not add parameter details. Per guidelines, baseline is 4 for 0 params, and the description does not detract from that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (DDNS) and that it is read-only, but does not specify what aspect of configuration is shown (e.g., current settings, status, or all parameters). It is not a tautology, but it lacks specificity and does not differentiate from related show tools like ddns_log or show_dns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention related DDNS tools (ddns_log, ddns_enable, ddns_forceupdate) or any conditions for selection. An agent has no basis for choosing this over similar show commands.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_dns1B
Set DHCP primary DNS (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| dns | Yes | ||
| lan | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the whole burden. It does disclose that this is a 'write' operation that 'requires confirmation', which is an important behavioral trait. However, it does not explain the confirmation workflow or what happens if confirmation is not provided, and it gives no information about side effects or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no redundant words. It is appropriately short for a simple config tool, though the terseness prevents it from covering crucial workflow details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool is a mutating operation with a confirmation flow and five parameters, the description is too sparse. It omits how the confirmation parameters interact, what the agent should expect after invoking it, and any return contract. There is no output schema, so the description needs to cover more of the call contract.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only alludes to 'primary DNS' and 'confirmation'. The five parameters (lan, dns, user_code, confirm_token, confirmation_id) are not explained beyond the schema's basic types/ranges. The description fails to compensate for the undocumented confirmation parameters, leaving an agent to guess their roles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set') and resource ('DHCP primary DNS'), and the word 'primary' distinguishes it from the dhcp_dns2 sibling. The parenthetical 'write — requires confirmation' also signals the action type, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for setting the primary DHCP DNS and mentions a confirmation requirement, but it does not explicitly compare with dhcp_dns2 or state when to choose one over the other. No prerequisites or exclusion criteria are given, leaving usage guidance to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_dns2B
Set DHCP secondary DNS (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| dns | Yes | ||
| lan | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly flags 'write' and 'requires confirmation', which signals a mutating operation requiring extra steps. However, it does not explain the confirmation flow itself, what confirmation parameters are needed, or any side effects. With no annotations provided, the description carries the burden but only partially fulfills it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, tightly packed sentence contains the essential action and a critical caveat ('write — requires confirmation'). It is front-loaded and contains no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is too sparse for a confirmation-gated write operation. It omits the workflow needed to obtain confirmation tokens, the meaning of lan, and what happens on success/failure. With no output schema and no annotations, an agent cannot confidently execute this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does not explain any of the five parameters, including the roles of user_code, confirm_token, and confirmation_id, or how lan/dns relate to the operation. The agent gets no value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a clear verb and resource: 'Set DHCP secondary DNS'. The word 'secondary' distinguishes it from sibling dhcp_dns1, so an agent can tell which DNS parameter is being modified. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is provided. It doesn't mention prerequisites, when to prefer this over dhcp_dns1 or other DHCP settings, or any conditions under which this should be used. The agent must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_gatewayC
Set DHCP pool gateway (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| lan | Yes | ||
| gateway | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It states 'write — requires confirmation', which indicates a mutation and a confirmation step. However, it does not explain the confirmation mechanism, any side effects, or permission requirements. This is minimal but non-zero.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, efficiently front-loading the action and the confirmation requirement. It is appropriately short, but the brevity sacrifices necessary detail. As a concise statement, it is well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is inadequate for a tool with 5 parameters and a confirmation flow. It fails to explain the confirmation process, parameter semantics, or any prerequisites. Given no annotations and no output schema, the description must provide more context, which it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description provides no parameter information. The schema defines 5 parameters (lan, gateway, user_code, confirm_token, confirmation_id), but the description does not explain any of them. The agent must rely on names and types alone, which is insufficient for a confirmation flow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource: 'Set DHCP pool gateway'. It identifies the specific verb and target, which is clear. However, it does not explicitly differentiate from sibling DHCP set tools like dhcp_startip or dhcp_dns1, though the name itself is fairly specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description provides no context about prerequisites, use cases, or when to choose this over other DHCP configuration tools. An agent gets no help in selecting this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_leasetimeB
Set DHCP lease time (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| lan | Yes | ||
| seconds | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does add useful traits beyond the name by stating that this is a write operation and that it requires confirmation. However, it does not explain what the confirmation flow involves or what side effects, if any, occur before confirmation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, front-loads the core purpose, and adds a critical parenthetical warning about confirmation. Every word earns its place, and there is no filler or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a mutating operation with five parameters, no output schema, and a stated confirmation requirement, the description is too thin. It does not describe how confirmation works, which parameters are needed for confirmation, or what the agent should expect after the call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and none of the five parameters are described. The description only clarifies that 'seconds' relates to lease time; it does not explain the meaning of 'lan', 'user_code', 'confirm_token', or 'confirmation_id'. With such low coverage, the description should have compensated but does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Set' with a clear resource, 'DHCP lease time', and is clearly distinct from sibling DHCP tools like dhcp_on, dhcp_off, dhcp_startip, dhcp_gateway, dhcp_dns1, and dhcp_dns2. An agent can understand what this tool does without needing to inspect the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternative DHCP-related tools, and it gives no explicit context for deciding between this and sibling write operations. The only usage hint is the implicit meaning from the tool name itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_offA
Disable DHCP server (requires reboot to apply) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for revealing behavior. It clearly states that this is a write operation, requires confirmation flow, and requires a reboot to apply. This adds meaningful across beyond the bare tool name and beyond any schema information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: one noun phrase plus two parentheticals. Every token adds crucial and relevant boolean dosing (purpose, effect, write/confirmation requirement). No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters entirely unimplemented in both schema and description, and no output schema, the tool is not callable correctly from description alone. The word task is simple, but invocation details (what user_code, acknowledge, confirm_token, confirmation_id each mean) are essential and missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for parameters, so the description must compensate. It only mentions that confirmation is required, which implicitly relates to confirm_token/confirmation_id (and acknowledge), but it never explains user_code, ack know. How these parameters should be provided, or their semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific action verb and resource ('Disable DHCP server'), making the tool's purpose unmistakable and clearly distinguishing it from sibling tools like dhcp_on, dhcp_status, and other DHCP configuration commands. It is a specific verb+resource statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives context (write, requires reboot, requires confirmation) but does not explicitly state when to use this tool against alternatives. It implies use when to disable DHCP, but does not name dhcp_on or other excluded cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_onA
Enable DHCP server (requires reboot to apply) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It explicitly discloses that this is a write operation, requires confirmation, and only takes effect after a reboot. This is meaningful behavioral context beyond the schema, though the exact confirmation flow is not detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient line with the action front-loaded and important warnings in compact parentheticals. Every word adds value, and there is no unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write operation with no output schemaasi and four unexplained parameters. The description notes reboot and confirmation but does not explain the confirmation mechanism, how to obtain confirmation IDs, or how to populate user_code. An agent would lack critical details needed to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and all four parameters are undocumented in the description. The mention of confirmation hints at the purpose of acknowledge, confirm_token, and confirmation_id, but user_code and the exact semantics or required values of these parameters remain unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Enable DHCP server'. This makes the tool's purpose immediately obvious and distinguishes it from dhcp_off and other DHCP configuration tools without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: use this tool when you want to enable the DHCP server. However, it does not explicitly state when not to use it, mention alternatives, or describe prerequisites beyond the reboot requirement, so it provides only implied guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_startipB
Set DHCP start IP and pool count (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| lan | Yes | ||
| count | Yes | ||
| start | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose that this is a write operation requiring confirmation. However, it does not explain the confirmation workflow, the meaning of the confirmation-related parameters, or side effects such as whether existing pool settings are overwritten or changes require a commit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with no filler, and the core action is front-loaded. The parenthetical adds a critical behavioral note without bloating the text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter tool with no output schema, no annotations, and zero schema descriptions, this description is far too sparse. It omits the confirmation protocol implied by the optional fields, the meaning of 'pool count', and any expected behavior or response, making correct invocation uncertain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only loosely maps 'start IP' and 'pool count' to the start and count parameters. It provides no meaning for lan, user_code, confirm_token, or confirmation_id, so the agent must infer their purpose entirely from the schema names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and target ('Set DHCP start IP and pool count'), which clearly identifies the operation and distinguishes it from sibling DHCP setters like dhcp_gateway or dhcp_leasetime. The parenthetical about write and confirmation further removes ambiguity about the tool's nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives, and no prerequisites are stated beyond a vague 'requires confirmation'. An agent cannot tell from the description whether this is the right tool for initial DHCP pool setup or how it relates to sibling tools like dhcp_on or dhcp_leasetime.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dhcp_statusA
DHCP server status + lease/reservation table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden. The explicit '(read-only)' is a valuable behavioral signal that prevents misuse. However, it does not describe the response format, whether data is live or cached, or any other operational characteristics beyond being read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact phrase that front-loads the primary resource ('DHCP server status') and appends the important read-only qualifier. No filler, redundancy, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-argument read-only status command, the description gives enough high-level information to invoke it safely and understand the category of return data. It does not enumerate the lease/reservation table contents, but that level of detail is not essential for a simple status tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool accepts zero parameters, so parameter documentation is unnecessary. The empty schema and description together fully cover the invocation contract, matching the 0-parameter baseline of 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as exposing DHCP server status plus a lease/reservation table, and the '(read-only)' qualifier reinforces the retrieval nature. This distinguishes it from DHCP configuration siblings like dhcp_on, dhcp_off, and dhcp_startip, though the verb itself (show/list) is only implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool instead of other status/view commands or DHCP configuration commands. The read-only label only implies that it is for viewing, but no alternatives or exclusion cases are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dos_activateC
Activate DoS defense system (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation flow entails, what side effects activation has on traffic, whether it is reversible, or what happens if confirmation fails. The parenthetical is a start but leaves critical behavioral context unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the action and the key write/confirmation caveat. It is concise and scannable, though it could earn a 5 by adding a brief usage pointer without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a state-changing tool with no annotations, no output schema, and 3 undocumented parameters, the description is too thin. An agent cannot determine how to obtain a confirmation token, what the confirmation_id refers to, or what success/failure looks like. The sibling list shows many related DoS tools, but the description does not connect to them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and there are 3 parameters (user_code, confirm_token, confirmation_id) with no descriptions. The tool description does not explain the role of any parameter, leaving the agent to guess which values are needed and how they relate to the confirmation requirement. This is a significant gap for a write operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Activate') and resource ('DoS defense system'), and the parenthetical '(write — requires confirmation)' signals that this is a state-changing action. It is distinguishable from the sibling dos_deactivate, though it does not explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like dos_deactivate, dos_view, or dos_blacklist_show. The '(write — requires confirmation)' hint implies a confirmation flow but does not explain prerequisites, when activation is appropriate, or what conditions warrant deactivation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dos_blacklist_showA
Show DoS blocking list (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explicitly discloses the read-only behavior, which is a key guarantee. However, it does not mention other potential behaviors like authentication requirements or output format, but for a simple show command this is adequate. The read-only disclosure is valuable and not contradicted by any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using a single sentence with no wasted words. The verb is front-loaded, and the read-only qualifier adds necessary information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no params, no output schema), the description provides sufficient context: it states the action and the read-only nature. It does not describe the output format, but that is less critical for a straightforward show command. The description is complete enough for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema coverage is 100% vacuously. According to the baseline, 0 params gives a score of 4. The description adds nothing about parameters because there are none to describe, so it meets the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Show') and resource ('DoS blocking list'), which is clear and distinct from siblings like dos_whitelist_show and dos_activate/deactivate. It fully communicates what the tool does without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the read-only note, but it does not explicitly state when to use this tool versus alternatives like dos_whitelist_show or dos_activate. There is no explicit when/when-not guidance, only an implicit read-only hint that distinguishes it from mutating actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dos_deactivateC
Deactivate DoS defense system (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does state that this is a write operation and that confirmation is required, which are important traits. However, it does not explain the consequences of deactivation, what the confirmation flow entails, or any side effects, leaving significant ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no filler words. The key facts — the action, the resource, the write nature, and the confirmation requirement — are front-loaded and easily parsed, though the brevity leaves room for more useful detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool requiring confirmation and having four undocumented parameters, the description is too sparse. It lacks an explanation of the confirmation workflow, how to obtain confirmation_id, what acknowledge does, and what the expected output or side effects are. This is inadequate given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the four parameters, and the description does not clarify the roles of user_code, acknowledge, confirm_token, or confirmation_id. The mention of 'requires confirmation' hints at some parameters but does not map to them or explain their meaning, so the description fails to compensate for the missing schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Deactivate') and a clear resource ('DoS defense system'), making the tool's core function immediately understandable. It implicitly differentiates from the sibling dos_activate by using the opposite verb, though it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives like dos_activate or dos_view. The only usage hint is that it is a write operation requiring confirmation, but there is no explanation of prerequisites or when deactivation is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dos_viewA
View DoS defense configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does state 'read-only', which conveys that the operation has no side effects. However, it does not disclose the output format, whether it works during an active attack, or any other behavioral details beyond the basic read-only guarantee.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. The parenthetical '(read-only)' reinforces the behavioral scope without adding bulk, and every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only view tool with no output schema, the description is sufficient to invoke the tool correctly. The only gap is the lack of distinction from the numerous DoS and status-view siblings, but this is a minor omission given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty schema, so there is nothing to describe. The baseline for a zero-parameter tool is 4, and the description adds no incorrect or conflicting parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('View') and a clear resource ('DoS defense configuration'), and explicitly adds '(read-only)' to signal it is non-mutating. It is clear, but it does not differentiate itself from siblings like dos_blacklist_show or dos_whitelist_show, which also present DoS-related data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as dos_blacklist_show, dos_whitelist_show, or show_status. There is no mention of conditions, exclusions, or related tools, leaving the agent to infer the use case solely from the name and verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dos_whitelist_showA
Show DoS passing (white) list (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full safety burden and explicitly discloses 'read-only'. It also specifies that it targets the whitelist rather than any other DoS state, which is the key non-destructive behavior an agent needs to know.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one front-loaded sentence with no filler or redundant restatement of the tool name. Every word adds meaning, including the 'read-only' safety qualifier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only show command, the description is nearly complete: it states what is displayed and that invocation is safe. It does not describe the output format or fields, but 'Show ... list' conveys that the result is the whitelist content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty and schema description coverage is 100%, so the baseline is 4. The description adds no parameter detail, but none is needed because the tool takes no arguments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Show') on a specific resource ('DoS passing (white) list') and marks it read-only. The 'white' parenthetical explicitly distinguishes it from the sibling dos_blacklist_show, so an agent can choose it without needing to inspect schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is a read-only inspection tool, but it names no explicit alternatives or when-not-to-use conditions. Context from sibling names (dos_blacklist_show, dos_activate) suggests it, but the description itself does not provide routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpdk_cmdlogC
DPDK command log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'read-only', which is a minimal safety signal, but it does not disclose what the command log contains, whether it is filtered, how recent the entries are, or any side effects. For a read-only log tool, this is a significant gap in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loaded with the key information: the resource and its read-only nature. It earns its place with no wasted words. However, it is so terse that it misses opportunities to add useful context, so it is not a perfect 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and zero parameters, the description is the only source of information. It tells the agent the tool is read-only and relates to DPDK command logs, but it does not explain what the output looks like, what kind of commands are logged, or how this differs from sys_cmdlog. For a tool with no other structured context, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter semantics burden. The description's mention of 'command log' clarifies the resource being accessed, which is sufficient. Baseline 4 is appropriate for a no-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'DPDK command log (read-only)' identifies the resource (DPDK command log) and indicates a read-only operation, which is clear enough to distinguish it from write-oriented DPDK tools like dpdk_statistic. However, it lacks a specific verb like 'show' or 'list' and does not explicitly state what the tool returns, so it is adequate but not fully specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. Among siblings, there are similar log/status tools (e.g., sys_cmdlog, log_tail, dpdk_statistic), but the description does not mention them or any conditions for choosing this tool. Usage context is entirely implied by the name and read-only hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpdk_statisticB
DPDK statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description declares 'read-only', which is a meaningful behavioral trait, and with no annotations present that trait carries the entire disclosure burden. It does not add any other behavioral context, such as whether DPDK must be enabled, whether the stats are cumulative or a snapshot, or what the return payload looks like. For a simple read-only tool this is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four words, front-loaded, and contains no filler or redundant phrasing. For a zero-parameter read-only statistics tool, this length is appropriately sized and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimally viable: it tells the agent this is a read-only DPDK statistics query with no arguments. It leaves gaps around which statistics are included, when to choose this over show_statistic or sys_app_statistic, and what output to expect, especially since no output schema exists. It is thin but not unusable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and the schema with an empty properties object already exhaustively documents that. The description adds no parameter-level detail, but none are required. The baseline 4 for zero-parameter tools applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('DPDK statistics') and the read-only nature of the operation, which makes the intent clear for a zero-parameter query. It lacks an explicit verb like 'show' or 'get', but the noun phrase plus 'read-only' is enough to understand the purpose. It also helps differentiate it from siblings like dpdk_cmdlog, though not from the more generic show_statistic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives. The description never mentions related siblings like show_statistic, sys_app_statistic, or dpdk_cmdlog, nor any condition that selects this tool. An agent must infer when DPDK statistics are the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fs_infoC
File system info (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'read-only,' which is a minimal safety signal, but it does not explain what data is returned, whether the call is expensive, or any side effects (though read-only implies none). For a tool with no annotations, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—five words—with no redundancy. It is front-loaded with the key attribute ('read-only'). However, it is under-specified, which is a trade-off: conciseness is achieved but at the cost of clarity. Still, there is no fluff, so it earns a 4 rather than a 5 because it could be more informative without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large sibling set (over 200 tools) and the absence of an output schema, the description is inadequate. An agent has no idea what 'info' includes, what format it returns, or how it differs from fs_ls or fs_pwd. The tool is likely meant for general file-system statistics, but the description leaves too much to inference. A more explicit statement of scope and return value would be necessary for completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially complete (100% coverage). Per the rubric, a baseline of 4 is appropriate when there are no parameters. The description adds nothing about parameters because none exist, so it does not detract from the score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear subject (file system) and indicates a read-only operation, but it does not specify what kind of information is provided (e.g., disk usage, mount points, inodes). It distinguishes from siblings like fs_ls and fs_pwd only by the generic 'info' label, which is vague. A specific verb or resource scope would clarify exactly what the tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use fs_info versus the many file-system-related siblings (fs_ls, fs_pwd, nand_usage, usb_disk). It does not mention any conditions, prerequisites, or alternatives. The only hint is 'read-only,' which implies safe inspection but does not help the agent decide between this and other read-only tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fs_lsB
List router file system (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation is read-only, which is useful, but it does not describe the output format, whether it is a directory listing, or any other behavioral details. For a tool with no output schema, this is a minimal but not complete disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the essential purpose and a key behavioral trait (read-only). It is concise and efficient with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description provides the core action and read-only safety, but it omits what the listing looks like (e.g., format, whether it includes file sizes or subdirectories). An agent may need additional context to interpret the result correctly, so completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so per the rubric the baseline is 4. The description adds nothing about parameters because there are none. This is appropriate and does not need compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and a clear resource ('router file system'), and includes a read-only hint. However, it does not differentiate from sibling tools like fs_info or fs_pwd, which could also relate to the file system. The purpose is clear but not explicitly distinguished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description only states what it does, with no mention of exclusions, prerequisites, or when another tool would be more appropriate. This leaves the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fs_pwdA
Print working directory (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the 'read-only' nature, which is a key behavioral trait. However, it does not describe the output format or any potential error conditions. For a simple zero-parameter read operation, this is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler. It is front-loaded with the verb and resource, and the 'read-only' qualifier is useful. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, no output schema, and a simple operation, the description is largely complete. An agent can invoke it without additional information. It could mention the output format (e.g., full path) but that is not critical for a standard working directory command.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema fully describes the input. The description does not need to add parameter semantics. Baseline for zero parameters is 4, and the description does not detract from it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Print') and the resource ('working directory'). It is distinct from sibling tools like fs_ls (listing files) and fs_info (file system details). 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. However, given its simplicity and the clear distinction from siblings, the use case is implicitly obvious. It does not mention alternatives or exclusion criteria, so it does not fully meet the bar for explicit usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_setC
Configure HA (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the operation is a write and requires confirmation, which is a useful behavioral signal, but it omits essential details such as what the confirmation process entails, potential side effects, reversibility, or required permissions. The mention of confirmation is a positive but insufficient start.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (six words plus parenthetical), which is not conciseness but under-specification. It front-loads the write nature but omits any structured guidance, making it too terse to be genuinely helpful. It could be concise while still including key operational details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given five parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain what the confirmation token or confirmation_id are for, how the 'param' is structured, or what the response will be. The agent has almost no context to correctly invoke this tool, especially since it is a write operation requiring confirmation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation for any of the five parameters, including the required 'param'. It does not mention parameter purposes, formats, or relationships, leaving the agent completely reliant on the schema, which only gives types and constraints. This fails to compensate for the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Configure') and the resource ('HA'), distinguishing it as a write operation from read-only siblings like ha_show and ha_status. It avoids tautology and provides a specific verb and target, though it lacks detail on what specific HA settings are configured.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description does not mention conditions for using ha_set over ha_show or ha_status, nor does it explain the confirmation workflow or any prerequisites. The agent must infer usage from the name and the parenthetical note.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_showB
HA configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden, and it does explicitly disclose the most important behavioral trait: the operation is read-only and non-mutating. However, it says nothing about expected output, prerequisites (e.g., whether HA must be enabled), or failure behavior. The single disclosed trait earns a middle score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four words, zero filler. The resource ('HA configuration') and the access mode ('read-only') are both front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool, the description is mostly sufficient for invocation. However, it does not disambiguate between HA configuration and HA status (ha_status) or explain what kind of data the agent will receive back, which matters given the dense sibling cluster.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4 and there is nothing the description needs to explain. The empty schema with 100% coverage leaves no semantic gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
'HA configuration (read-only)' names a specific resource and access mode, and the verb is recoverable from the tool name 'ha_show'. It distinguishes from ha_set (write operation) and ha_status (status vs. configuration), though it never states the verb explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many related siblings (ha_status, ha_set, vrrp_show, vrrp_set). No context, exclusions, or alternatives are mentioned despite a huge sibling list where HA/VRRP tools are easy to confuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ha_statusB
HA status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. The explicit '(read-only)' marker is useful and indicates a non-mutating operation, but the description does not say what status information is returned, whether HA must be configured, or what the output looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'HA status (read-only)' states the resource and key behavioral trait with no filler. For a zero-parameter tool, this is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but with no output schema and no annotations, the description should help the agent infer what a successful call yields. It only says 'HA status (read-only)', leaving the return value unspecified; this is minimally sufficient but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so no parameter documentation is needed. The baseline of 4 applies because the description does not need to compensate for any parameter gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource, HA status, and marks it read-only, which signals a retrieval operation. It is clear enough for an agent to guess its purpose, but it does not distinguish itself from the sibling tool ha_show, which may serve a similar role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use ha_status versus ha_show, vrrp_show, or other status commands. No alternatives, preconditions, or use cases are mentioned, so the agent must guess the appropriate selection context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hsportal_infoB
Hotspot portal info (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'read-only', which indicates no mutation but does not explain side effects, response format, or any prerequisites. For a no-parameter tool, this is a minimal but insufficient disclosure of behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise phrase, appropriately short for a tool with no parameters. The key attribute 'read-only' is front-loaded, and there is no extraneous text. It lacks sentence structure but remains effective in brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description alone must convey what the agent can expect. It merely says 'hotspot portal info' without detailing the content of that info (e.g., connection counts, settings, health status). This is insufficient for an intelligent agent to decide whether to call it or interpret the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description is not required to clarify parameter semantics. The baseline of 4 applies because the schema fully covers the (empty) parameter set and there is no missing parameter information to compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('hotspot portal') and states it is 'info' (read-only), clearly differentiating it from hsportal_setup. However, it does not specify what kind of info (e.g., status, configuration, statistics), leaving some ambiguity about the exact data returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like hsportal_level or hsportal_setup. The read-only tag implies a query, but no explicit context or exclusions are provided, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hsportal_levelB
Hotspot portal level (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It clearly states 'read-only', which tells the agent this operation has no side effects. This is a key behavioral trait. However, it doesn't explain what the output looks like or any other nuances, but for a read-only query, the read-only hint is essential and is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise phrase of four words. It front-loads the resource name and immediately follows with the read-only flag. It is minimal, but not overly sparse because it delivers the core purpose in very few words. The score is not 5 because it lacks a verb and could be slightly more descriptive, but it is still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is a read-only query with no parameters and no output schema, the description is mostly sufficient. However, with many sibling tools of similar nature, an agent might benefit from knowing what 'level' means precisely or what it returns. The description does not provide enough to distinguish it from 'hsportal_info' without external knowledge. This is a slight gap in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is empty rendering schema coverage 100%. The description adds context that this is read-only, which is not in the schema, but the schema already fully describes the parameter surface (none). The description doesn't need to explain parameter semantics because there are none; a score of 4 reflects that it appropriately communicates a key aspect (read-only) beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Hotspot portal level (read-only)' which identifies a resource (Hotspot portal) and a property (level), and explicitly notes it is read-only. However, it doesn't specify a verb like 'get' or 'view' that would make the action unmistakable, though the sibling names like 'hsportal_info' and 'hsportal_setup' suggest a query action. It is not a tautology because the name alone doesn't fully convey the read-only nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There are siblings like 'hsportal_info' and 'hsportal_setup' that could overlap, but the description does not mention them or any conditions for selecting this tool. An agent would have to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hsportal_setupB
Configure hotspot portal (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It does disclose two important traits—write operation and confirmation requirement—but does not explain the confirmation flow, side effects, or prerequisites such as obtaining user_code, confirm_token, and confirmation_id.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the key action and a safety qualifier front-loaded. There is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating setup tool with no annotations, no output schema, and an undocumented parameter schema, the description leaves critical gaps: what configuration is changed, how confirmation is obtained, what the parameters mean, and what success or failure looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and all four parameters are undocumented in both schema and description. The phrase 'requires confirmation' hints at the confirmation fields but does not explain param, user_code, confirm_token, or confirmation_id, so the description fails to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific action ('Configure hotspot portal') and signals the write nature of the operation. It distinguishes the tool from read-oriented hotspot siblings like hsportal_info and hsportal_level, though it does not specify which settings are configured.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use hsportal_setup versus the many sibling portal/status tools. It neither states a use case nor names alternatives, leaving an agent to infer that setup is for changing portal configuration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
internet_setA
Set WAN internet access mode (PPPoE/DHCP/static/...) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| wan | Yes | ||
| mode | Yes | ||
| password | No | ||
| username | No | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It explicitly notes 'write' and 'requires confirmation', which are valuable. However, it does not explain the confirmation flow (e.g., token/ID semantics), whether changes take effect immediately, or any side effects such as connection interruption, leaving significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with no redundant words. It front-loads the core action and resource, and includes a crucial caveat ('requires confirmation') without extra fluff. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (8 parameters, write operation requiring confirmation, no output schema), the description is far too sparse. It lacks details on parameter meanings, the confirmation mechanism, expected side effects, and return behavior, leaving an agent without enough context to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only suggests possible values for 'mode' via examples (PPPoE/DHCP/static) but does not explain the meaning of 'wan', or the ancillary parameters like username, password, acknowledge, confirm_token, confirmation_id, or user_code. This is minimal compensation for an 8-parameter schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Set'), a specific resource ('WAN internet access mode'), and lists distinct mode options (PPPoE/DHCP/static), which clearly differentiates it from sibling view/enable/disable tools. It is unambiguous about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by naming the resource and action, but it does not explicitly state when to use this tool over alternatives like internet_view, wan_enable, or wan_disable. The confirmation note hints at a two-step workflow but no when-not or alternative conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
internet_viewB
View Internet access profile (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does state 'read-only', which is the primary behavioral trait for a view tool, but it says nothing about what happens on failure, whether it requires any setup, or what the output represents. For a zero-parameter read operation, the read-only disclosure is meaningful but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, efficient sentence that front-loads the action and resource. Every word earns its place, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema read tool, the description is largely sufficient. However, the term 'Internet access profile' is ambiguous about what data is returned (settings, connectivity status, or configuration), which an agent might need to know. It is adequate but leaves the return semantics to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there are no parameter meanings to document. Schema description coverage is vacuously 100% with an empty schema. The baseline of 4 for zero-parameter tools applies, and the description adds value by clarifying the resource being viewed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('View'), a resource ('Internet access profile'), and the read-only nature, which makes the core purpose clear. However, the term 'profile' is vague about what it actually contains, and with dozens of sibling view/show tools in the same domain, it doesn't differentiate what makes this resource unique from, say, show_status or wan_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It neither names sibling tools that should be used instead (e.g., internet_set for modification, show_traffic for traffic data) nor states any exclusions or context that would select this tool over the many other view tools. The read-only note is the only implicit usage hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip6_addrB
Configure an IPv6 address (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It usefully discloses that this is a write operation requiring confirmation, which is important for an agent planning side-effectful actions. However, it does not explain the confirmation flow, side effects, permissions, or reversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one clean, front-loaded sentence with no filler. It conveys both the purpose and the write/confirmation safety behavior efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with 4 opaque parameters, no output schema, and no annotations, a single sentence is insufficient to ensure correct invocation. An agent would still have to guess at the meaning of user_code, confirm_token, confirmation_id, and the expected address format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so all 4 parameters are effectively undocumented. The phrase 'Configure an IPv6 address' weakly implies the param value is the address, but it does not explain the confirmation fields at all or provide format constraints beyond the schema itself.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific verb (configure) and resource (IPv6 address), so an agent can understand the intended action. It is clear but does not explicitly differentiate itself from nearby configuration siblings such as ip6_mngt or ip_nmask.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus the many other IPv6 or IP configuration tools. 'Write — requires confirmation' is a behavioral hint, not a usage decision rule, and no prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip6_mngtB
Enable/disable IPv6 management for a protocol (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| proto | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and requires confirmation, which is valuable behavioral context beyond the schema. However, with no annotations provided, the description carries the full burden and does not explain what 'requires confirmation' means in practice (e.g., whether a confirmation_id/confirm_token must be obtained first, what side effects occur, or whether the change is persistent). It adds some transparency but leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action and scope, then adds the write/confirmation caveat. It earns its place with no wasted words. It could be slightly more structured by separating the confirmation flow, but it is appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations and no output schema, the description is too thin. It does not explain the confirmation workflow (how to obtain and supply confirmation_id/confirm_token), what happens after the operation, or how it relates to the many mngt_* siblings. An agent would likely need to guess at the confirmation parameters and the exact effect of toggling IPv6 management per protocol.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the five parameters. It only clarifies the two enum parameters (proto, onoff) implicitly through 'for a protocol' and 'Enable/disable'. The three confirmation-related parameters (user_code, confirm_token, confirmation_id) are completely unexplained, and the description's 'requires confirmation' hint does not map to which parameter is needed when. This is a clear gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Enable/disable') and resource ('IPv6 management for a protocol'), which clearly distinguishes it from the many show/status siblings. It doesn't explicitly name a sibling alternative, but the action+resource combination is unambiguous enough to separate it from tools like ip6_addr or ip6_ping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use it: when you need to turn IPv6 management on or off for a protocol. It does not explicitly state when not to use it or name alternatives (e.g., use ip6_addr for address configuration, use show_* for viewing status). The write/confirmation note hints at a different workflow from read-only siblings, but no explicit routing guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip6_pingA
Ping an IPv6 host (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The parenthetical 'read-only' usefully signals that this operation has no side effects, which matters because no annotations are provided. But the description does not disclose how the ping behaves, what output it returns, or any network-impact or permission considerations, so it carries only a moderate share of the transparency burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. The key action and safety-relevant note are front-loaded, and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter diagnostic tool with a clear schema, the description is adequately complete. It does not describe return values or failure semantics, but the simplicity of the operation makes those gaps less critical than they would be for a more complex tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema is simple and self-explanatory: a single required 'host' property with ipv6 format. The description adds minimal meaning beyond aligning the host with IPv6, but given only one clearly named parameter, the schema itself largely carries the semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Ping an IPv6 host'. It accurately conveys the operation and makes the tool's niche obvious given siblings like ip_ping. However, it does not explicitly distinguish itself from those siblings, leaving the differentiation to be inferred from the name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: an agent needing to test IPv6 reachability would select this tool. However, there is no explicit guidance about when to prefer this over ip_ping, ip6_tracert, or other diagnostic tools, and no exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip6_tracertA
Traceroute to an IPv6 host (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. The explicit '(read-only)' label is a valuable safety signal, indicating the operation does not mutate system state. However, it does not disclose output format, execution duration, packet/loop counts, or whether the command runs directly on the host or via the router.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short sentence with no filler. The operation, target type, and read-only trait are all front-loaded and immediately parseable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only diagnostic, the description plus schema are sufficient for a basic invocation. The lack of an output schema means return behavior is not defined, but the tool name and description imply a standard traceroute result. It would be more complete with a note about how this differs from ip_tracert or ip6_ping.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already defines host as a required string with ipv6 format, and the description restates that the host is IPv6. This adds little beyond the schema because the parameter name and format are self-explanatory. For a single parameter this is acceptable, but with 0% schema description coverage the description does not compensate with any extra detail such as hostname resolution behavior or exact semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Traceroute to an IPv6 host'. It also identifies the operation as read-only, which clearly separates it from configuration or state-changing tools. The sibling list includes ip6_ping and ip_tracert, and the IPv6 + tracert combination makes the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for network path diagnostics to an IPv6 destination, but it gives no explicit guidance on when to choose this over ip6_ping or ip_tracert. There are also no notes about prerequisites, accessibility, or environment conditions. The basic use case is clear, but alternatives are not compared.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_addrC
Set LAN IP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes | ||
| lan | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and requires confirmation, which is useful since no annotations are provided. However, it omits critical behavioral details: what happens without confirmation, whether changes are reversible, what the confirmation mechanism is, and potential side effects on network connectivity. The hint is present but underdeveloped.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which could be seen as concise, but it is under-specified for a tool with six parameters and no other documentation. It front-loads the write/confirmation aspect, but the lack of any parameter or usage detail makes it insufficient rather than appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, no output schema, no annotations), the description is grossly incomplete. An agent cannot determine how to invoke it correctly, what the confirmation flow looks like, or what the expected result is. Essential operational details are entirely absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not mention any of the six parameters. It does not clarify that 'lan' and 'ip' are required, nor what 'user_code', 'acknowledge', 'confirm_token', or 'confirmation_id' mean. The description adds no value beyond the raw schema, which itself is sparse for these parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource ('Set LAN IP'), which identifies the primary action. It does not explicitly distinguish from sibling tools like ip6_addr or linux_setlinuxip, but the 'LAN IP' wording is specific enough to suggest a network interface configuration. A more precise description could mention that it configures the device's own LAN interface.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. Sibling tools like ip6_addr (IPv6 address) or linux_setlinuxip (Linux IP) are not referenced, and no context is given for when setting a LAN IP is appropriate. An agent would have to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_arp_statusA
ARP table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The '(read-only)' label is a valuable disclosure that this operation is non-destructive and safe to invoke. However, it does not describe the output format, whether both IPv4/IPv6 entries are shown, or how entries are ordered, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four words ('ARP table (read-only)') with zero filler. The core resource is front-loaded and the behavioral modifier is delivered in a parenthetical. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, parameterless read-only status tool, the description is largely sufficient. With no output schema present, a brief note on what the ARP table entries contain (e.g., IP/MAC/interface) would improve completeness, but the tool's trivial nature keeps this gap minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so no parameter documentation is needed. The description appropriately focuses on the tool's purpose rather than parameters, which is the correct baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('ARP table') and its read-only nature, making the tool's function immediately clear. It does not explicitly differentiate from siblings like ip_route_status, ip_session, or dhcp_status, but the distinct 'ARP table' resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. There are no exclusions, no mention of related sibling tools, and no context about scenarios where the ARP table would be needed (e.g., debugging layer-2 resolution issues).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_bindmacC
Bind IP to MAC address (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes | ||
| mac | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It states 'write — requires confirmation', which discloses that this is a mutating operation and that some confirmation mechanism is involved. However, it does not explain side effects, prerequisites, whether the operation is reversible, or what happens on failure. This is minimal but not entirely absent, so a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief and front-loaded: the main action and the write/confirmation note appear first. There is no waste. However, it is under-specified (which is penalized in other dimensions). For conciseness alone, it is efficient, though the brevity borders on being too terse to be useful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, is a write operation, has no output schema, and implies a confirmation flow, this description is severely incomplete. It does not explain how to obtain the confirmation token, what user_code is, what the response looks like, or any side effects. An agent would be unable to correctly invoke this tool without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to any of the 5 parameters. It only mentions that confirmation is required, but does not clarify the roles of ip, mac, user_code, confirm_token, or confirmation_id. With 5 parameters and zero documentation, the agent cannot infer how to populate them correctly, especially the confirmation-related fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Bind IP to MAC address'. This is a specific verb and resource, and it's distinct from the many read-only sibling tools (show_*, dhcp_status, etc.). It also indicates this is a write operation, which further differentiates it from the majority of siblings that are queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any sibling tools or conditions for selection. While the write nature distinguishes it from read-only tools, there are other write tools (e.g., dhcp_on, ip_route_add) and no comparative context is given. The only hint is 'requires confirmation', which implies a process but not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_dnsforwardC
DNS forward table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral burden. It does explicitly disclose 'read-only', which is a meaningful safety trait for a zero-parameter query, but it says nothing about the output contents, formatting, or any operational context beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and contains no filler; the key 'read-only' qualifier is included. It is appropriately sized for a simple no-parameter query, though the phrasing is minimal rather than fully explanatory.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool, the description is nearly adequate, but it lacks any explanation of what a 'DNS forward table' contains or how this differs from sibling DNS status commands. An agent could invoke it, but may not know why it is the right choice.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is no parameter burden to document. The baseline of 4 applies because no parameter descriptions are needed and nothing is left ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is essentially a noun phrase that restates the tool name ('DNS forward table') with only 'read-only' adding behavior. It does not state a verb such as 'show' or 'get', and it does not distinguish this tool from similar DNS/lookup siblings like show_dns, sys_dnsCacheTbl, or ip_lanDNSRes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use ip_dnsforward versus the many DNS-related or table-view sibling tools. No exclusions, alternatives, or context-dependent selection criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ipf_ruleD
Manage IP filter rules (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the burden of behavioral disclosure. It does state that this is a write operation requiring confirmation, which is useful, but it does not explain what the confirmation entails, what side effects occur, what happens on success or failure, or how the confirmation token/id parameters relate to the flow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but its brevity reflects under-specification rather than disciplined conciseness. The phrase 'Manage IP filter rules' is generic and the parenthetical 'write — requires confirmation' does not compensate for the absence of substantive guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write tool with no annotations, no output schema, an opaque parameter set, and a large sibling list containing similar tools. The description is far too incomplete for an agent to select and invoke it correctly, especially given the opaque 'param' field and the unmodeled confirmation process.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no meaning to any of the five parameters. The required 'param' field is completely opaque, and the confirmation-related fields (acknowledge, confirm_token, confirmation_id, user_code) are left unexplained, so an agent cannot infer how to construct a valid invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (IP filter rules) and flags it as a write operation requiring confirmation, but uses the vague verb 'manage' rather than a specific action. It does not distinguish whether this creates, updates, deletes, or replaces rules, and it does not differentiate from the sibling ipf_set or ipf_view tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like ipf_view or ipf_set, and no explanation of the prerequisite confirmation flow. The only hint, 'requires confirmation,' implies a workflow but does not say what triggers it or when the tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ipf_setC
Set IP filter option (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the operation is a write and requires confirmation, but does not explain the confirmation flow, what parameters are needed for confirmation (e.g., confirm_token, confirmation_id), or what side effects may occur. This is a minimal disclosure that leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, which is concise, but it is under-specified rather than efficiently informative. It front-loads the purpose but omits critical details like parameter semantics and confirmation process. It earns a middling score because it is not verbose, but it also does not provide the necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters, a required 'param', and no output schema. The description is far too sparse to guide correct invocation. It does not explain what values 'param' accepts, how the confirmation workflow works, or what the response will look like. This is inadequate for an agent to use the tool without further exploration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no information about any of the 5 parameters. The 'param' field, which is required, is not described at all. The confirmation-related parameters (user_code, acknowledge, confirm_token, confirmation_id) are completely unexplained. The description adds no value beyond the schema's structural definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Set IP filter option') with a specific resource ('IP filter'), which is unambiguous. However, it does not differentiate from sibling tools like ipf_rule or ipf_view, so the agent cannot immediately know when to use this instead of those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The only additional note ('requires confirmation') is behavioral, not usage-related. The agent is left to infer when ipf_set is appropriate compared to ipf_rule or ipf_view.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ipf_viewB
IP filter rules view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses 'read-only' indicating no mutation, which is a key trait. However, it does not describe return format, pagination, or any side effects – minimal behavioral disclosure beyond the read-only hint.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single phrase that front-loads the purpose. No wasted words, but it may be too terse to convey full behavior. For a zero-parameter tool, conciseness is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description should explain what the view returns and when to use it. It only states the resource and read-only nature, missing return format and usage context, leaving the agent under-informed about expected output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has zero parameters and schema coverage is 100% (empty schema). Description adds no parameter information, but none is needed. Baseline 4 for zero-parameter tools applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'IP filter rules view (read-only)' – a clear verb (view) and resource (IP filter rules). It distinguishes from siblings like ipf_set and ipf_rule by indicating read-only, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus other view tools. It does not mention alternatives or conditions for use. The agent must infer from the name and sibling list, which is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_lanDNSResB
LAN DNS resolution cache (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The parenthetical 'read-only' is a meaningful behavioral disclosure, especially since no annotations are provided. However, the description does not say what the returned cache contains, whether it reflects live resolution state, or any operational limits, leaving some behavioral context to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'LAN DNS resolution cache (read-only)' is front-loaded with the resource and the read-only qualifier is placed in a clear parenthetical. There is no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only query, the description is nearly adequate, but it stops at naming the resource. Without an output schema, an agent gets no sense of the expected result shape or how this cache relates to the broader DNS toolset.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties, so there are no parameter semantics for the description to add. The baseline of 4 applies because the tool takes no arguments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource ('LAN DNS resolution cache') and labels it read-only, so a reader can infer retrieval. However, it is a noun phrase with no explicit verb such as get/list/show, and it does not distinguish itself from similarly named siblings like sys_dnsCacheTbl or show_dns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance about when to use this tool versus any alternative. It does not mention related DNS tools such as sys_dnsCacheTbl, ip_dnsforward, or show_dns, and there are no conditions or exclusions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_nmaskA
Set LAN netmask (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| lan | Yes | ||
| mask | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral burden. It does disclose that this is a write operation and that confirmation is required, which is useful, but it does not explain side effects, the confirmation flow, or whether changing the netmask will disrupt connectivity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It front-loads the action and resource and packs the critical write/confirmation warning into a brief parenthetical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutating network command with no output schema and several confirmation-related parameters, yet the description never explains the confirmation workflow. An agent cannot determine how to obtain confirm_token or confirmation_id, making the definition incomplete for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it largely does not. 'lan' and 'mask' are somewhat inferable from the tool's purpose, but user_code, acknowledge, confirm_token, and confirmation_id are completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a direct verb 'Set' and names a specific resource, 'LAN netmask', so the tool's function is unambiguous. It is not a tautology of the tool name and stands out from the many read-only 'show_*' siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The write hint implies this is for mutating the LAN netmask rather than viewing it, but no alternatives or when-not-to-use conditions are named. An agent can infer the general use case, but not how this compares to related network configuration tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_pingA
Ping an IPv4 host (5 packets) (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It explicitly states 'read-only' and specifies '5 packets,' alerting the agent that this is a safe diagnostic operation. It does not mention timeouts or output format, but for a simple ping tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly packed phrase with zero filler. It front-loads the action, target, and key behavioral details immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter diagnostic tool, the description covers the target type, fixed packet count, and read-only nature. There is no output schema, but ping semantics are widely understood; the description is sufficient for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for parameter meaning. 'Ping an IPv4 host' adds little beyond the schema's 'host' property and 'ipv4' format, and the '5 packets' note is behavioral rather than parameter-specific. The parameter semantics remain largely implicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Ping'), the target ('IPv4 host'), and a precise detail ('5 packets'), making the tool's purpose immediately obvious. This also distinguishes it from sibling ip6_ping by explicitly limiting to IPv4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this is for pinging an IPv4 host, which implies it is the IPv4 counterpart to ip6_ping and distinct from ip_tracert. There is no explicit 'when-not-to-use' statement, but the context is sufficient for a reasonable agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_route_addB
Add a static route (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| gw | Yes | ||
| dest | Yes | ||
| mask | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full behavioral disclosure burden. It discloses that this is a write operation and that confirmation is required, which is useful. It does not explain the confirmation flow, side effects, reversibility, or prerequisites, leaving significant behavioral uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that states the operation and the key confirmation requirement with no wasted words. It is appropriately compact for the information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has six parameters, no annotations, no output schema, and a 0% schema coverage, yet the description offers almost no contextual guidance. It does not explain the confirmation workflow, required fields, return values, or when confirmation tokens are obtained, so an agent cannot reliably invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description adds no parameter-level meaning. It does not explain dest/mask/gw semantics or the confirmation-related parameters (user_code, confirm_token, confirmation_id). The word 'route' only weakly implies dest/mask/gw but does not compensate for the schema's complete lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Add'), a concrete resource ('static route'), and a clear write operation. It distinguishes from related siblings like ip_route_del and ip_route_status by stating the add action, though it does not explicitly name any sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for adding a static routetons, and 'requires confirmation' hints at the workflow. However, it gives no explicit guidance on when to choose this over alternatives or mention alternatives such as ip_route_del or ip_route_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_route_delA
Delete a static route (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| dest | Yes | ||
| mask | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the behavioral burden. It discloses that the operation is a write and requires confirmation, which is useful. However, it does not explain the confirmation mechanism (e.g., how confirm_token or confirmation_id are obtained) or any side effects beyond deletion, leaving gaps for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently states the purpose and a key behavioral trait (write, requires confirmation). No redundant wording or unnecessary details are present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no output schema, and no annotations, the description is far from complete. It omits the confirmation flow, parameter semantics, and any indication of success or failure responses. An agent would struggle to call this tool correctly without external knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it provides no parameter explanations. The names 'dest' and 'mask' are somewhat self-explanatory, but the description does not clarify their meaning, nor does it explain the confirmation-related parameters (user_code, confirm_token, confirmation_id). The tool's parameter semantics are therefore poorly conveyed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Delete a static route' uses a specific verb and resource, clearly distinguishing it from sibling tools like ip_route_add (which adds) and ip_route_status (which shows). The action and object are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by its name and verb, but does not explicitly state when to use this tool versus alternatives like ip_route_add or ip_route_status. There is no mention of prerequisites, conditions, or exclusions, so guidance is only implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_route_statusA
Routing table (connected/static/default) (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses the key trait 'read-only', which signals no side effects, but does not mention prerequisites, potential failure modes, or whether it reflects live state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Six words, front-loaded with the resource, and every word earns its place. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only status tool, the description is nearly complete. It could explicitly state that it returns the current routing table entries, but the scope list and read-only flag cover the essential decision factors.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the description does not need to explain parameter meaning. The scope note ('connected/static/default') adds useful context beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('Routing table') and scope ('connected/static/default') and explicitly notes 'read-only', making it clear this is a view operation. However, it lacks an explicit verb like 'Show' or 'Display', relying on the tool name 'status' to imply the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance or alternatives are mentioned. The read-only note and resource name imply it is for inspecting routing table state, but the description does not contrast it with ip_route_add/ip_route_del or other status tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_sessionA
IP session table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the behavioral burden. It clearly discloses that this is a read-only operation, which is the key side-effect trait, but it does not mention whether data is a snapshot, how current it is, or what output shape to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely compact and front-loads the two useful facts: the resource ('IP session table') and the mutability class ('read-only'). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only status tool, the description is sufficiently complete to invoke correctly and understand the general domain of the result. It is slightly incomplete because it does not describe the return format, but no output schema exists and the resource type strongly implies tabular data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there is no parameter ambiguity. The description adds no parameter-specific detail, but none is required here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific resource ('IP session table') and its read-only nature, making the intended operation clear even without an explicit verb. It does not distinguish the tool from similarly named siblings like show_session, which is why it is not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is provided, nor are alternatives or exclusions named. The only signal is 'read-only', which implies non-mutation but does not help an agent decide between ip_session and sibling tools such as show_session, show_statistic, or sys_max_session.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ip_tracertA
Traceroute to an IPv4 host (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does add the useful read-only qualifier, indicating a non-mutating operation, but it does not describe output, packet behavior, latency, or other side effects that a traceroute operation may entail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. The parenthetical 'read-only' adds useful safety information without bloating the text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool, the description is minimally sufficient to invoke the tool correctly, but it lacks any explanation of return values or output behavior since no output schema exists. It would be stronger with a sentence about what the traceroute result contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter, host, and the schema already specifies type string and format ipv4. The description merely echoes 'IPv4 host' without adding meaning beyond the schema, and with 0% schema description coverage it does not compensate with any additional parameter context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Traceroute') and resource ('IPv4 host'), making the tool's function immediately clear. It also differentiates from siblings such as ip_ping and ip6_tracert by specifying the route-tracing behavior and IPv4 scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool through 'Traceroute to an IPv4 host', but it does not explicitly state when to prefer this over ip_ping or ip6_tracert. No exclusions or alternative tools are mentioned, leaving usage context to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ldap_setC
Configure LDAP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The confirmation disclosure adds value, but the description is still thin on behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Brevity is not an asset when the description omits required meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description provides a minimal starting point but not enough context for an agent to call this tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a partial hint toward confirm_token and confirmation_id, but the description falls far short of clarifying the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It conveys a write action on LDAP, which separates it from read-only LDAP siblings, but not precisely enough to guide selection beyond that broad contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended usage is only weakly implied by the word 'configure' and the confirmation note, not stated as actionable guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ldap_userC
LDAP user operations (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation flow entails, what side effects occur, or what happens to existing LDAP users. The behavior is only partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded with the key fact that it is a write operation requiring confirmation. However, it is under-specified rather than efficiently concise; the brevity comes at the cost of missing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four undocumented parameters, the description is incomplete. An agent cannot determine what 'param' should contain, how the confirmation token works, or what the tool's effect is. The sibling context suggests LDAP management, but the description alone is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters. The schema shows 'param' is required and there are optional fields like user_code, confirm_token, and confirmation_id, but their meaning is entirely undocumented. The description adds no semantic value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'LDAP user operations (write — requires confirmation)' is vague. It does not specify a concrete verb or resource beyond 'operations', and it does not distinguish this tool from siblings like ldap_view or ldap_set. The parenthetical hints at write behavior but the core action is unclear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The sibling list includes ldap_view and ldap_set, but the description does not mention them or explain when ldap_user is appropriate. The only hint is 'write — requires confirmation', which implies a mutation context but is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ldap_viewA
LDAP configuration view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavior on its own. It does state 'read-only', which signals no modification side effects, but it does not describe response format, what configuration details are returned, or any access requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'LDAP configuration view (read-only)'. Every word earns its place, and the read-only qualifier is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only view tool, this description is mostly sufficient for an agent to select and invoke it. It could be more complete by indicating what aspects of the LDAP configuration are shown, but that is not strictly required for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is already fully covered, so there is nothing for the description to compensate for. This is the appropriate baseline for a no-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb-resource pair: 'view' the 'LDAP configuration'. The parenthetical 'read-only' distinguishes it from writable LDAP siblings like ldap_set, though it does not name those alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The read-only tag implies this is for inspection rather than modification, giving some context. However, it does not explicitly say when to use this tool versus ldap_set or ldap_user, nor mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
linux_setlinuxipC
Set Linux app IP (first time; reboot to apply) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| ip | Yes | ||
| cidr | Yes | ||
| gateway | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits itself. It does say the operation is a write and 'requires confirmation', and it notes the reboot-to-apply behavior, which is useful. But it omits important details like whether existing settings are overwritten, what 'confirmation' entails (the schema includes user_code, acknowledge, confirm_token, confirmation_id), and any irreversibility.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that packs the action, timing, effect, and write/confirmation nature without filler. It is front-loaded and efficient, though the terse phrasing (e.g., 'first time; reboot to apply') is slightly cryptic.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a seven-parameter schema, no output schema, no annotations, and zero schema description coverage. The description omits how to obtain a confirmation_id, what acknowledge/user_code should be set to, what happens on subsequent calls, and any return value. An agent cannot reliably invoke this tool correctly with the provided information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description provides no parameter-level meaning. The required fields ip, cidr, and gateway are only defined by their types/formats in the schema; the optional confirmation-related fields are completely unexplained. The description fails to compensate for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set') and names the resource ('Linux app IP'), and adds scope by saying 'first time' and 'reboot to apply'. It is clear what the tool does, though the term 'app IP' is somewhat ambiguous and could be confused with generic IP-setting siblings like ip_addr or ip_nmask.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'first time; reboot to apply' implies a one-time initial setup rather than an ongoing modification, giving some context for when to use it. However, it never explicitly states when not to use this tool or names alternative tools, so an agent must infer the usage boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
linux_ssh_disableC
Disable SSH service to the Linux environment (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the transparency burden. It does disclose that this is a write operation requiring confirmation, which is valuable. However, it does not say what confirmation entails, which parameters are involved, or what happens to existing SSH connections/settings when disabled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with no filler; 'Disable SSH service' is front-loaded. It is efficiently written, though the brevity leaves room for more structured confirmation detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with three undocumented parameters and no annotations, the description is too sparse. It fails to explain the confirmation workflow, required parameters, side effects, or how to re-enable the service; the sibling linux_ssh_enable exists but is not referenced.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to explain user_code, confirm_token, and confirmation_id; it does not. The phrase 'requires confirmation' only hints at the purpose of the confirmation fields, leaving parameter semantics largely to inference from their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific action ('Disable') and resource ('SSH service to the Linux environment'), making the tool's intent unmistakable. It is implicitly distinguished from the sibling linux_ssh_enable by being the inverse operation, though it doesn't explicitly name the alternative or its scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus linux_ssh_enable, linux_ssh_port, or mngt_sshport. The phrase 'requires confirmation' hints at the invocation flow but not at conditions, prerequisites, or exclusions. This is effectively no usage-direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
linux_ssh_enableC
Enable SSH service to the Linux environment (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral context by declaring '(write — requires confirmation)', which warns the agent that this changes state and needs extra confirmation inputs. However, with no annotations provided, it still does not disclose how confirmation works, what side effects enabling SSH may have, or what happens after the operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys the core action and the confirmation requirement up front. There is no filler or repetition, though it is too terse to fully support correct invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations, no parameter descriptions, and no output schema, so the description carries the entire burden. It is not enough for an agent to correctly call this tool because the confirmation workflow and the meaning of user_code are unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it does not. The three parameters (user_code, confirm_token, confirmation_id) are completely unexplained. The only hint is the generic phrase 'requires confirmation', which only vaguely maps to confirm_token and confirmation_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Enable SSH service to the Linux environment.' It also signals that this is a write operation, which helps distinguish it from read-only tools, though it does not explicitly compare itself with linux_ssh_disable or linux_ssh_port.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus its siblings. It does not mention that linux_ssh_disable is the counterpart for disabling, nor any prerequisites or conditions such as existing SSH configuration or access requirements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
linux_ssh_portC
Set SSH port for the Linux environment (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions that it is a write operation and requires confirmation, but it doesn't explain what the confirmation process entails, what happens after setting the port (e.g., service restart), or any side effects. Since no annotations are provided, the description carries the full burden of conveying behavior, and it only partially does so.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief and to the point, which is good for conciseness. However, it is a single sentence that packs the key info (set SSH port, write, requires confirmation) but lacks structure or elaboration on the confirmation flow. It is minimal but not overly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 4 parameters, absence of annotations, and no output schema, the cost of being wrong is high. The description does not explain how to obtain the confirmation token, what the port range is (though schema provides min/max), or what confirmation steps are needed. It is incomplete for an agent to safely call this tool without further inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coveragetechnique, the description adds almost no meaning beyond the parameter names. It doesn't clarify how the 'port' parameter is validated, what role 'user_code' plays, or how to obtain 'confirmation_id' and 'confirm_token'. The mention of 'requires confirmation' suggests the need for those, but detailed semantics are missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: setting the SSH port for the Linux environment. However, it doesn't explicitly differentiate from the sibling tools like mngt_sshport, which is closely related to SSH port management. It is clear enough but could be more precise in distinguishing its scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as mngt_sshport or linux_ssh_enable. The only context is that it is a write operation that requires confirmation, but no exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
linux_statusC
Linux application status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'read-only', which is a positive behavioral trait, but does not disclose what the status includes, whether any permissions are needed, potential side effects (none expected), or the format of the output. For a tool with no output schema, this is insufficient behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise phrase with no redundant words. It is front-loaded with the core purpose and the read-only trait. However, it is extremely brief and might be considered under-specified rather than appropriately concise, though it does not contain waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large set of sibling tools, many with status-related names, the description does not explain what distinguishes this tool or what its output represents. With no output schema, the description should describe the return value or the specific scope of 'Linux application status', but it does not. This leaves the agent uncertain about when and how to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, so the schema is trivially complete. Per the rubric, a 0-parameter tool receives a baseline of 4 because there is no parameter documentation needed. The description adds no param information, but that is not required here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a read-only query for 'Linux application status'. It provides a resource ('Linux application') and a general action (status), but does not specify what constitutes an 'application' or what exact information is returned. It is not a tautology and adds 'application' and 'read-only' to the name, but remains vague and does not clearly differentiate from many sibling status tools like show_status or sys_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description only says 'read-only', which implies it is safe to call, but gives no context about scenarios, prerequisites, or conditions that favor this tool over the numerous sibling status commands. No exclusion or alternative is mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
local8021x_showB
Local 802.1X configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses that the operation is 'read-only', which is useful and indicates no side effects. However, it does not describe what the tool returns (e.g., the format or details of the configuration), whether any authentication or privileges are required, or any other relevant behavior. The disclosure is minimal and leaves significant behavioral aspects undefined.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase that is concise and front-loaded with the key information ('Local 802.1X configuration' and 'read-only'). It contains no filler. However, it is extremely terse, and while not verbose, it could arguably be expanded slightly without losing conciseness to include more context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has zero parameters, no output schema, and low complexity, the description is moderately adequate. It indicates the resource and read-only nature, which is sufficient for an agent to understand the basic operation. However, it provides no detail about what the configuration output contains, how it is presented, or any potential limitations. For a show tool, this may be acceptable, but more specificity would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema is empty, so there is nothing to explain. Per the rubric, a baseline of 4 is appropriate for tools with no parameters. The description does not need to add parameter semantics, and it adds no extraneous information that could confuse.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource ('Local 802.1X configuration') and explicitly notes it is 'read-only', which implies a show operation. It distinguishes this tool from write operations and from the sibling local8021x_show_local_cer by focusing on configuration rather than certificates. However, the verb 'show' is not explicitly stated, though the name and read-only hint make the purpose reasonably clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The long sibling list includes local8021x_show_local_cer, which is closely related, but the description gives no differentiation or selection criteria. No context is provided on prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
local8021x_show_local_cerB
Local 802.1X certificates (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. The parenthetical 'read-only' usefully signals that no mutation occurs, but it does not describe what the output contains, whether it can fail, or how it relates to other certificate views.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single tight phrase with no filler or redundancy. It is appropriately sized for a parameterless read-only tool and front-loads the core subject.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimally sufficient for a parameterless read-only query, but it does not state what the result represents or when to choose this tool over closely named siblings. Without an output schema or annotations, a bit more context would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there are no parameter semantics for the description to clarify. The baseline of 4 is appropriate because there is nothing the description needs to add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly names the resource—local 802.1X certificates—and marks it as read-only, so an agent can tell this is a retrieval operation. It is not a tautology of the tool name, though it relies on the name's 'show' to convey the action explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool instead of related siblings such as local8021x_show or radius_show_local_cer. The agent must infer the tool's role from its name and the short description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_callA
Call log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. The phrase 'read-only' usefully signals that this tool does not mutate state, which is valuable. However, it does not disclose what the output looks like, whether it returns raw log entries, or any other behavioral characteristics expected of a log-reader.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loads the key fact ('read-only') immediately. Every word earns its place; there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool with no output schema, the description is largely sufficient: it names the resource and the safety profile. Some might expect a bit more about the nature of the returned data, but given the tool's simplicity the definition is complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and the schema already covers 100% of the parameter surface. The description has nothing to add about parameters, and the baseline of 4 for a no-parameter tool is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (call log) and indicates the operation is a read-only view. However, it is a noun phrase rather than a full verb+resource sentence, and it does not explicitly say whether it lists, views, or tails the call log, so it is slightly less explicit than ideal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use log_call versus related siblings like log_tail, log_filter, log_wan, or log_ppp. An agent must infer that this is the correct tool for call logs based solely on the name, which may be clear for humans but is not explicit decision guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_filterC
IP filter log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and 'read-only' is a useful behavioral disclosure. However, it omits any detail about output format, log contents, or whether the log is cleared or truncated, so the transparency is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a short, front-loaded fragment with no wasted words: 'IP filter log (read-only)'. It is concise, though it sacrifices a clear verb and supporting context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description is too thin to fully prepare an agent. It does not explain what the log contains, how it compares to other log tools, or what the expected return value looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is fully documented by virtue of being empty. A score of 4 is the baseline for a no-parameter tool, and the description adds no parameter information, which is acceptable since there are none to clarify.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a resource, 'IP filter log', and notes it is read-only, but it never states an explicit action like 'view' or 'show'. The phrase largely restates the tool name and provides no differentiation from siblings such as log_tail or ipf_view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool instead of the many log-related siblings like log_tail, log_call, log_wan, or ipf_view. The description gives no context about use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_pppB
PPP/MP log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description is the only source of behavioral disclosure. 'read-only' is a real behavioral guarantee that this tool will not change state, which is valuable. However, it says nothing about output format, whether it tails or returns a snapshot, or behavior when no PPP/MP session exists, so the behavioral disclosure is still incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and contains no filler or unnecessary detail. It communicates the resource and safety characteristic in one compact phrase. It could be slightly more useful with a verb, but it is appropriately front-loaded for a zero-parameter log tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool, the description only needs to establish what data the command is about. 'PPP/MP log' does that, but it does not indicate whether the result is a complete log dump, a limited tail, or how it is ordered. This leaves a few practical usage questions unanswered, especially since many sibling logging commands exist.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema contains zero parameters, so there are no parameter semantics for the description to explain. The empty schema combined with the 100% schema description coverage means an agent needs no additional parameter guidance to invoke the tool successfully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as a 'PPP/MP log' and labels it 'read-only', so an agent can tell this is a log-viewing command and not a mutating action. It lacks an explicit action verb, but the tool name 'log_ppp' and the resource phrase together make the purpose reasonably clear. It also offers a specific PPP/MP focus that helps distinguish it from other log commands.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool instead of sibling log tools such as log_tail, log_wan, or log_filter. The description does not mention exclusions, prerequisites, or an appropriate context for requesting the PPP/MP log.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_tailB
Display logs to the end (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the burden of behavioral disclosure. It does explicitly state 'read-only', which is a meaningful safety trait, and implies tail-style output. However, it does not clarify which log source is read, how much output is shown, or whether it follows the log continuously.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief and front-loaded, with no filler words. 'Display logs to the end' is slightly awkward compared to a phrase like 'tail logs', but the sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool, the description is minimally adequate. However, it does not identify which logs are tailed or how it relates to the many sibling log commands, leaving some ambiguity for an agent deciding among log_tail, log_call, log_filter, and sys_syslog.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is fully covered, so the description need not add parameter-level meaning. The baseline for a no-parameter tool is 4, and nothing is missing here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation ('Display logs') and the resource ('logs'), with 'to the end' conveying a tail-like behavior. It does not explicitly distinguish itself from sibling log tools such as log_call, log_filter, log_wan, or log_ppp, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives like log_filter or sys_syslog. The read-only note is useful but does not explain context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_wanC
WAN log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Because no annotations are supplied, the description carries the burden, and the explicit '(read-only)' label is a useful behavioral signal. It still does not disclose return format, log length, ordering, or behavior when the WAN log is unavailable, so coverage is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and contains no filler, so every token earns its place. The brevity is not a structural problem, though it does contribute to semantic thinness elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description should carry more context about what is returned. 'WAN log (read-only)' gives only the generic resource and safety profile, leaving return value semantics, scope, and context of the log unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% coverage, so there is nothing for the description to explain. This matches the baseline for no-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'WAN log (read-only)' clearly identifies the resource and signals a non-mutating operation, so it is more than a tautology. However, it lacks an explicit verb such as 'retrieve' or 'show', and it only weakly differentiates itself from sibling log_* tools like log_tail, log_filter, and log_ppp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided. The description does not say when to prefer log_wan over log_tail, log_filter, log_ppp, or wan_status, nor does it mention any exclusions or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_bfpC
Enable/disable brute-force protection (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations at all, the description carries the full burden for behavioral disclosure. It does say the operation is a write and that it requires confirmation, which is useful, but it does not explain side effects of enabling/disabling brute-force protection, the confirmation mechanism, or whether settings changes are immediate or reversible. For a sensitive write tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with the verb and resource front-loaded, followed by a useful behavioral parenthetical. Every word earns its place, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the simple surface action, this tool has five parameters, zero schema descriptions, no annotations, and no output schema. The description does not explain the confirmation flow, the role of any parameter, or the expected result of the write. An agent would not be able to invoke it correctly without external knowledge, so the description is not complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds essentially no meaning to the five parameters. It implies on/off through 'Enable/disable', but the schema already enumerates that. The confirmation-related fields (user_code, acknowledge, confirm_token, confirmation_id) are not connected to the stated confirmation requirement, so an agent cannot determine how to populate them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Enable/disable') applied to a specific resource ('brute-force protection'). This fully distinguishes it from the many status/read-only sibling tools, and there is no other brute-force protection tool in the sibling list. It is not a tautology and the write/confirmation note adds useful precision.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance about when to use this tool versus alternatives, nor any exclusions or prerequisites. The parenthetical '(write — requires confirmation)' hints at a workflow requirement, but it never explains how to obtain a confirmation token, when confirmation is needed, or what the expected sequence of calls is. An agent is left to infer usage entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_defensewormB
Enable/disable worm defense (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the behavioral disclosure burden. It usefully discloses that the operation is a write and requires confirmation, which is important safety-relevant context. It stops short of explaining what the confirmation entails, side effects, or reversibility, but it is not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. The write and confirmation warning is placed parenthetically, which is compact and appropriately scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple, and the required parameter is self-explanatory via the enum. However, the optional confirmation-related parameters are not explained, and there is no output schema or return-behavior note, so an agent may not know what response to expect or how to complete the confirmation flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to compensate for the four parameters. 'Enable/disable' loosely maps to the required onoff enum, but user_code, confirm_token, and confirmation_id are entirely unexplained, leaving the confirmation workflow ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (enable/disable) and the resource (worm defense), with a helpful write/confirmation tag. It is unambiguous about basic purpose, though it does not explicitly contrast itself with related sibling tools such as dos_activate or mngt_bfp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Enable/disable worm defense' implies the obvious use case: use this tool when worm defense needs to be turned on or off. It also notes that it is a write operation requiring confirmation, which is a meaningful precondition. However, it provides no explicit when-to-use or when-not-to-use guidance relative to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_httpportC
Set HTTP port (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and that it 'requires confirmation', which is a key behavioral trait. However, with no annotations provided, the description carries the full burden of behavioral disclosure. It fails to explain what the confirmation flow entails, what parameters like acknowledge, confirm_token, and confirmation_id do, or what side effects occur after setting the port. The statement is too vague to prepare an agent for the confirmation process.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is superficially concise, but it is under-specified rather than appropriately sized. For a tool with five parameters and a confirmation workflow, this is too terse. The sentence conveys the purpose but omits necessary operational details, so the brevity is not an asset—it is a deficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, confirmation required, no output schema), the description is drastically incomplete. It does not explain the confirmation process, the role of each parameter, or what response the agent should expect. An agent would not know how to correctly execute a write operation that requires confirmation, making the definition inadequate for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate by explaining the parameters. It provides zero information about any of the five parameters. The port parameter's range is in the schema but not described in text, and the confirmation-related parameters (user_code, acknowledge, confirm_token, confirmation_id) are completely unexplained. The description adds no semantic value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Set HTTP port'. It distinguishes from sibling tools like mngt_httpsport by specifying 'HTTP' rather than HTTPS, and the 'write' qualifier separates it from the many read-only show_* tools. However, it doesn't explicitly name alternatives or elaborate on the management context, so it's clear but not maximally differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It doesn't mention that this changes the management HTTP port or that it should be used instead of mngt_httpsport or other port-setting tools. The usage context is only implied by the name and the word 'write'. No exclusions or conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_httpsportC
Set HTTPS port (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It does state 'write — requires confirmation', which hints at a two-step confirmation flow and that the operation mutates state. However, it doesn't explain the confirmation mechanism (e.g., the roles of confirm_token and confirmation_id), potential side effects, or reversibility, leaving significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient phrase that front-loads the action and write nature. It contains no fluff or redundant words, but is almost too sparse, providing only the minimum. It's appropriately sized for the information it conveys, though it could afford a bit more detail without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, a confirmation flow, and no output schema or annotations, the description is far from complete. It omits the purpose of each parameter, how confirmation works, and what the result will be. An agent would have to guess at the semantics of the confirmation-related fields and the expected behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no information about any of the five parameters. It doesn't mention that 'port' is the key value or explain what user_code, acknowledge, confirm_token, or confirmation_id are for. The description entirely fails to compensate for the schema's lack of descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the resource ('HTTPS port'), distinguishing it from siblings like mngt_httpport (HTTP) and mngt_sshport. It also flags it as a write operation. However, it doesn't explicitly mention that it's for the management interface, though the mngt_ prefix implies it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like mngt_httpport or mngt_sshport. It doesn't state any prerequisites, context, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_nopingB
Enable/disable ping response (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose that this is a write operation and that confirmation is required, which is valuable. However, it does not explain side effects, scope of the change, permissions, or how the confirmation flow works.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words. The core action is front-loaded, and the write/confirmation caveat is placed immediately after, making the most important facts immediately visible.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four parameters at 0% schema coverage, this description is not complete. An agent cannot determine the exact effect scope, how to obtain a confirmation token, or what response to expect. It needs more context to invoke this correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It clarifies that onoff maps to enable/disable behavior, but user_code, confirm_token, and confirmation_id are left entirely unexplained. The phrase 'requires confirmation' hints at confirmation parameters but does not define them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Enable/disable ping response.' This clearly distinguishes it from read-only status commands and from ping-sending tools like ip_ping/ip6_ping in the sibling list. The 'write — requires confirmation' note further separates it from inspection tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives. It does not mention that ip_ping is for sending pings, nor does it describe scenarios where enabling/disabling ping response is appropriate. The only usage hint is the confirmation requirement, which is not enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_sshportC
Set SSH port (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly discloses that this is a write operation and that it requires confirmation, which is valuable. However, with no annotations provided, it does not explain the confirmation flow, persistence of the change, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded, efficient sentence with no redundant wording. It is concise but very brief for a tool with five parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations, no output schema, and five undocumented parameters, this description is not complete. An agent cannot determine the confirmation workflow or the role of the optional parameters, so additional context is needed for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description clarifies that 'port' refers to the SSH port, but it leaves user_code, acknowledge, confirm_token, and confirmation_id completely unexplained. Since schema description coverage is 0%, these parameters remain ambiguous to an agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and target: 'Set SSH port'. It distinguishes the tool from mngt_httpport and mngt_telnetport, though it does not clarify how it differs from the sibling linux_ssh_port.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to use this tool versus related tools such as mngt_sshtimeout, mngt_telnetport, or linux_ssh_port. The write/confirmation note hints at operational context but does not provide selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_sshtimeoutB
Set SSH session timeout (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| minutes | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It does explicitly state that this is a write operation and that confirmation is required, which are useful signals. However, it does not explain the confirmation workflow, side effects, persistence, or impact on existing SSH sessions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with no filler. Each phrase adds value: the operation, the target resource, the write nature, and the confirmation requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool that requires confirmation, the agent has no way to know how to obtain confirmation_id or confirm_token, or what response to expect. With no annotations and no output schema, the definition is too sparse for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-level meaning. The 'minutes' parameter is inferable from the tool name, but user_code, confirm_token, and confirmation_id are not mapped to the confirmation process described.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb-resource pair, 'Set SSH session timeout', which makes the operation unambiguous. It implies differentiation from sibling tools like mngt_sshport and mngt_telnettimeout, but does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus similar management settings such as mngt_telnettimeout or mngt_sshport. The only usage hint is that confirmation is required, with no elaboration on prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_telnetportB
Set telnet port (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation that requires confirmation, which is useful given there are no annotations. However, it does not explain the confirmation workflow (e.g., how confirm_token, confirmation_id, or acknowledge are used), nor any side effects or reversibility. This is better than nothing but still leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no fluff. It front-loads the action and adds the behavioral note about confirmation, all without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, no annotations, and no output schema, this description is far from complete. It omits how the confirmation process works, what each parameter is for, and what the response might be. An agent would struggle to invoke this tool correctly without additional documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only mentions setting the telnet port, which is obvious from the required 'port' parameter. The other four parameters (user_code, acknowledge, confirm_token, confirmation_id) are completely unexplained, leaving the agent guessing about their purpose and usage in the confirmation flow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the target ('telnet port'), explicitly naming the resource being modified. This distinguishes it from sibling tools like mngt_sshport or mngt_httpport, which set different ports.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor any exclusions or prerequisites. The usage is only inferred from the name and description, but there is no explicit direction on choosing it over similar management tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mngt_telnettimeoutC
Set telnet session timeout (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| minutes | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that this is a write operation requiring confirmation, which is useful. However, it doesn't explain what the confirmation flow is, what happens on success/failure, whether the change is immediate or requires a commit/reboot, or what side effects may occur. The sibling sys_commit suggests changes may need committing, but the description doesn't say.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the core action and the critical write/confirmation caveat. It is concise and scannable, though it could earn a 5 by adding a brief note on the confirmation flow without bloating.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations, no output schema, and four parameters at 0% schema coverage, the description is too thin. It lacks the confirmation workflow, parameter semantics, and post-condition behavior. An agent cannot reliably invoke this tool correctly based solely on the provided text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the four parameters. It only explains 'minutes' implicitly via the tool name ('timeout'), and leaves user_code, confirm_token, and confirmation_id entirely unexplained. The confirmation-related parameters are especially opaque — an agent cannot tell how they relate to the '(requires confirmation)' note without more detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Set telnet session timeout'. It also flags the operation as a write requiring confirmation, which distinguishes it from the many read-only sibling tools. It doesn't explicitly name a sibling alternative, but the mngt_* siblings (e.g., mngt_sshtimeout) make the resource clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. The '(write — requires confirmation)' hint implies it is a mutating operation, but it doesn't state prerequisites, when confirmation is needed, or how to obtain the confirmation token. An agent would have to infer usage from the parameter names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
msubnet_statusB
Multi-subnet status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It does state 'read-only', which tells the agent the operation will not modify state, but it says nothing about output format, potential latency, privilege requirements, or whether the status is collected from multiple sources. This is a minimal but real behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one short phrase with no filler. It front-loads the resource name and the key read-only trait, making it appropriately concise for a zero-parameter status tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only status tool, the description is minimally acceptable, but it does not explain the return value shape or what 'multi-subnet status' actually includes, and it provides no context for choosing this status tool over the many sibling status tools. The absence of an output schema makes this gap more noticeable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and schema description coverage is 100%, so there are no parameter semantics for the description to clarify. The baseline for zero-parameter tools applies here, and the description adds no unnecessary parameter-related text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as multi-subnet and labels the operation as read-only status, which is minimally clear. However, it lacks an explicit verb like 'show' or 'return' and does not explain what data the status contains, so it only weakly differentiates from the many other status tools in the sibling list beyond the multi-subnet qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus alternatives. The 'read-only' label implies it is for inspection rather than configuration, but no explicit context, exclusions, or alternative tool references are provided, leaving the agent to infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
msubnet_switchA
Enable/disable multi-subnet (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It does disclose that the operation is a write and requires confirmation, which is useful. However, it does not explain why confirmation is required, any irreversible effects, permissions needed, or what happens after the switch is toggled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. The essential purpose (enable/disable multi-subnet) comes first, and the operational qualifier (write, requires confirmation) is added compactly. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There are no annotations, no output schema, and a five-parameter input schema with no parameter descriptions. The tool involves a confirmation workflow, but the description never explains how to obtain or use confirm_token/confirmation_id, the role of user_code/acknowledge, or what a successful call returns. This is a substantial completeness gap for a write operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for documenting the five parameters, and it does not. The only semantic mapping is 'enable/disable' corresponding to the onoff enum; user_code, acknowledge, confirm_token, and confirmation_id are left completely unexplained. The parameter names are weakly self-explanatory, preventing a score of 1.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (enable/disable), the resource (multi-subnet), and the operation type (write), making it immediately distinguishable from read-only siblings like msubnet_status. The parenthetical also adds a key operational qualifier. No ambiguity remains about what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is a write operation requiring confirmation, which hints at usage context, but it does not explicitly say when to use this tool versus alternatives such as msubnet_status or switch_on/switch_off. There are no exclusions or 'use instead' statements, leaving the agent to infer usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nand_badB
NAND bad blocks (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly says 'read-only', which is a useful behavioral signal especially given there are no annotations. However, it does not disclose what the output will look like, whether it covers all NAND devices, or any additional operational context. It meets the minimum transparency bar but does not go beyond it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'NAND bad blocks (read-only)' conveys the core purpose and the read-only nature in four words. There is no filler, and the key attribute is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (zero parameters, no output schema, no annotations), the description adequately supports tool selection but leaves the return format ambiguous. An agent knows it is a read-only bad-block query, but not whether the result is a count, list, or status table. The definition is minimally sufficient rather than fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is empty, so there is no parameter semantics for the description to clarify. Per the rubric, 0 parameters receives a baseline of 4; no additional explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('NAND bad blocks') and signals a read-only operation, so an agent can infer this is a status/query tool. However, it lacks an explicit verb like 'show' or 'list', and the phrasing closely mirrors the tool name. It does partially distinguish from sibling 'nand_usage' by naming bad blocks specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given for when to choose this tool over alternatives such as nand_usage or other status commands. An agent must infer from the name alone that this reports NAND bad-block information, and there is no mention of exclusions or related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nand_usageB
NAND storage usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The phrase 'read-only' is a basic behavioral disclosure, but it doesn't explain what happens if NAND is inaccessible or whether it requires any special permissions (though likely not). It also doesn't mention whether it returns a snapshot or aggregates data over time. The bare-bones description doesn't contradict annotations, but it's minimally informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase, which is appropriately concise for a tool with no parameters. It's front-loaded with the key information ('NAND storage usage') and the read-only constraint. It doesn't waste words, so it's well-structured for its simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (no params, no output schema), the description is acceptable but not complete. It doesn't specify the units of usage (bytes, blocks, percentages) or whether it includes bad block information (which is likely covered by nand_bad). An agent might not know if this returns simple capacity numbers or detailed per-block usage. A bit more detail on the output format would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters, so the description doesn't need to explain parameter details. Per the rubric, 0 params earns a baseline 4. The description adds minimal value, but since there are no parameters, there's nothing to compensate for. The description correctly implies this is a no-argument query.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'NAND storage usage (read-only)' clearly identifies the action (querying usage) and the resource (NAND storage), and the read-only hint is explicit. However, it lacks detail on what specific metrics are provided (e.g., total, used, free space, bad blocks), which is common for sibling tools like nand_bad. It distinguishes itself from nand_bad by focusing on usage, but more specificity would be better.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a read-only query operation, but there is no explicit guidance on when to use this tool vs nand_bad or other storage-related tools. Given the large sibling list, naming alternatives or scenarios would be helpful. However, the read-only hint gives some context that this is a safe query, so it's not completely lacking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nat_dmzC
Set DMZ host (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| lan | Yes | ||
| host | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of disclosing behavioral traits. It mentions 'write' and 'requires confirmation', but does not elaborate on consequences (e.g., whether the change is reversible, whether it disrupts traffic, what the confirmation flow entails). The bare mention of confirmation is a minimal disclosure, but it lacks actionable detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the verb and resource. It is efficient and avoids verbosity, though it sacrifices depth for brevity. No wasted words, but the extreme shortness may be an under-specification rather than deliberate conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, requires 2, likely involves a confirmation workflow (indicated by fields like confirm_token and confirmation_id), and has no output schema, the description is grossly incomplete. An agent would not know how to initiate the confirmation, what parameters are needed for the write vs the confirmation steps, or what response to expect. The description covers almost none of the necessary context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% – the description does not reference any of the 6 parameters (lan, host, user_code, acknowledge, confirm_token, confirmation_id). The description adds no meaning beyond the schema, and the schema itself only provides types and constraints. For a tool with required parameters and a likely multi-step confirmation, the lack of any parameter explanation is a serious gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the resource ('DMZ host'), and explicitly labels it as a write operation, distinguishing it from read-only siblings like 'show_dmz'. However, it doesn't name the specific sibling tool it differs from, so it's a strong but not fully differentiating description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is a 'show_dmz' sibling for reading, but no explicit contrast or conditions are mentioned. The note 'requires confirmation' hints at a process but doesn't explain the workflow or when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nat_viewA
NAT configuration view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It states the operation is read-only, which is a key behavioral trait, but it does not disclose what the output looks like, whether it requires any authentication, or any side effects. The read-only claim is a positive signal but limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise phrase that front-loads the resource ('NAT configuration') and the operation ('view') plus the read-only qualifier. Every word earns its place; there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only view tool, the description is mostly complete, but the lack of any output schema or return-value description leaves a gap: an agent does not know what data the view returns. The sibling list shows many similar view tools, so a bit more context about what NAT configuration includes would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially complete. The description adds the semantic that this is a view operation, which is sufficient for a parameterless tool. Baseline 4 for zero parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'NAT configuration view (read-only)' clearly identifies the tool as a read-only view of NAT configuration, which is a specific verb-resource combination. It distinguishes itself from the sibling 'nat_dmz' (which likely configures DMZ) and 'show_nat' (which may show NAT status or rules), though it doesn't explicitly name those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The read-only qualifier implies it is for inspection rather than modification, and the sibling list contains many other view tools, but the description does not explicitly state when to use this tool versus alternatives like show_nat or nat_dmz. The usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
object_ip_viewC
IP objects view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does explicitly state that the operation is read-only, which is a meaningful safety signal. However, it does not disclose any additional behavioral context such as what data is returned, whether any state is cached, or what the output represents. The read-only disclosure is useful but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief and free of clutter, which is a positive, but the single phrase mostly duplicates the tool name and does not add enough substance to fully earn its place. It is appropriately short for a simple view tool, yet under-specified in content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should explain what the tool returns or shows, but it does not. It also leaves 'IP objects' ambiguous, making it difficult for an agent to know whether this returns address objects, IP-to-MAC bindings, or something else. The low complexity of a zero-parameter view mitigates the gap only slightly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing additional the description needs to explain about parameter semantics. The baseline of 4 for no-parameter tools applies here since the input schema already fully covers the empty parameter set.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'IP objects view (read-only)' essentially restates the tool name object_ip_view, adding only the read-only qualifier. It does not explain what 'IP objects' are or specify the exact action beyond the name itself, making it a tautology. No distinction is made from sibling tools like object_service_view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description merely says it is a read-only view, but does not indicate prerequisites, exclusions, or which sibling tools (e.g., object_service_view, ip_route_status) should be used instead. An agent is left to infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
object_service_viewC
Service objects view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden; it does disclose that the operation is read-only, which is a useful behavioral trait. However, it does not describe what data is returned, whether the view is live or cached, or any access requirements, leaving most behavioral context implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase with no wasted words and the read-only qualifier is front-loaded. It is concise, though terse to the point of under-specification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool, invocation is trivial, but with no output schema the description should explain what the view returns. It does not define 'service objects' or clarify how this view relates to similar siblings, so an agent is left guessing about the result and when it is useful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there is no parameter information that the description needs to add. The baseline of 4 applies because there are no parameter semantics to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Service objects view (read-only)' is essentially the tool name with underscores replaced by spaces; it restates the name without adding detail about what the tool actually does. It names a resource and a view action, but not what a service object is or how this differs from service_show or service_get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many sibling view/show/get tools. The read-only qualifier implies safe invocation, but no intended context, alternatives, or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portmaptime_flushC
Flush all portmaps (diagnostics) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and requires confirmation, which is useful behavioral context. However, it does not explain what 'flush' does to existing portmap entries, whether it is reversible, or what the confirmation flow entails. With no annotations provided, the description carries the burden and only partially meets it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action and includes the key write/confirmation warning. It is concise, though the parenthetical '(diagnostics)' is slightly ambiguous.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive write tool with no annotations and no output schema, the description is too thin. It does not explain the confirmation mechanism, the effect of flushing, or how the three parameters should be populated. An agent would struggle to invoke this correctly without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the three parameters (user_code, confirm_token, confirmation_id). The agent must infer that these relate to the confirmation flow, but the description provides no explicit mapping or format guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Flush') and resource ('all portmaps'), and adds a diagnostic context. It is distinguishable from siblings like portmaptime_list and portmaptime_set, though it doesn't explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It does not mention that this is a destructive diagnostic action or that it should be used only after listing/inspecting portmaps. The '(diagnostics)' hint is weak context, not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portmaptime_listA
List port mapping timeout settings (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the disclosure burden. It explicitly states '(read-only)', which clearly tells the agent the operation has no side effects. This is the most important behavioral trait for a list tool; other behaviors (e.g., output shape) are not described, but for a 0-parameter read-only tool this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the action and resource, with no filler. It conveys the essential function and the read-only property without any wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool, the description provides enough context to invoke it correctly. It does not explain the exact return format or units of the timeout settings, but the task is simple: the agent just calls it with no arguments and can expect a list of settings. Without an output schema, a slightly richer description would be nice, but the tool is so simple that the description is nearly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is an empty object, which covers 100% of the schema. With no parameters, the description is not expected to add parameter details; the baseline for 0 params is 4 and the description does not need to add more semantic meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and a clear resource ('port mapping timeout settings'), and adds a read-only cue. This distinguishes it from sibling tools like portmaptime_set (modifies) and portmaptime_flush (clears), making the purpose immediately obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to use this tool versus its siblings; the read-only hint implies it is for inspection, but the description never mentions the alternatives or says 'when you want to set or flush, use...' The usage context is only implied by the read-only label.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portmaptime_setC
Set port mapping session timeout (t=TCP, u=UDP, i=ICMP, w=WWW, s=SYN) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| proto | Yes | ||
| seconds | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It explicitly states that this is a write operation and that it requires confirmation, which is useful. However, it does not explain the confirmation workflow, side effects on existing sessions, failure behavior, or what happens if confirmation parameters are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, stating the action immediately and then mapping protocol codes in a terse parenthetical. There is no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a confirmation-gated write operation with no annotations and no output schema, the description is materially incomplete. It does not describe how confirmation is obtained or supplied, what the response or success/failure indicators look like, or what side effects may occur when the timeout is changed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains the proto enum letters, but seconds is only vaguely implied by 'timeout', and user_code, confirm_token, and confirmation_id are not explained at all. For a tool with five parameters, this leaves most parameter semantics unresolved.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action and resource ('Set port mapping session timeout') and decodes the protocol letters (t/u/i/w/s), so the operation is unambiguous. It doesn't explicitly contrast with siblings like portmaptime_list or portmaptime_flush, but the verb makes the intent clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as portmaptime_list, portmaptime_flush, or show_pmtime. The '(write — requires confirmation)' note hints at a precondition but does not explain when this tool should be selected or what conditions must hold before calling it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
port_sniff_statusC
Port sniffing status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states 'read-only', which is a useful safety hint, but it does not describe what the status represents, the output format, or any other behavior. This is minimal disclosure for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of a single phrase, and the 'read-only' note is front-loaded. However, it is under-specified and lacks any detail that would justify such brevity. It is concise but at the cost of necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is the sole source of meaning. It explains it is a read-only status query for port sniffing, but does not clarify what 'port sniffing status' entails, what data is returned, or how it differs from related status tools. Given the large sibling set, this is insufficient for an agent to reliably use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially complete and the description adds nothing beyond that. Per the baseline for 0-parameter tools, a score of 4 is appropriate; there is no missing parameter information to compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (port sniffing) and the action (status), and explicitly notes it is read-only. This is specific enough to distinguish it from many other status tools, though it does not name any sibling or elaborate on what the status contains. It is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus any of the many sibling status tools such as port_status or port_speed. No conditions, exclusions, or alternatives are mentioned. An agent has no information to decide between this and similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
port_speedC
Set ethernet port speed/duplex (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | ||
| speed | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the operation is a write and requires confirmation, which is a meaningful behavioral trait. However, it does not elaborate on what happens during confirmation, side effects, or whether changes are reversible, leaving gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the action and the critical confirmation note. It wastes no words, achieving high efficiency, though its brevity contributes to missing context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given five parameters, a write operation, no output schema, and no annotations, the description is insufficient. It fails to explain the confirmation flow, parameter roles, or expected effects, leaving an agent with inadequate information to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not mention any of the five parameters. Nothing explains the meaning of port, speed, user_code, confirm_token, or confirmation_id, leaving agents to guess their purpose and format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Set' and the resource 'ethernet port speed/duplex', which precisely describes the tool's function. However, it does not explicitly differentiate from sibling tools like port_status or switch_* beyond the action, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While it indicates this is a write operation requiring confirmation, it offers no guidance on when to use this tool versus alternatives such as port_status or switch_set. There is no context about prerequisites, when confirmation is required, or when this should be used over other port-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
port_statusB
Ethernet port status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly discloses that the operation is read-only, which is valuable because no annotations are provided. However, it does not say what the status output contains (e.g., link state, speed, errors) or how results are structured.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact, front-loaded phrase with no filler. The parenthetical 'read-only' adds meaningful safety information without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only status query, the definition is minimally adequate, but it lacks detail about what 'status' includes and does not distinguish it from similar sibling tools. With no output schema, a slightly richer description of the returned status fields would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4 and no parameter explanation is needed. The description adds no parameter semantics, but none are required for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource, 'Ethernet port status', and explicitly labels it read-only, so an agent can infer this is a status-query tool. However, it lacks an explicit verb like 'get' or 'show' and does not differentiate it from nearby siblings such as port_speed or switch_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like port_speed, port_sniff_status, or show_status. It implies a general purpose but gives no exclusions, prerequisites, or routing hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qos_classC
Configure QoS class (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the behavioral burden and does disclose that this is a write operation requiring confirmation. However, it does not explain the confirmation mechanism, side effects, reversibility, or what happens to existing QoS class configuration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with the main purpose front-loaded and the write/confirmation qualifier in parentheses. It is efficient, though very brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has four undocumented parameters, no annotations, no output schema, and a large sibling set. The description is far too sparse to support correct invocation: it omits parameter meanings, the confirmation flow, required inputs, and expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no meaning for the four parameters (param, user_code, confirm_token, confirmation_id). The description must compensate for the schema gap but does not, leaving parameter semantics almost entirely opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Configure') and resource ('QoS class'), and clarifies this is a write operation. This distinguishes it from the many read/status siblings, though it does not explicitly differentiate it from qos_setup or appqos_enable-like tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of alternatives. It only notes 'write — requires confirmation,' providing no conditions, prerequisites, or exclusions, and it never references sibling tools such as qos_setup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qos_setupC
Configure QoS (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden, and it does disclose that the operation is a write and requires confirmation. It does not explain what happens after confirmation, whether changes are reversible, or what permissions are needed, leaving notable behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely compact, front-loads the operation, and contains no wasted words. The brevity is the main weakness, but that is a completeness issue rather than a conciseness problem.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with four undocumented parameters, no output schema, and no annotations, this is not enough for an agent to invoke it correctly. The confirmation flow is mentioned but not explained, and the crucial 'param' payload is undefined, so the definition leaves major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to explain 'param', 'user_code', 'confirm_token', and 'confirmation_id'. It adds no parameter-specific meaning; 'requires confirmation' only loosely hints at the token and confirmation fields, while the required 'param' remains completely opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource ('Configure QoS') and explicitly labels the operation as a write. It does not distinguish this from related siblings such as qos_class or appqos_enable, so it lacks full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The write label implies this tool is for changing QoS rather than viewing it, and 'requires confirmation' implies a prerequisite step. However, it names no alternatives and gives no concrete conditions for choosing qos_setup over the many other QoS-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
radius_showB
RADIUS configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose one important behavior: the operation is read-only. However, it does not mention return format, whether the displayed configuration is live or saved, or any prerequisites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded with the key facts: resource and read-only behavior. It contains no filler, though a slightly more explicit verb would make it clearer.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless, read-only tool the description is minimally viable, but it is thin: it does not specify what parts of RADIUS configuration are shown or how this tool relates to radius_show_local_cer. An agent can infer the basic purpose but gets little additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema description coverage is 100%, so there is no parameter ambiguity for the description to resolve. This matches the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('RADIUS configuration') and explicitly labels it 'read-only', making the intended show operation clear. It does not use an explicit verb and does not distinguish itself from radius_show_local_cer or other show_* siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to choose this tool over sibling tools such as radius_show_local_cer or other show_* commands. The 'read-only' label implies safe viewing, but no alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
radius_show_local_cerB
RADIUS local certificates (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the full burden. It states 'read-only', which discloses that the operation does not modify state, but provides no other behavioral details such as output format, authentication requirements, or potential errors. For a simple display tool this is reasonable but still limited compared to what could be disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise phrase with no redundancy. It front-loads the core resource ('RADIUS local certificates') and includes the behavioral qualifier 'read-only'. Every word earns its place; there is no verbose content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only tool, the description is adequate but not fully complete. It clearly identifies the scope (RADIUS local certificates) but does not specify what information is returned (e.g., certificate details, expiry dates) or how it differs from similar tools like 'local8021x_show_local_cer'. Given the large sibling set, more explicit context would help an agent choose correctly, but the simplicity of the tool mitigates the gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter semantics to explain. The description does not need to compensate for any schema gaps because the schema (empty properties) fully covers the absence of inputs. A baseline of 4 is appropriate when no parameters exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'RADIUS local certificates (read-only)' which clearly identifies the resource (local certificates) and implies a 'show' or list operation via the 'read-only' qualifier and the tool name. It distinguishes from siblings like 'radius_show' by specifying 'local certificates', but does not explicitly name alternative tools or contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus others. The description does not mention any conditions, alternatives, or exclusions. An agent has no context to decide if this is the right tool except by assuming the name and description are sufficient, which is risky given several similar 'show' tools exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
service_getC
MyVigor service data (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states that the operation is read-only; it does not describe return format, scope of data, potential latency, or any operational implications. This is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise phrase with no filler. Every word adds some signal: the domain ('MyVigor'), the resource ('service data'), and the access mode ('read-only'). It is appropriately sized for a parameterless tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool has no parameters and no output schema, the description is too vague for an agent to know what data will be returned or how it differs from service_show. A read-only data tool still needs to state what 'service data' means or what shape the response takes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100%, so the description does not need to explain parameter semantics. The baseline of 4 for a no-parameter tool applies; the description adds no parameter information but none is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a resource ('MyVigor service data') and a mode ('read-only'), but it lacks a specific verb and does not clarify what 'service data' encompasses. With a sibling tool named service_show, the description does nothing to distinguish this tool from that one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as service_show or other read-only status tools. The read-only hint implies a query operation, but no explicit context, prerequisites, or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
service_showC
MyVigor service status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states 'read-only', which hints at safety but does not disclose what the tool returns, whether any parameters are needed (trivially none), what format the status appears in, or any side effects (even though it's read-only, it may still involve network queries). The description is too minimal to inform the agent of expected behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short—a single phrase—which is concise, but it is not a well-formed sentence and lacks structural elements like a verb or explicit object. It is under-specified rather than efficiently concise, trading clarity for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and no annotations, the description is the only source of context. It fails to explain what 'service status' means, what information is returned, or how it differs from the many sibling status tools. An agent cannot know what to expect from calling this tool, making it incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is complete with 100% coverage by definition. The description adds no parameter-related information, but none is needed. The baseline for zero parameters is 4, and the description does not detract from that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'MyVigor service status (read-only)' is a noun phrase rather than a clear verb+resource statement. It does not specify what 'service' refers to (e.g., a specific daemon, a feature set) or what 'status' includes. With many sibling tools like show_status, sys_status, and show_health, the description provides no differentiation, leaving an agent unable to tell which tool to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many similar status/read-only siblings. The description does not mention any conditions, alternatives, or exclusions. An agent has no basis for selecting this tool over show_status, sys_status, or sys_health.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_clienttrafficB
Per-client traffic statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. 'Read-only' usefully signals that no mutation occurs, but it does not describe what statistics are included, whether the output is a snapshot or aggregated, or if the query could be expensive. This is adequate for a trivial no-parameter read but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at six words: 'Per-client traffic statistics' conveys scope and 'read-only' conveys safety. Every word earns its place with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema read tool, the description is mostly usable, but it does not situate this tool among the many traffic/show siblings or clarify what 'client' means in this context. The missing relation to alternatives and output expectations keeps it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema fully documents inputs and no description compensation is needed. The baseline of 4 applies because there are no undocumented parameters to clarify.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as per-client traffic statistics and 'read-only' implies a query/show operation consistent with the tool name. It gestures at differentiation from show_traffic by using 'per-client', though the exact meaning of 'client' is not specified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as show_traffic, show_statistic, or show_flow. An agent cannot determine selection criteria or exclusions from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_cocpuB
Co-processor usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are available, so the description carries the full burden of behavioral disclosure. It only states 'read-only', which signals non-mutating behavior, but it does not describe what data is returned, the format, or any side effects. A status tool typically returns usage metrics, but the description leaves this implicit rather than explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single phrase that front-loads the key information ('co-processor usage') and adds a behavioral modifier ('read-only'). There is no wasted text, and the structure is clear, though it is almost too minimal to be considered well-structured rather than merely terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no parameters) and has no output schema, so the description must compensate by explaining what the tool returns or the nature of the usage data. It fails to do so, offering no information about units, interpretation, or output format. An agent cannot predict what the tool will produce beyond the vague label 'usage'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema fully covers this (100% coverage). The rubric sets a baseline of 4 for tools with no parameters since there is nothing to document. The description does not need to add parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the specific resource ('co-processor usage') and explicitly notes it is read-only. It clearly distinguishes from siblings like show_cpu or show_memory by naming a unique subsystem, making it easy to identify the tool's purpose. However, it does not elaborate on what 'usage' entails (e.g., percentage, rate), so it is not maximally specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus similar status tools such as show_cpu, show_memory, or show_statistic. The description does not mention alternatives or conditions that would select this tool, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_cpuC
CPU usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It states 'read-only', which is useful, but gives no additional detail about the nature of the output (e.g., snapshot vs. average), any prerequisites, or limitations. This is minimal coverage for a tool that could have varying semantics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded, with no wasted words. It is a single short phrase that directly states the purpose. However, it is so brief that it borders on under-specification rather than effective conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool, the description is arguably sufficient if it uniquely identifies the tool, but the large sibling set (show_cocpu, show_cputemp, show_memory) makes it unclear what distinguishes this tool. No output schema is provided, and the description gives no hints about return format or usage context, leaving gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema already covers everything. The description adds no parameter information, but none is needed. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (CPU usage) and implies a read-only action, which is clear but does not differentiate from sibling tools like show_cocpu (likely CPU usage per core or similar) or show_cputemp (temperature). It lacks specificity about what kind of CPU usage is shown, making it somewhat ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many CPU-related siblings. No conditions, exclusions, or alternatives are mentioned, leaving the agent to guess based solely on the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_cputempB
CPU temperature (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'read-only', which is a key trait, but provides no details on output format, units, or any potential caveats. Minimal disclosure beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise phrase with no filler. It front-loads the core purpose and read-only attribute, making it instantly scannable. Perfectly sized for a trivial tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter read-only tool, this is mostly adequate, but it omits what the return value looks like (e.g., temperature value, units). Without an output schema, this is a gap, though minor given the simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline of 4 applies. The description adds no parameter information because none exists, which is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource (CPU temperature) and its read-only nature, which is specific and distinguishes it from sibling tools like show_cpu or show_memory. However, it doesn't explicitly contrast with those alternatives, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus other show_* siblings. The agent must infer usage solely from the name and brief description, with no context about selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_dmzA
DMZ host configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it explicitly states 'read-only', which is the key behavioral trait for a zero-parameter query. It does not describe output format or side effects, but for a simple read-only command this is largely adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact phrase that front-loads the resource and its read-only nature. Every word earns its place, with no filler or redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter show command, the description adequately states what is displayed and that the operation is non-mutating. It omits output/format details, but given the tool's simplicity and the absence of an output schema, the missing information is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no properties and 100% schema description coverage, so there are no parameters for the description to clarify. The baseline score of 4 applies because the tool accepts no parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('DMZ host configuration') and the access mode ('read-only'), making the tool's function clear. It does not use an explicit verb, relying partially on the 'show' prefix in the name, but it is unambiguous and distinguishable from setter-style sibling tools like nat_dmz.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus the many sibling show commands such as show_status, show_nat, or nat_dmz. The 'read-only' tag implies safe retrieval, but it does not state conditions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_dnsB
DNS server settings per LAN (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly marks the tool as read-only, which is a useful behavioral trait given that no annotations are provided. However, it does not disclose the return format, pagination, or any potential side effects, though for a simple show command this may be acceptable. The read-only label is the primary behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no filler. It front-loads the key information (resource and scope). It is appropriately sized for a parameterless read-only tool, though it could add a bit more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-parameter read-only query, the description states the essential information. However, the absence of an output schema means the agent does not know what the result looks like. While a show command likely returns a straightforward structure, the description could clarify the format or mention that it returns a list of DNS settings. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties, so there are no parameters to document. The description adds no parameter-specific information, but with no parameters, the baseline of 4 applies. The schema is trivially fully covered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear resource (DNS server settings) with a specific scope (per LAN) and a read-only qualifier. It is distinguishable from sibling tools like wan_dns and dhcp_dns1, though it does not explicitly name them. The verb is implicit but inferable from the show prefix.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With many DNS-related siblings (wan_dns, dhcp_dns1, ip_dnsforward), the agent receives no routing cues and must infer scope from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_flowC
Flow tracking view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavior disclosure. The '(read-only)' qualifier is genuinely useful, confirming the tool has no side effects. However, it omits what the view contains, whether values are stale or snapshot-based, and any refresh or format characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense phrase with no filler, and the safety qualifier is front-loaded. It is concise rather than bloated — the only cost is that extreme brevity leaves semantic gaps, which is better penalized under completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's low configuration complexity, the sparse text fails to disambiguate 'flow' from a crowded sibling set and never explains the output shape (no output schema, no annotation help). An agent would still be uncertain what 'flow tracking' is and how it differs from show_session or show_traffic.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there is nothing for the description to add about parameters. Per the rubric, the baseline is 4; the description correctly implies a no-argument invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a distinct resource ('flow tracking view') and a read operation, which goes beyond a bare name. However, 'flow' is ambiguous — among siblings like show_traffic, show_session, and show_clienttraffic, the agent cannot tell what specific data this view exposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use show_flow versus the many neighboring view tools (show_traffic, show_session, show_clienttraffic, show_nat). No context, alternatives, or exclusions are mentioned, so the agent has to guess which monitoring view fits the request.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_lanA
LAN/VLAN interfaces: IP, mask, DHCP pool, gateway (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It explicitly states 'read-only', which communicates the key safety trait of no side effects. However, it offers no other behavioral context such as output format, whether the DHCP pool is conditionally shown, or how it handles multiple VLANs—though for a simple show command this is a reasonable baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly scoped sentence that front-loads the resource type and immediately enumerates the returned fields. There is zero fluff; every word contributes to the agent's understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema, no annotations), the description covers the essential information: what is shown and that it is safe. It could be more complete by clarifying the exact structure of the output or VLAN selection, but for a read-only status show, it is sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool takes zero parameters, so the baseline is 4. The description does not need to explain parameter behavior, and the empty input schema confirms there is no ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (LAN/VLAN interfaces) and lists the specific fields displayed (IP, mask, DHCP pool, gateway), with an explicit read-only qualifier. While it does not explicitly differentiate from sibling tools like vlan_status or ip_addr, the scope is specific enough for an agent to understand what this tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the many sibling status/read tools. The read-only qualifier implies a monitoring use case, but there are no explicit conditions, prerequisites, or exclusions, leaving the selection decision to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_memoryA
Memory usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It does state 'read-only', which is a useful behavioral signal indicating no side effects. However, it doesn't disclose what the output looks like, whether it reflects real-time or cached data, or any units/format details. The read-only claim is a positive but minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact phrase that conveys the subject and the read-only nature. There is no wasted text, and the key information is front-loaded. For a parameterless status tool, this is appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless read-only tool, the description is mostly complete. However, given the large sibling set of status/diagnostic tools, a bit more context about what 'memory usage' includes (e.g., total, used, free, buffer) or how it differs from sys_health or linux_status would help an agent select it confidently. The lack of an output schema also means the description could have mentioned the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter semantics burden on the description. The schema is trivially complete (100% coverage with an empty properties object). The description correctly implies no arguments are needed, which is sufficient for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Memory usage (read-only)' clearly identifies the resource (memory usage) and the operation (view/read). It distinguishes itself from the many sibling tools by specifying memory as the subject, though it doesn't explicitly name a sibling alternative. The parenthetical 'read-only' reinforces the non-mutating nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this is a diagnostic/status tool for checking memory usage, which is a common use case among the many show_* siblings. However, it provides no explicit guidance on when to choose this over alternatives like show_status, sys_health, or linux_status, nor does it state any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_natA
NAT port redirection running table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does disclose the key safety trait with 'read-only' and indicates dynamic state via 'running table.' However, it does not describe output format, pagination, or any runtime caveats.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded noun phrase with no filler or repetition. Every word adds meaning, and it is appropriately sized for a zero-parameter status command.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless read-only listing, the description is mostly complete: it names the resource, indicates it is a table, and signals read-only behavior. It would benefit from a explicit contrast with show_portmap/nat_view, but nothing essential about invoking the tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema fully defines the invocation surface. The description appropriately focuses on what the tool does rather than parameter syntax, meeting the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource, 'NAT port redirection running table,' and explicitly marks it read-only. It is clear enough to distinguish this as a status/view tool, though it does not explicitly differentiate itself from siblings like show_portmap or nat_view.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as nat_view, show_portmap, or upnp_nat. The word 'running' implies current runtime state, but this is not made explicit enough to route an agent reliably.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_openportB
Opened ports (NAT) (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It does state 'read-only', which is a useful behavioral guarantee, but it does not mention return format, whether it reflects active sessions or configured rules, or any other runtime behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded, with the NAT scope stated firstcher. It avoids unnecessary words, but reads as a fragment rather than a complete functional statement, so it does not earn a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only query, the description is mostly workable because the agent can invoke it without arguments and knows it is non-mutating. However, without an output schema or any distinction from sibling NAT/port tools, it is ambiguous whether this lists configured open-port rules, active NAT sessions, or UPnP-opened ports.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parametersinate 100% coverage, so no parameter explanation is needed. The description adds useful context by indicating the output is about opened ports in a NAT context, which is sufficient for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('opened ports') and scopes it to NAT, with the verb carried by the tool name 'show'. However, it does not explicitly differentiate it from sibling tools like show_nat, nat_view, or upnp_nat, so some ambiguity remains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use show_openport versus alternatives such as show_nat, nat_view, port_status, or upnp_nat. No prerequisites or selection criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_pmtimeC
Port mapping timeout settings (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'read-only', which conveys that the operation does not modify state, but it does not disclose what output is returned, whether authentication is required, or any side effects (though read-only implies none). This is minimal and insufficient for a tool in a complex system.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it is a noun phrase rather than a proper sentence. It lacks structure and does not front-load actionable information. It is not a tautology, but it is under-specified for a tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with no parameters and no output schema, the description should at least clarify what information is displayed or how it differs from similar siblings like portmaptime_list. It does neither. The description is incomplete for an agent to understand the tool's full behavior and appropriate invocation context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the input schema is empty. Per the baseline for zero-parameter tools, a score of 4 is appropriate because there is no parameter information that the description would need to add. The description does not introduce any parameter-related ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun phrase, 'Port mapping timeout settings (read-only)', which names the resource but lacks an explicit verb like 'show' or 'display'. While the 'show_' prefix and 'read-only' hint imply a query operation, it does not clearly state what the tool does with a specific verb+resource pair. It also does not distinguish itself from the sibling portmaptime_list, which likely serves a similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as portmaptime_list or other show_* commands. The description provides no context about typical use cases, prerequisites, or when another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_portmapC
Port mapping table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the read-only behavior, which is useful, but it omits any other behavioral details such as output format, data source, or potential limitations. This is minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short ('Port mapping table (read-only)') with no fluff, which is concise. However, it is under-specified to the point of being minimal; it does not provide enough information to be genuinely useful. It is concise but not appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is the sole source of information. It fails to explain what the port mapping table contains, how it is presented, or any prerequisites. For a read-only tool, more context is needed to ensure correct usage, especially with many similar sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to explain. Per the rubric, a baseline of 4 is appropriate when there are no parameters, and the description does not need to add parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('port mapping table') and indicates it is read-only. However, it does not differentiate this from sibling tools like 'show_nat' or 'nat_view', and 'port mapping' could be ambiguous without context. It is not a tautology, but it lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description only states what it shows, not when it is the right choice. It does not mention any exclusions or related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_qryrdslA
Query ADSL/VDSL line info (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the behavioral burden; 'read-only' is a useful safety disclosure. However, it does not describe what the returned line info contains, whether data is current, or any error/empty-result behavior, so transparency is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence conveys operation, subject, and safety trait with no filler. It is appropriately minimal for a parameterless query tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (no parameters, no output schema, no annotations), the description contains the essential information needed to select and invoke the tool. 'ADSL/VDSL line info' adequately signals the return substance, and 'read-only' covers the safety profile.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4; no parameter documentation is needed. The schema coverage is effectively 100% because the properties object is empty, and the description correctly adds no parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Query') and a concrete resource ('ADSL/VDSL line info'), and the parenthetical 'read-only' makes the operation unambiguous. This sets it apart from the large set of generic show_* and sys_* siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 related status/query siblings such as show_traffic, wan_status, or show_status. The only usage signal is implied by the subject 'ADSL/VDSL line info'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_sessionB
Session usage statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state the operation is read-only, which is a critical safety property. However, it does not mention any side effects, performance implications, authentication requirements, or what the response contains. While read-only is the most important trait, the lack of additional context leaves the agent with minimal behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single phrase—and front-loads the core purpose ('Session usage statistics') with the read-only qualifier immediately following. Every word earns its place, and there is no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool has no parameters and no output schema, the description is too terse to be complete. It does not clarify what 'session' refers to, what specific statistics are provided, or how the output is structured. Given the large set of sibling 'show_*' tools, an agent cannot reliably determine if this is the right tool without more detail. The read-only qualifier helps but does not compensate for the missing scope definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema fully covers them (100% coverage). The description adds no parameter information, which is acceptable because there are none to document. The baseline for 0 parameters is 4, and nothing detracts from that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb-resource pair: 'Session usage statistics' implies showing session statistics, and it explicitly marks the operation as read-only. It is not a tautology and distinguishes itself from many sibling 'show_*' tools by focusing on session usage, though it does not specify what kind of session (e.g., network, user, VPN) or what statistics are included.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like show_statistic, show_flow, or show_traffic. There is no mention of conditions that favor this tool, nor exclusions. The read-only nature is implied but not tied to specific usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_statisticB
Interface statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discharges the behavioral burden by stating 'read-only', which tells the agent the operation should not mutate state. It does not describe output format, scoping, or side effects, but for a zero-parameter query that is a reasonable minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is six words and contains no filler; it front-loads the resource and suffixes the safety qualifier. It is appropriately brief for a trivial tool, though it is somewhat terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool with no output schema, 'interface statistics (read-only)' is minimally sufficient, but it leaves unspecified what statistics are returned and how they are grouped. The large set of sibling statistics tools further increases the need for at least one clarifying sentence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the input schema is an empty object, so there are no parameter semantics to clarify. The description adds no parameter information, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource ('interface statistics') and flags it as read-only, so an agent can infer this is a non-mutating display tool. It lacks an explicit verb and does not distinguish it from sibling statistics tools, but the resource is specific enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No sentence or phrase indicates when to prefer this tool over alternatives such as show_traffic, show_flow, or sys_app_statistic. The only contextual hint, 'read-only', is a safety property, not a decision rule. Thus no usage guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_statusA
System uptime, LAN DNS, IP, per-WAN link status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden; it explicitly declares '(read-only)', which is the most important safety-related trait for this tool. It also lists what categories of information are returned, giving the agent a clear expectation of the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the key resource list and the read-only nature. Every word adds value and there is no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only status tool with no output schema, the description adequately covers what the tool returns and that it is safe to invoke. It does not describe output formatting or interpretation, but the listed status categories are sufficient for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and the schema is fully covered, so there is no parameter documentation burden on the description. The baseline of 4 applies because there is nothing missing for an agent to call it correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names specific resource categories (uptime, LAN DNS, IP, per-WAN link status) and marks the operation as read-only, making the tool's purpose clear. It does not explicitly contrast itself with sibling tools like show_lan, show_dns, or wan_status, but the combined status scope is recognizable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many more specific status tools among its siblings. It does not state whether this is the preferred overview command or when a user should instead call show_dns, wan_status, or similar.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_trafficC
Traffic statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The parenthetical 'read-only' explicitly communicates that the operation is non-mutating, which is a useful behavioral signal given that no annotations are present. However, the description does not disclose what kind of traffic data is returned, whether counters are cumulative or sampled, or whether the data is live/cached.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loads the core subject, with no filler words. It is concise; the only issue is that it is so minimal it omits contextual details, but that tradeoff does not hurt the conciseness score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, annotations, and any differentiation from sibling tools, this description provides only a high-level hint of what the tool does. An agent cannot tell what exact traffic statistics are included, what the return shape looks like, or why this tool should be preferred over show_statistic/show_flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty input schema, so there are no argument semantics for the description to clarify. The schema already provides complete parameter coverage, making the lack of parameter-specific detail non-problematic.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as 'traffic' and indicates this is a statistics/read-only operationcars, so purpose is recognizable. However, it largely restates the tool name and does not distinguish it from close siblings such as show_statistic, show_flow, or show_clienttraffic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many related show_* and *_statistic tools. No alternatives, prerequisites, or exclusions are mentioned, leaving the agent without routing signals.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_voipC
VoIP status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Read-only' gives a minimal safety signal, but the description does not reveal what data is returned, the output format, or any side effects. For a status tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loaded, which is efficient. However, the brevity borders on under-specification — it conveys the core purpose but omits crucial context about return data and scope, so it doesn't fully earn its place by answering what an agent needs to know.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description alone must make this tool fully usable. It fails to state what fields or metrics the VoIP status returns, and given the large family of similar show_* tools, this ambiguity makes the definition incomplete for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the schema or description to document. Per the baseline for 0-parameter tools, a 4 is appropriate since no parameter semantics are needed and nothing is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear resource (VoIP) and an implied verb (status/read), which distinguishes it from the many other show_* siblings by subject. However, it does not specify what kind of status is returned (line status, registration status, codec info, etc.), leaving the agent to guess the tool's exact scope. It's above a tautology because it adds the 'status' and 'read-only' frame, but it's thinner than it could be.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use show_voip versus the 30+ other show_* siblings (show_status, show_lan, show_dns, etc.). There are no conditions, exclusions, or named alternatives. The agent is left to infer the use case purely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_listC
Switch port list (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure. It does state the tool is 'read-only', which is a useful safety signal, but it omits any other behavior such as output format, authentication needs, or performance implications. This minimal disclosure leaves the agent under-informed for a tool with no other metadata.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using only one phrase. It is front-loaded with the key action ('list') and resource ('switch port'), and there is zero redundancy. However, its brevity borders on under-specification, so a high yet not perfect score is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and no parameters, the description is the sole source of context. It only says 'read-only' and 'list', but doesn't clarify the output format, how it differs from sibling switch tools, or any edge cases. This is insufficient for an agent to call it correctly with confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the schema provides no information by definition. The description adds meaning by indicating the tool returns a list of switch ports, which is beyond what the empty schema conveys. With 0 parameters, this is a solid baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb ('list') and a resource ('switch port'), but it's phrased as a noun phrase rather than a clear action. It doesn't specify what details are listed or how it differs from similar sibling tools like switch_status or switch_query, leaving the purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There are many sibling tools with similar names (switch_status, switch_query, port_status), and the description gives no hint about the appropriate context or exclusions, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_offC
Disable switch feature (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and that it requires confirmation, which is useful behavioral context beyond the bare tool name. However, with no annotations provided, it does not explain side effects, reversibility, permissions, or what exactly happens when the switch feature is disabled.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler. It packs the essential purpose and a key behavioral note, though it is terse enough that some may see it as under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with four parameters, no annotations, and no output schema, this description is far from complete. It lacks parameter semantics, confirmation-flow details, consequences of the action, and any indication of what the response will contain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters. The required 'param' field is entirely undocumented, and the confirmation parameters are only vaguely implied by 'requires confirmation' without being mapped to user_code, confirm_token, or confirmation_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly names a specific action ('Disable') and resource ('switch feature'), and identifies it as a write operation. It is distinguishable from siblings like switch_status, switch_query, and switch_on by its imperative 'disable' framing, though it does not explicitly name any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus switch_on, switch_query, or other switch-related tools. The implication that you use it when you want to disable the switch feature exists, but there are no exclusions, prerequisites, or explicit routing decisions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_onB
Enable switch feature (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does state 'write' and 'requires confirmation', which are useful behavioral signals, but it does not explain what side effects occur, whether the operation is reversible, or what the confirmation flow entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with the core action ('Enable switch feature') front-loaded and the key behavioral note parenthesized. It is concise and readable, though slightly too terse to provide meaningful guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation-gated tool with four parameters, no annotations, no output schema, and no schema descriptions for parameters. The description does not explain the 'param' semantics, the confirmation mechanism, or the precise effect, so it is not sufficient for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not clarify the roles of param, user_code, confirm_token, or confirmation_id. The mention of confirmation is a useful hint, but an agent still cannot determine how to populate the required fields or what confirmation data to supply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Enable') and a concrete resource ('switch feature'), and clearly differentiates from the sibling switch_off (inverse), switch_status, switch_list, and switch_query. It makes the tool's operational role obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case by saying 'Enable switch feature', but it does not explicitly describe when to use this tool over switch_off or the status/query variants. The 'requires confirmation' note signals a necessary condition, but no when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_queryC
Switch query (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It only discloses that the operation is read-only, which is helpful but minimal. It does not describe what data is returned, whether there are side effects (beyond read-only), or any access requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, but this is under-specification rather than conciseness. It lacks essential details about the tool's scope and behavior, making it unhelpful despite its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the vague description and no output schema, an agent cannot determine what this tool does, what inputs it might take (even though none are declared), or what the response looks like. The existence of many sibling tools makes this ambiguity worse, as the agent cannot reliably choose this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing to document. The description does not need to explain parameters, and it adds no misleading information. This is the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb ('query') and a resource ('switch') but is vague about what is being queried. It does not differentiate from siblings like switch_status or switch_list, which likely serve similar purposes. Adding 'read-only' is a hint but not a clear purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The agent is left to guess whether switch_query is preferred over switch_status or switch_list, and there is no mention of any conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_statusC
Switch status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'read-only', which is a minimal safety signal, but it does not explain what the status output contains, whether it reflects a physical switch, a software switch, a port group, or a system state, or whether any side effects or prerequisites exist. The description adds almost no behavioral context beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it is under-specified rather than efficiently informative. 'Switch status (read-only)' is a fragment, not a sentence, and it does not earn its place by adding meaningful information beyond the tool name. It is not verbose, but it is not well-structured either.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the enormous sibling list with many status/query tools (switch_query, switch_list, show_status, port_status, etc.), the description is incomplete. An agent cannot determine what 'switch' refers to, what the output looks like, or how this differs from switch_query. With no output schema and no annotations, the description should provide more context but does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter semantics burden on the description. The schema is trivially complete (100% coverage with an empty properties object), and the description correctly implies a no-argument status query. Baseline 4 is appropriate for a zero-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Switch status (read-only)' names a resource ('switch') and a verb ('status'), but the verb is a noun-like query and the description is extremely terse. It does not distinguish this from the many sibling status tools (show_status, switch_query, switch_list, port_status, etc.), so an agent cannot tell what 'switch' refers to or what status is being retrieved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The sibling list includes switch_list, switch_query, switch_on, switch_off, and many status tools, but the description does not mention any of them or provide selection criteria. The only hint is 'read-only', which is implicit in the name and not enough to route an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_alertC
Switch alert configuration (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It does disclose that it is a write operation and requires confirmation, which is a useful behavioral trait. However, it does not explain what the confirmation process entails, what side effects occur, whether changes are reversible, or what happens if confirmation is not provided. This is minimal disclosure for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, but it is under-specified rather than concise. It does not front-load critical information about parameters or the confirmation workflow. The phrase 'write — requires confirmation' is useful but incomplete. It lacks structure and fails to convey necessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, no output schema, and no annotations, the description is grossly incomplete. An agent cannot correctly invoke this tool without knowing what 'param' should be, how to obtain a confirmation token, or what the expected response is. The description does not meet the minimum requirements for safe and correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the lack of parameter documentation. It does not mention 'param', 'user_code', 'confirm_token', or 'confirmation_id' at all. An agent has no idea what values to provide or their purpose. This is a critical gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb ('Switch') and a resource ('alert configuration'), which is clear enough to identify the action. However, it is vague about what 'switch' entails (toggle, enable/disable, change?) and does not distinguish it from sibling tools like swm_enable, swm_disable, or swm_show. It is not a tautology, but it lacks the specificity needed to differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any conditions, prerequisites, or alternative tools. The only hint is that it is a write operation requiring confirmation, which implies it is for modifying alert config, but no explicit direction is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_dbC
Switch database operation (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does disclose two key traits: the operation is a write (mutating) and it requires confirmation. However, it does not explain the confirmation flow, whether the change is reversible, or any side effects, so the disclosure is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, but this is under-specification rather than effective conciseness. The word 'operation' is filler, and the structure omits essential details about what the tool actually does. A concise description should still convey enough to be usable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write operation with four parameters, no output schema, and no annotations, this one-line description is grossly inadequate. An agent cannot determine what 'param' should contain, how to obtain a confirmation token, whether confirmation is always required, or what the result looks like. Sibling tools like swm_post or swm_get are not referenced to establish any workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter meaning. The required 'param' field is left completely undefined, and while 'requires confirmation' hints at confirm_token/confirmation_id, it never maps them to the schema properties or explains user_code. The agent has no way to know what values to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says 'Switch database operation' but uses the generic noun 'operation' without a concrete verb like create, update, or delete. It largely restates the tool name (swm_db) and provides no specific resource or action, leaving the actual purpose ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to invoke this tool versus the many swm_* siblings (swm_post, swm_set, swm_maintain, etc.). The parenthetical 'requires confirmation' is a constraint, not a usage condition, and there are no exclusions, alternatives, or context that would help an agent choose this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_detailD
Switch detail operation (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation flow is, what side effects occur, what gets modified, or what the response looks like. The 'requires confirmation' hint is a positive signal, but the lack of detail on the write behavior leaves significant ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it is under-specified rather than efficiently informative. The phrase 'Switch detail operation' is vague and does not earn its place; the only concrete information is the parenthetical about write and confirmation. It is not bloated, but it is not well-structured for decision-making.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, no annotations, and 0% schema description coverage, the description is severely incomplete. An agent cannot safely invoke this tool without knowing what 'param' should contain, how the confirmation flow works, or what the write operation affects. The presence of many swm_* siblings further increases the need for disambiguation, which is entirely absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation of the parameters. The schema shows 'param' (required), 'user_code', 'confirm_token', and 'confirmation_id', but the description does not clarify what 'param' represents, how confirmation tokens are obtained, or how the parameters relate to the operation. With zero coverage and no compensation, the agent has no semantic grounding for the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Switch detail operation (write — requires confirmation)' uses a vague verb 'operation' and does not specify what resource or action is being performed. It is not a tautology, but it fails to distinguish itself from the many swm_* siblings (swm_show, swm_get, swm_post, swm_group, etc.) and leaves the agent guessing what 'detail' means.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description only notes that it is a write operation requiring confirmation, but it does not explain what scenario calls for swm_detail versus swm_get, swm_show, or swm_post. The agent cannot determine the appropriate context from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_disableC
Disable switch management (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states 'write' (mutation) and 'requires confirmation', which is a useful behavioral cue, but it does not explain the confirmation process, what happens on failure, whether the operation is reversible, or any side effects. This is a significant gap for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it is under-specified. It front-loads the action but omits critical details such as parameter roles and confirmation flow, making it too sparse to be considered appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write operation with no output schema, no annotations, and three undocumented parameters, the description is grossly inadequate. It does not explain the confirmation workflow, prerequisites, or expected outcomes, leaving the agent unable to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions no parameters at all. It hints at confirmation with 'requires confirmation' but does not link that to confirm_token or confirmation_id, nor does it explain user_code. The agent has no guidance on what each parameter does.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'disable' and a resource 'switch management', clearly distinguishing it from read tools like swm_show and its counterpart swm_enable. However, it does not elaborate on what switch management entails, so it is not a full 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (when you want to disable switch management) but provides no explicit context, prerequisites, or alternatives. It mentions 'requires confirmation' but does not explain when or how to obtain confirmation, nor does it contrast with swm_enable or other management tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_enableC
Enable switch management (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It discloses that the operation is a write and requires confirmation, which is useful, but it does not explain side effects, the confirmation flow, or what 'enable switch management' actually changes. Minimal disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only one sentence, which is concise, but it is under-specified. It lacks structure and fails to provide enough information to be useful. Under-specification is penalized more than verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, no output schema, and a 3-parameter tool with zero schema descriptions, this description is severely incomplete. An agent cannot know how to call this tool correctly without external knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for its three parameters (user_code, confirm_token, confirmation_id), and the description does not mention any of them. The agent is left without any clue about what these parameters mean or how to fill them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'Enable switch management.' It is unambiguous about what the tool does. However, it does not differentiate itself from siblings like swm_disable or switch_on, so it loses one point.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention prerequisites, context, or exclusions. The parenthetical about confirmation is a hint but not usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_getB
Switch management data (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavior, and explicitly saying 'read-only' is a useful and material disclosure: it signals no mutation of switch state. It does not go further to describe what data is returned or any error conditions, but the core behavioral trait is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded phrase, 'Switch management data (read-only)', with no redundant words or filler. Every token contributes semantic value, making it minimal while self-contained enough for its purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is very minimal and does not clarify what the returned switch management data contains, its format, or how it differs from similar-looking siblings like swm_show, swm_detail, or swm_search. This leaves the agent guessing about expected output and proper selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is complete, so there is nothing for the description to add about parameter meaning. The baseline for a no-parameter tool is 4, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as 'Switch management data' and labels it 'read-only', but it lacks an explicit verb and does not differentiate from likely same-purpose siblings such as swm_show or swm_detail. It is not a tautology, but it stops short of clearly stating that this tool retrieves or gets the data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'read-only' qualifier implies the tool is appropriate when the user wants switch management data without modifying it. However, it gives no explicit when-to-use / when-not-to-use guidance and does not name any alternative sibling, so the guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_groupC
Configure switch group (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose two important traits: the operation is a write and it requires confirmation, which is useful beyond the schema's raw parameter names. However, it does not explain the confirmation flow, side effects, or whether changes are reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, with no wasted words. The parenthetical adds useful caveat information without bloating the text, though it is sparse for a non-trivial configuration operation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a four-parameter write operation with no annotations, no output schema, and no parameter descriptions, this is incomplete. An agent cannot tell what 'param' should contain, what the confirmation fields are for, or what response to expect after invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description provides no parameter meaning. The relationship between 'requires confirmation' and the confirm_token/confirmation_id parameters is unstated, and the required 'param' field is entirely undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Configure' with a clear resource 'switch group', making the core action understandable. It does not explicitly differentiate from sibling swm_* tools, but the 'show/enable/disable/search' siblings are clearly different operation types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as swm_show, swm_enable, or swm_search. The parenthetical 'write — requires confirmation' implies a write operation, but it does not state exclusions, prerequisites, or alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_logD
Switch log (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose all behavioral traits. It does state that the operation is a write and requires confirmation, which is some disclosure. However, it doesn't explain what confirmation entails, what parameters are needed for confirmation (e.g., confirm_token, confirmation_id), or what the side effects of the write are. The description is too sparse to give an agent confidence in how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief, consisting of a single short phrase. While it avoids unnecessary words, it is under-specified to the point of being unhelpful. The structure provides no breakdown of the operation or parameters, so it fails to give useful information in a compact form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a write operation requiring confirmation, with four parameters and no output schema or annotations, the description is severely incomplete. It does not explain the purpose, the confirmation workflow, the meaning of each parameter, or what the return value will be. An agent has almost no information to correctly execute this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has four parameters with 0% description coverage. The description does not explain what 'param' (the required one) represents, nor what user_code, confirm_token, or confirmation_id mean. Without any information about parameter semantics, an agent cannot correctly construct a request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names 'Switch log' and indicates a write operation with confirmation, but it does not clearly state what the tool does—whether it writes an entry to a switch log, retrieves a log, or something else. The verb 'Switch' is ambiguous; it could be an adjective or a verb. This makes it hard for an agent to distinguish from the many sibling tools like swm_show or swm_get.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description only mentions 'requires confirmation' but does not explain the context of use, the conditions under which this tool is preferred over other log-related tools, or any exclusions. An agent has no idea when to invoke this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_maintainD
Switch maintenance (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It discloses that this is a write operation requiring confirmation, which is useful, but it gives no detail about what changes occur, what is confirmed, whether the operation is destructive, or what side effects may follow.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact but under-specified; it reads more like a label than a functional description. The little content it has is front-loaded, but it does not earn its place by adding actionable detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with four parameters, no annotations, no output schema, and no parameter guidance, the description is far too minimal. An agent cannot reliably determine how to construct a valid call or what outcome to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters. It does not define what 'param' should contain, how user_code relates to confirmation, or how confirm_token and confirmation_id are generated or used.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Switch maintenance (write — requires confirmation)' is essentially a restatement of the tool name swm_maintain. It signals that the operation is a write that requires confirmation, but it does not specify what maintenance action is performed, what resource is affected, or how it differs from the many sibling swm_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives such as swm_post, swm_enable, swm_disable, or swm_get. It does not state prerequisites, expected context, or how confirmation should be obtained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_postC
Switch management POST (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It notes 'requires confirmation' and labels itself as a write, which implies mutation, but it does not explain the confirmation mechanism (how to obtain confirm_token or confirmation_id), what side effects occur, whether changes are reversible, or what a successful response looks like. The single behavioral trait is far from sufficient for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, which is concise, but it is under-specified rather than efficiently structured. It does not front-load the most actionable information (what to provide, how to confirm) and lacks any logical organization of the operation's key aspects.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given it is a write operation with a confirmation flow, four parameters (one required), no annotations, and no output schema, the description is grossly incomplete. It omits the request format, parameter semantics, confirmation procedure, and expected response, leaving an agent without enough information to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate, but it mentions no parameters at all. It does not explain what 'param' represents, the role of user_code, or how confirm_token and confirmation_id relate to the confirmation requirement. An agent cannot infer valid values or relationships from the text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a POST (write) operation for switch management, which distinguishes it from the many read-style sibling tools (swm_show, swm_get). However, it does not specify what particular action is performed (create, update, delete) or which switch-management resource it targets, leaving the purpose vague and not clearly distinct from other write-oriented siblings like swm_enable or swm_set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention conditions, prerequisites, or how the confirmation flow works, nor does it reference any sibling tools. An agent has no basis for choosing this over other swm_* write operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_profileC
Configure switch profile (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that this is a write operation and that it 'requires confirmation', which is useful. However, it does not disclose what the confirmation flow entails, what side effects occur, whether changes are reversible, or what happens on success or failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the key facts: it configures a switch profile, it is a write operation, and it requires confirmation. It is concise and free of filler, though it could be slightly more informative without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four undocumented parameters, the description is incomplete. An agent cannot determine what to pass in 'param', how to obtain the confirmation token, or what the tool returns. The confirmation requirement is mentioned but not explained, leaving a critical gap for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the four undocumented parameters. It does not explain what 'param' means, what values it accepts, or how user_code, confirm_token, and confirmation_id relate to the confirmation requirement. The description adds no parameter-level meaning beyond the schema's bare names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Configure switch profile') and flags it as a write operation, which distinguishes it from the many read-only 'show' siblings. However, it does not explain what a switch profile is or what configuration aspects are covered, leaving the tool's exact purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Among siblings there are swm_show, swm_get, swm_enable, swm_disable, swm_post, swm_group, swm_detail, swm_maintain, swm_search, swm_db, swm_alert, swm_log, swm_snmp, swm_tr069, but the description does not mention any of them or any conditions for choosing this one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_searchD
Switch search (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does state that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation flow is, what side effects occur, what gets modified, or what the response looks like. For a write operation with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it is under-specified rather than efficiently informative. The parenthetical adds one useful fact (write requires confirmation), but the main clause is vague. It is not well-structured for an agent because it does not front-load a clear action statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, no annotations, and a vague name, the description is completely inadequate. An agent cannot determine what to pass for 'param', how to obtain a confirmation token, or what the tool returns. The sibling list shows many similar switch/swm tools, and this description does nothing to disambiguate them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no parameter information. The schema shows a required 'param' string plus optional user_code, confirm_token, and confirmation_id, but the description does not explain what 'param' means, how the confirmation fields relate to the write operation, or what values are expected. The description adds no value beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Switch search (write — requires confirmation)' is ambiguous. It names a resource ('switch search') and hints at a write operation, but it does not state what the tool actually does, what it searches, or what the write action is. It is closer to a label than a clear verb+resource statement, and it does not distinguish it from the many sibling tools like swm_show, swm_get, or switch_query.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. The parenthetical 'write — requires confirmation' implies a confirmation flow, but there is no explanation of when this tool is appropriate, what prerequisites exist, or which sibling tools should be used instead. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_showC
Switch management status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so description carries burden. It discloses read-only behavior, which is important for safety, but it does not explain what other side effects might occur. 'Switch management status' could mean toggling a switch; the read-only hint helps but doesn't clarify what exactly happens (e.g., return current status, no changes). No contradiction with annotations since none exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise at two words plus a parenthetical. It is front-loaded with the core action putting 'Switch management status' first. No wasted words, though could benefit from a few more words to disambiguate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, and given the ambiguity of the verb 'switch' and the swarm of 200 sibling tools, the description is inadequate. An agent cannot confidently decide whether to call this vs swm_get or switch_status. It needs clarity on the exact function and scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters decipher, so schema coverage is 100% trivially. The description implies it operates on 'management status' but doesn't clarify what 'switch' means. With no parameters, the description is the only semantic aid, and it is minimally informative but not misleading.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description says 'Switch management status (read-only)' with a clear verb 'switch' and a resource 'management status', and notes read-only. However, it is ambiguous whether 'switch' means toggling a state or querying status in the switch context; the read-only hint suggests querying but the verb 'switch' could confuse. It partially distinguishes from siblings like swm_get and swm_enable but does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. 'Read-only' implies it is a status query, but siblings like swm_get, switch_status, swm_detail all appear related be status or info. No alternatives are named, so an agent would have to infer usage from context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_snmpD
Switch SNMP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that this is a write operation and that confirmation is required, which is useful, but it does not describe side effects, reversibility, prerequisites, or what the confirmation flow entails. For a write tool this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded, but it is under-specified rather than concise. The parenthetical '(write — requires confirmation)' adds a label but no real structure or detail, and the overall definition carries almost no operational content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool requiring confirmation, with four undocumented parameters and no output schema, the description is far from complete. An agent cannot determine what to pass, what the tool will change, what confirmation steps are needed, or what the response will be.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description explains none of the four parameters. The required 'param' field is completely opaque, and user_code, confirm_token, and confirmation_id are left to be guessed from their names. The description does not compensate for the schema's lack of semantic detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says only 'Switch SNMP (write — requires confirmation)', which restates the tool name and labels it as a write operation without specifying what action is performed on SNMP. It is ambiguous whether this toggles SNMP, updates its configuration, or performs some other write. The many swm_* and switch_* siblings make it impossible to distinguish this tool's purpose from the description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No usage guidance is provided: no indication of when to use this tool versus swm_enable, swm_disable, switch_on, switch_off, or other write tools. The only clue is 'requires confirmation', which implies a workflow need but does not explain when the tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
swm_tr069C
Switch TR-069 (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and at least discloses that this is a write operation and that confirmation is required. It does not, however, explain side effects, reversibility, privileges, or how the confirmation flow works, so transparency is partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short line with no filler and leads with the operation, so it is structurally efficient. However, it is under-sized: important details about parameters and the confirmation flow are omitted, making it too sparse to be 'appropriately sized.'
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a 4-parameter schema, no output schema, and no annotations, the description is not complete enough to invoke the tool correctly. It fails to specify valid param values, which confirmation fields are needed, how to obtain them, or what side effects occur.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning for the required 'param' field beyond the generic string type. 'Requires confirmation' loosely maps to confirm_token/confirmation_id, but it does not explain their origin or relationship, leaving the main parameter undefined.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete resource (TR-069) and labels the operation as a write requiring confirmation, but it never states what action is performed (enable/disable/set) or what the outcome will be. 'Switch TR-069' is ambiguous as either a verb or a noun, and no differentiation from sibling tools such as sys_tr069 is offered.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to invoke this tool instead of a read-only or other TR-069-related sibling. The only hint is the parenthetical 'write — requires confirmation,' which describes the operation model rather than use cases or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_algB
Enable/disable ALG (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must carry the full burden. It does disclose the write nature and the requirement for confirmation, which is a start. However, it doesn't explain the confirmation flow, side effects, or reversibility, leaving significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single sentence with a parenthetical for the write/confirmation note. It front-loads the action and contains no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no output schema, and no annotations, the description is insufficient. It fails to explain the parameters, usage context, or the confirmation process, leaving an agent without enough information to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does not explain onoff, user_code, confirm_token, or confirmation_id. The brief hint about confirmation is too vague to convey parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb (enable/disable) and resource (ALG), and notes it's a write operation requiring confirmation. It is specific enough to distinguish from the many sibling tools, though it doesn't elaborate on what ALG does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, scenarios for enabling/disabling, or how it fits with other configuration commands. The description is purely declarative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_app_bandwidthA
Application bandwidth usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It states 'read-only', which is a useful non-destructive signal, but it does not describe what the returned data looks like, whether it is real-time or historical, or any other side effects. This is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded phrase with no filler. Every word earns its place, and the critical 'read-only' attribute is placed prominently. It is an ideal example of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters, no output schema, and no annotations, the description is sufficient for an agent to understand its purpose and invoke it. The only minor gap is a lack of differentiation from similar sibling tools, but the purpose is clear enough for a correct call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema covers them trivially. Per calibration, 0 params gives a baseline of 4, and the description adds no unnecessary parameter information, which is appropriate. There is nothing beyond the schema to explain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as 'application bandwidth usage' and states it is read-only. It conveys a specific purpose that distinguishes it from many siblings (e.g., show_traffic, show_statistic). However, it does not explicitly name alternative tools or further scope, so it stops short of a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose implies when to use it (when application bandwidth usage is needed), but there is no explicit guidance on when not to use it or which sibling tool to prefer. It provides no exclusions or alternatives, relying on the agent to infer usage from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_app_statisticC
Application statistics (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It does disclose the key safety trait 'read-only', which is useful. However, it does not mention what data is returned, whether any counters are reset, or any other side effects, so the behavioral transparency is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loaded, with no wasted text. The read-only qualifier is placed in parentheses and the core phrase is immediately understandable. It could be more descriptive, but as a concise fragment it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool, the description still fails to explain what the 'application statistics' actually contain. There is no output schema and no mention of the kind of data returned. An agent would need to call the tool or inspect runtime results to understand it, which is a clear gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters. Schema coverage is trivially 100% since there are no properties to document. The description adds no parameter details, but none are needed, so the baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun phrase that essentially restates the tool name: 'Application statistics (read-only)'. It does not include a verb or action that tells the agent what operation will be performed. Among siblings like show_statistic and sys_app_bandwidth, there is no differentiating detail about what these statistics cover.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of the many sibling statistics tools. The read-only hint implies a safe query, but there is no context about what condition would select sys_app_statistic over show_statistic or appqos_view. This leaves the agent to guess based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_autorebootC
Configure scheduled auto-restart (mode=hours requires hours param) (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | ||
| hours | No | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. It states 'write — requires confirmation' which signals a mutating operation and a confirmation requirement, but it does not explain what confirmation entails (e.g., what user_code, confirm_token, and confirmation_id are for), nor the effects of the scheduled restart, reversibility, or any side effects. This is minimal behavioral information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: it states the primary action first, then adds the parameter dependency and the write/confirmation note. There is no wasted wording, though the content is terse and could benefit from a bit more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, a write operation with confirmation tokens, no output schema, and zero annotation coverage, the description is incomplete. It does not explain the confirmation workflow, the meaning of each parameter, or what happens after successful configuration (e.g., when the restart occurs, whether it applies immediately). An agent cannot reliably call this tool correctly based on the current definition.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only adds the dependency note that mode=hours requires the hours parameter, which is helpful, but it does not explain the purpose or format of user_code, confirm_token, or confirmation_id – all critical for invoking a write-with-confirmation operation. Most parameter semantics remain undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation: 'Configure scheduled auto-restart' – a specific verb and resource. However, it does not explicitly differentiate itself from sibling tools like 'sys_reboot' (immediate reboot) or 'sys_commit' (config commit), leaving ambiguity about whether 'auto-restart' is a scheduled reboot variant. It does add a useful scoping detail (mode=hours requires hours param).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives such as sys_reboot. It hints at parameter dependency (mode=hours requires hours param) but does not state prerequisites, nor does it mention when this tool is appropriate over other reboot or scheduling tools. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_ccB
Country / wireless region code (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It clearly states 'read-only', which is a helpful behavioral hint. However, it does not elaborate on any side effects (even minor), or whether any permissions are needed, or what the format of the returned value is. For a read-only query with no annotations, it provides minimal but adequate transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that is front-loaded with the purpose and the key behavioral note. No wasteful words. Ideal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description only needs to convey purpose and behavior. It does that, but it is somewhat terse. Given the fact it's a read-only query with no params, it is mostly complete. Could benefit from a note about where the value is used or example values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and schema coverage is 100%. The description doesn't need to add parameter semantics since there are none. The baseline of 4 for zero parameters applies, and the description does not repeat any schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a 'Country / wireless region code' and marks it as read-only. This gives a clear purpose, but it doesn't distinguish it from sibling tools that might also query system settings (e.g., sys_info, sys_version). More specificity could help avoid confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With a large sibling set including many sys_* queries, an agent cannot determine when to prefer this over, say, sys_info or sys_version. No exclusions or context are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_cmdlogA
Command history (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. 'Read-only' usefully signals no side effects, but the description does not state what the returned command history looks like or mention any access limitations. For a parameterless read-only command this is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four words with no filler or redundancy. The read-only qualifier is placed immediately after the resource, making the key safety trait front and center.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity—no parameters, no output schema, read-only behavior—the description is largely sufficient for an agent to invoke it correctly. It could be slightly more explicit about the expected output contents, but nothing essential is missing for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema already contains nothing that could mislead. There is no parameter information for the description to add, giving it the baseline score for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('command history') and signals that the operation is read-only. It is clear and distinctive enough in intent, though it is phrased as a noun rather than an explicit verb+resource statement and does not explicitly differentiate itself from similar inspection tools like log_tail or dpdk_cmdlog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use sys_cmdlog versus alternative history/log/status commands, nor any mention of typical diagnostic scenarios. The read-only nature weakly implies a safe query, but the description does not help an agent choose it over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_commitB
Save running settings (SRAM) to FLASH (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It does disclose that this is a write operation and that confirmation is required, which is more than minimal. However, it omits details about the confirmation flow, whether the write is irreversible, or what side effects may occur beyond persisting settings.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It efficiently conveys the core action and a key caveat. It is appropriately concise given the simple primary operation, though the missing parameter explanation is a separate completeness issue.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three undocumented parameters, no output schema, and no annotations, the description is grossly inadequate. It does not explain the confirmation process, the meaning of any parameter, or how to obtain confirmation credentials. An agent cannot reliably invoke this tool without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation of the three parameters (user_code, confirm_token, confirmation_id). The one hint that confirmation is required is too vague to map to these fields. The agent cannot determine what values to supply or how to obtain them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Save') and resource ('running settings (SRAM) to FLASH'), clearly distinguishing it from the many read-only show/status siblings. It also adds the 'write' and confirmation hint, making the primary action unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. It doesn't mention that this should be used after making settings changes, nor does it reference any other tool as an alternative. The usage context is only implied by the name and description, not made explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_dashboardA
Dashboard summary (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and 'read-only' directly discloses that this tool has no side effects. For a zero-parameter read-only summary tool, this is meaningful behavioral context, though it does not describe output content or freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is just two words plus a parenthetical: no filler, no redundant wording, and the read-only nature is front-loaded. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-input, read-only dashboard tool, the description is nearly sufficient. It lacks any detail about what the summary contains or how it differs from sibling status tools, but the simplicity of the operation keeps the gap small.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is essentially nothing to explain. The baseline for parameter semantics is 4, and the description correctly implies no inputs are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as a dashboard summary and explicitly states it is read-only. It lacks an explicit verb like 'get' or 'show,' and it does not differentiate itself from similar read-only stats tools, so it is clear but not fully distinguishing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as show_statistic, sys_health, or sys_info. The description gives no context about when a dashboard summary is preferable, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_dnsCacheTblA
DNS cache table (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose the important trait that the operation is read-only, but it does not describe what data is returned, how the table is formatted, or any other behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at four words and is appropriately sized for a zero-parameter read-only table query. Every word adds value, and there is no filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity, zero-parameter read-only operation, the description provides sufficient context to invoke the tool. It names the resource, indicates the access mode, and has no hidden parameters; however, the lack of any output description is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is an empty object, so there are no parameter semantics to explain. The baseline of 4 applies because the description is not required to compensate for any missing parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as the DNS cache table and states it is read-only. It lacks an explicit verb like 'view' or 'list,' and it does not differentiate itself from similar siblings such as show_dns, but the intended operation is still evident.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Siblings like show_dns or sys_qrybuf may be related, but no conditions, exclusions, or recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_domainnameB
Set router domain name (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral transparency burden. It explicitly notes that this is a write operation and requires confirmation, which is valuable and beyond the schema. Still, it does not disclose what changes are applied, whether the operation is reversible, or what confirmation workflow is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is efficient and easy to parse. However, it is so terse that it leaves key behavioral and confirmation details unmentioned, slightly reducing the benefit of its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and 0% schema description coverage, the description is too thin to fully support correct invocation. It states the core purpose but omits how the confirmation mechanism works, what user_code is for, and what result or confirmation data the agent should expect in return.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It clarifies only the 'domain' parameter by naming it as the router domain name site. The 'requires confirmation' phrase loosely relates to confirm_token and confirmation_id, but user_code remains completely unexplained. The description does not sufficiently cover all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action and resource: 'Set router domain name'. It is unambiguous and identifies the primary function. However, it does not distinguish this tool from the closely related sibling sys_name, which likely handles a different naming concept.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for what the tool does but does not state when to choose it over alternatives or when not to use it. The parenthetical 'requires confirmation' hints at a workflow prerequisite, but it does not provide explicit routing guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_fr_logB
Failure-related log (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the read-only note is the only behavioral disclosure, and it usefully signals that the call has no side effects. It does not, however, describe the returned log format, size limits, or any failure-related filtering behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact phrase that front-loads the essential facts: it is a log viewer and it is read-only. There is no filler, repetition, or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple to invoke due to zero parameters, the description lacks any detail about what 'failure-related' covers, what output the agent will receive, or how this tool differs from sibling logging tools. With no output schema and no annotations, this is insufficient context for confident selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters and the schema is empty, so there is no parameter meaning for the description to add. The 0-parameter baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource as a 'failure-related log' and notes it is read-only, which is more informative than the cryptic name alone. However, it uses no explicit verb and does not say what kind of entries are included, so an agent gets only a vague sense of the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use sys_fr_log versus the many sibling log/status commands such as log_tail, log_filter, sys_syslog, or sys_cmdlog. No exclusions, prerequisites, or alternative-selection hints are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_healthC
System health (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'read-only', which is a minimal safety hint, but it doesn't disclose what the tool returns, whether it queries live data, if there are any side effects (unlikely for read-only), or any other behavioral characteristics. For a zero-parameter tool, this is still insufficient context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (4 words), which is efficient, but it is under-specified to the point of being unhelpful. Conciseness should not come at the cost of necessary information. It lacks the substance needed for an agent to use it correctly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the enormous sibling list (over 200 tools), the description is grossly incomplete. It doesn't explain what 'system health' encompasses, what format the output takes, or how it differs from similar tools. Without an output schema or annotations, the description is the only source of context, and it provides almost none.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description has no parameter semantics to explain. Baseline 4 is appropriate since the schema covers all parameters (none), and no compensation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a resource ('system health') and a read-only hint, but lacks a clear verb or any indication of what specific information is returned. It does not differentiate itself from siblings like sys_info, show_cpu, or show_status, all of which could plausibly provide health-related data. The phrase is closer to a label than a purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the many alternative status/health-related tools in the sibling list. No mention of prerequisites, use cases, or exclusions. An agent has no basis to choose this over sys_info or show_cpu.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_infoC
System information (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the operation is read-only, which is a key behavioral trait. However, with no annotations provided, the description carries the full burden, and it does not mention what information is returned, whether it is a summary, or any side effects beyond being read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short phrase that efficiently communicates the tool's basic nature. There is no unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is minimal. It does not specify the content or format of the 'system information', and the ambiguity with sibling tools makes it insufficient for an agent to know if this is the right call. It is not misleading, but it is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the schema fully covers them (trivially). The description does not add parameter-specific detail, but none is needed. Baseline score of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it retrieves system information and is read-only, but it does not specify what subset of system information (e.g., version, CPU, memory, uptime) or how it differs from the many sibling tools like sys_version, show_cpu, and show_memory. It is clear in a general sense but lacks specificity to distinguish it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the many sibling tools that retrieve specific system data (e.g., sys_version, show_cpu, show_memory). The description does not mention use cases, prerequisites, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_licenseD
License operations (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation flow is, what side effects occur, whether changes are reversible, or what happens if confirmation is missing. The behavior is only partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, which is concise, but it is under-specified rather than efficiently informative. The key warning about confirmation is present, but the lack of a clear verb and parameter context means the brevity does not earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four undocumented parameters, the description is severely incomplete. An agent cannot determine what action to pass, how to complete the confirmation flow, or what the result will be. The sibling list shows many other write tools, but nothing here helps the agent select or invoke this one correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no parameter-level meaning. The schema lists 'action', 'user_code', 'confirm_token', and 'confirmation_id' with no descriptions, and the tool description does not explain what values are valid for 'action' or how the confirmation parameters relate to each other. The agent is left without any semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'License operations (write — requires confirmation)' identifies the resource (license) and a general write nature, but the verb is vague ('operations' rather than a specific action like activate, update, or revoke). It does not distinguish among the many sibling tools, and the parenthetical is more of a warning than a purpose statement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It only notes that it is a write operation requiring confirmation, which implies a usage condition but does not explain what triggers confirmation, how to obtain it, or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_mailalertC
Enable/disable mail alert (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that this is a write operation requiring confirmation, which is useful, but it does not disclose what happens on success/failure, whether the change is reversible, or what the confirmation flow entails. The 'requires confirmation' note is a positive signal but insufficient for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the action and includes a critical caveat ('requires confirmation'). It is concise and to the point, though it could add a bit more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four parameters at 0% schema description coverage, the description is incomplete. An agent cannot determine how to supply the confirmation token or what the response will look like, which are essential for correctly invoking this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the four parameters. It only explains the 'onoff' parameter implicitly via 'Enable/disable', and leaves 'user_code', 'confirm_token', and 'confirmation_id' completely unexplained. The enum on 'onoff' is visible in the schema, but the confirmation-related parameters are opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Enable/disable') and a clear resource ('mail alert'), which distinguishes it from the many status/read tools in the sibling list. It does not explicitly name a sibling alternative, but the 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.
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 any prerequisites or context. The parenthetical '(write — requires confirmation)' hints at a confirmation flow but does not explain when confirmation is needed or how to obtain it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_max_sessionB
Maximum session configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It does disclose the key trait — read-only — which signals a non-mutating operation. However, it adds no context about output, error behavior, or what 'maximum session' configuration actually returns, leaving the agent to infer the rest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with the purpose front-loaded. Appropriate length for a 0-param read-only tool; nothing is wasted, though the ambiguity of 'maximum session' means brevity comes at the cost of precision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 0-param read-only tool, the description is mostly complete — it needs no parameter documentation. However, without an output schema and with the ambiguous 'maximum session' phrasing, an agent cannot fully predict what data will be returned or what the configuration refers to.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description has nothing to clarify beyond the schema. Per baseline, 0-param tools earn a 4; the read-only qualifier adds marginal semantic value about the operation, not parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a resource ('session configuration') and discloses a read-only nature, which partially distinguishes it from siblings like show_session and ip_session. However, 'maximum session' is ambiguous — it could mean max concurrent sessions, max session timeout, or another dimension — so the purpose is stated but not precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. Among many session-related siblings (show_session, ip_session, sys_* tools), there is no differentiation, no exclusions, and no mention of what this tool offers that others don't.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_nameA
Set router name (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It does disclose that this is a write operation and that confirmation is required, but it does not explain the confirmation workflow, persistence of changes, or side effects. This is partial transparency, not full.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. Every phrase adds value: it names the target, categorizes the operation, and flags a prerequisite.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a confirmation-gated write operation with no annotations and no output schema, the description is too sparse. An agent cannot determine how to obtain the confirmation token, when to provide user_code, or what a successful call returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description only indirectly explains the 'name' parameter. The parameters user_code, confirm_token, and confirmation_id are not described at all; 'requires confirmation' is too vague to clarify their roles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Set router name'. It also flags the operation type as a write, clearly distinguishing it from the many read-only show_*/status siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when the router's name needs to be changed, and it signals a confirmation prerequisite. However, it provides no explicit guidance about alternatives or the exact circumstances under which to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_passwdC
Change the admin password (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| new | Yes | ||
| old | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does state that it is a write operation and requires confirmation, which is a critical behavioral trait. However, it does not explain the confirmation flow (e.g., how confirm_token/confirmation_id are obtained), whether the old password must match, or any consequences like irreversibility or session invalidation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no fluff, and the core purpose is front-loaded. It is efficient, though the brevity borders on under-specification, which is already penalized in contextual completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, 0% schema coverage, no annotations, and no output schema, this description is grossly inadequate. It fails to explain the confirmation prerequisite (despite claiming it), the meaning of optional fields, or any error/return behavior. An agent would have to guess much of the required input structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to any of the 6 parameters. It does not clarify that 'old' is the current password, nor does it explain the optional parameters (user_code, acknowledge, confirm_token, confirmation_id). The tool name and schema field names alone are insufficient for an agent to correctly construct valid calls.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the specific action ('Change the admin password') and the parenthetical clarifies it is a write operation requiring confirmation. This clearly distinguishes it from the many read-only status tools in the sibling list and leaves no ambiguity about the tool's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. While there is no direct password-altering sibling, related user management tools exist (user_account, user_edit), and the description does not explain this is the admin-specific password change. No prerequisites or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_pollbufB
Poll buffer usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state 'read-only', which is a key behavioral trait. However, it does not mention what the response contains, whether there is any delay, or any other side effects. For a zero-parameter read-only operation, the disclosure of read-only is useful but limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact phrase that front-loads the verb and resource, with the read-only qualifier appended. There is no wasted wording, and the structure is immediately clear. It is appropriately sized for a tool with no parameters and a simple action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool with no output schema, the description is nearly adequate. It tells the agent what it does and that it is read-only. However, it does not clarify what 'buffer usage' refers to (e.g., which buffer, what units), and it does not describe the return format. Given the simplicity, a 3 reflects that the description is minimal but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline for this dimension is 4. The description adds no parameter-specific information because there are none to describe. The empty schema is fully covered by the description's implicit 'poll buffer usage' – there is nothing missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Poll') and resource ('buffer usage'), and the parenthetical '(read-only)' clarifies the operation type. It is not a tautology and clearly distinguishes itself from other sys_* tools that might show status or statistics. However, it does not explicitly differentiate from siblings like sys_qrybuf or show_statistic, which could also relate to buffers or usage.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention any conditions, exclusions, or prerequisites. Given the large number of sibling tools (many of which are also read-only status queries), an agent has no basis for choosing this one over similar tools without additional context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_qrybufC
Memory / buffer usage (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states '(read-only)', which is a useful behavioral disclosure and aligns with a non-destructive query. However, since no annotations are provided, the description carries the full burden of behavioral transparency, and it fails to disclose what data is returned, whether any side effects exist (beyond read-only), or typical response structure. This is minimal coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise—a single phrase 'Memory / buffer usage (read-only)'—with critical safety information placed early. It contains no waste, but its brevity borders on under-specification, as it omits any elaboration on the tool's purpose beyond the minimal label.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters, an output schema, and a simple read-only query, the description is still incomplete. It does not clarify what 'buffer usage' means, what exact metrics are returned, or how it relates to overlapping tools like sys_pollbuf or show_memory. An agent lacks enough context to interpret the tool's output or decide its usefulness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing to document beyond the schema, which is complete (100% coverage with an empty object). Per the baseline for no parameters, a score of 4 is appropriate because the description adds no extra parameter context (there is none needed), and the schema covers everything.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a resource ('Memory / buffer usage') and implies a query operation, and explicitly marks it as read-only. However, it does not differentiate itself from many sibling tools such as show_memory, show_cocpu, or sys_pollbuf, leaving an agent without a clear basis to select this tool over its alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus similar memory/buffer-related tools. There are no mentions of preferred context, exclusions, or alternatives, so an agent must rely on the name alone, which is insufficient for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_rebootB
Restart the router immediately (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It honestly discloses that the action is a write and that confirmation is required, which is valuable for a destructive operation. It does not, however, explain the impact on active sessions, approximate downtime, or the confirmation flow itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one compact sentence with the core action front-loaded and the critical safety qualifier ('write — requires confirmation') placed immediately after. Every word earns its place and there is no redundant framing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a disruptive write operation with no annotations, no output schema, and four undocumented parameters, the description is too thin. It fails to explain the confirmation token mechanism, what user_code represents, or what happens after the reboot is triggered, leaving an agent to guess at required inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and none of the four parameters (user_code, acknowledge, confirm_token, confirmation_id) are documented. The description's mention that confirmation is required hints at the confirmation-related parameters, but it does not clarify their individual meanings or which are mandatory for the tool to proceed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Restart'), a clear resource ('the router'), and an immediacy qualifier ('immediately'), so an agent can tell what the tool does. It also flags the operation as a 'write', which distinguishes it from the many read-oriented show/sys sibling tools, though it does not explicitly name any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some usage context by noting this is a write operation that 'requires confirmation', implying it should not be invoked without explicit user consent. However, it does not describe when to prefer this tool over related tools such as sys_autoreboot, nor does it list any preconditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_syslogC
Enable/disable syslog (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that the operation is a write and requires confirmation, which is a start, but it does not explain what the confirmation entails, what happens once enabled/disabled, or any side effects or prerequisites. This is insufficient for an agent to safely invoke a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short and front-loaded with the core action, but it is under-specified rather than concise. It fails to provide essential operational details, making it more of a placeholder than a helpful definition. A good concise description would still cover the necessary context without extra fluff; this one omits too much.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with four parameters, no output schema, and no annotations, the description is grossly incomplete. It should explain the confirmation flow, parameter purposes, expected behavior, and prerequisites. The one-line description does none of this, so an agent cannot deterministically invoke the tool correctly without external context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must explain the parameters. It only implicitly covers 'onoff' via 'Enable/disable', and completely ignores 'user_code', 'confirm_token', and 'confirmation_id'. These parameters are likely critical for the confirmation flow, but the description provides no meaning for them, leaving the agent without any guidance on how to fill them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Enable/disable') and the resource ('syslog'), making the tool's purpose unambiguous. It also flags the write nature and the need for confirmation, which distinguishes it from read-only syslog inspection tools among siblings. However, it does not explicitly differentiate from other write-oriented sys_* tools, though the resource is unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives. It mentions 'requires confirmation' but does not explain under what circumstances one should enable or disable syslog, nor does it reference any sibling tools or exclude cases. This leaves the agent to infer usage purely from the name and the terse description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_tftpdC
Enable/disable TFTP server for firmware upgrade (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries all behavioral disclosure. It does say 'write — requires confirmation', which tells the agent that this is a mutating action and that an extra confirmation step is involved. However, it does not explain side effects, persistence, reversibility, or exactly what 'confirmation' means (e.g., whether a confirm_token is required). This is a moderate level of transparency but leaves several behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler, front-loading the primary verb and resource. It packs the essential action and purpose into a compact string. The only slight issue is that it is so short that it leaves out useful details about parameters and the confirmation flow, but the text itself is efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is moderately complex with 5 parameters and no annotations, and the schema descriptions are absent. The description only conveys the high-level action and the presence of a confirmation step, but it does not explain the confirmation mechanism (e.g., how to obtain and pass confirmation tokens), or what response the agent can expect, or how to use the optional parameters. It is incomplete for a tool that likely requires a multi-step confirmation flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 5 parameters – onoff, user_code, acknowledge, confirm_token, confirmation_id – but schema description coverage is 0%. The description only implies what 'onoff' controls via 'enable/disable', and mentions 'requires confirmation' which hints at a few confirmation-related parameters but gives no specific semantic meaning for any of them. The description does not compensate for the complete lack of parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (enable/disable), the resource (TFTP server), and the purpose (for firmware upgrade). It also signals it is a write operation and requires confirmation, which helps distinguish it from read-only sibling tools. Though it doesn't name an alternative tool, the specific verb+resource combination is precise enough for an agent to understand what it does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a small usage hint ('for firmware upgrade') and notes that it is a write operation requiring confirmation, but it does not give explicit guidance about when to use this tool versus alternatives, nor does it mention any prerequisites or conditions. Since there are no sibling TFTP tools and many other enable/disable tools, the description alone does not fully inform an agent when this tool should be chosen over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_timeB
System time (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the behavioral disclosure burden, and 'read-only' does communicate that the operation has no side effects. It does not mention return format or timezone handling, but those are minor gaps for a zero-parameter system time query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at three words and contains no filler; the read-only qualifier is front-loaded and useful. Adding a verb would improve actionability, but the current size is appropriate for a tool this simple.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only query, the description is mostly sufficient for tool selection and invocation. However, since there is no output schema, the description does not specify what the returned system time looks like, such as format or timezone, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema coverage is 100%, so there is no parameter information for the description to add. The 0-parameter baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('System time') and explicitly marks it as read-only, distinguishing it from state-changing sys_* tools. It lacks an explicit verb such as 'get' or 'show,' so the action is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use sys_time versus sibling tools like sys_info, sys_version, or sys_health. The read-only label hints that it is a safe query, but no when/when-not conditions or alternatives are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_tr069B
Enable/disable TR-069 (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It does disclose that this is a mutation ('write') and that confirmation is required, which is meaningful context beyond the tool name. However, it omits where confirmation tokens come from, whether changes are reversible, and what side effects may occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the core action and the key warning about confirmation. There is no filler or repetition. While more detail could be added, the existing wording is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with a confirmation requirement, the description is incomplete: there is no output schema, no annotations, and no explanation of how to obtain or supply confirm_token/confirmation_id, or what user_code is for. An agent cannot confidently execute the confirmation workflow based on this definition alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the four parameters, but it only implicitly maps 'Enable/disable' to the 'onoff' parameter. The roles of user_code, confirm_token, and confirmation_id are not explained in either the schema or the description, leaving the agent to guess from parameter names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Enable/disable') and a specific resource ('TR-069'), so an agent can tell what the tool does. It also notes this is a write operation, which adds a useful scope signal. However, it does not differentiate this tool from the similarly named sibling swm_tr069, which may also operate on TR-069.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'write — requires confirmation' parenthetical implies this is for changing state, not for reading status, and signals that confirmation is a prerequisite. But the description does not explicitly say when to prefer this tool over alternatives or when not to use it. The usage guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_versionA
Router model, firmware version, IP, build date (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden, and it does disclose the key behavioral trait: read-only. It also enumerates the exact data returned (model, firmware, IP, build date). It does not mention output format or whether any side effects occur, but for a read-only info tool this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the resource and lists the key fields, with the read-only qualifier included. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only query, the description is nearly complete: it names the tool's purpose and the data fields. It could be slightly stronger by naming a sibling to disambiguate, but nothing essential is missing for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter semantics burden. The description's field list (model, firmware, IP, build date) effectively tells the agent what the output will contain, which is useful context beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it reports router model, firmware version, IP, and build date, and explicitly labels it read-only. This is clear enough to distinguish it from most siblings, though it doesn't name a specific alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The read-only label implies it is for querying system information rather than changing it, and the listed fields suggest when to use it (e.g., checking firmware or IP). However, it does not explicitly state when to prefer this over similar status tools like sys_info, show_status, or linux_status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sys_webhookB
Enable/disable webhook (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It discloses two important behavioral traits: the operation is a state-changing write and it requires confirmation. However, with no annotations provided, the description carries the full burden and does not explain the confirmation flow, side effects, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It communicates the action, resource, and a critical caveat in very few words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write tool with four parameters, no annotations, no output schema, and a confirmation flow, yet the description only says 'requires confirmation.' An agent cannot determine how to supply confirmation fields, what preconditions exist, or what response to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds almost no parameter-level meaning. 'Enable/disable' maps only implicitly to the required onoff enum, while user_code, confirm_token, and confirmation_id are completely unexplained despite being central to the stated confirmation requirement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a precise verb ('Enable/disable') and a specific resource ('webhook'), making the operation unambiguous. Although it does not name a sibling, no other sibling tool covers webhook toggling, so the agent can distinguish it from the large sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (when you need to turn the webhook on or off) but provides no explicit guidance on when to prefer this tool over alternatives or when not to use it. It also omits how the required confirmation is obtained or initiated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tacacsplus_setB
Configure TACACS+ (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations available, the description carries the behavioral disclosure burden. It clearly states this is a write operation and that it requires confirmation, which is important non-obvious behavior. It does not detail what happens after confirmation or whether changes are immediately applied, but the core side effect is communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the tool's purpose and key behavioral constraint. There is no filler, and every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with no annotations, no output schema, and four undocumented parameters. The description only mentions configuration and confirmation, leaving important context missing: what param accepts, how confirmation works, what response to expect, and whether there are destructive consequences to existing TACACS+ settings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to explain the parameters. It only loosely implies that confirm_token and confirmation_id relate to the confirmation requirement, but it does not explain the all-important required 'param' field or how user_code fits into the operation. An agent would not know what values to supply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (TACACS+) and the action (Configure), and marks the operation as a write, which helps distinguish it from read-only siblings like tacacsplus_view. It does not explicitly name the alternative tool or enumerate what aspects of TACACS+ can be configured, so it falls slightly short of a top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Configure TACACS+' implies the tool is used when TACACS+ settings need to be changed, and 'write' hints that read-only siblings are not appropriate. However, it does not explicitly say when to prefer this over alternatives, nor does it describe prerequisites or the confirmation workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tacacsplus_viewA
TACACS+ configuration view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden, and 'read-only' clearly signals a non-mutating operation. It does not describe output format or privileges, but for a zero-parameter inspection tool the key safety-relevant behavior is stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, front-loads the resource and mode, and contains no filler. The parenthetical 'read-only' earns its place as a valuable behavioral disclosure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only view tool with no output schema, this description is largely sufficient. It could be slightly more complete by naming tacacsplus_set as the modification counterpart, but nothing essential is missing for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is no parameter detail for the description to add. The baseline for a zero-parameter tool is 4, and the description does not need to compensate for any schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (TACACS+ configuration) and the operation mode (view/read-only). It implicitly distinguishes the tool from the sibling tacacsplus_set, but it does not explicitly name that alternative, so it stops short of the highest clarity bar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'view (read-only)' wording implies this tool is for inspecting TACACS+ configuration rather than modifying it, but no explicit when-to-use or when-not-to-use guidance is provided. The sibling tacacsplus_set is never referenced as the mutating alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
testmail_sendC
Send a test mail (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explicitly labels the operation as 'write' and states that confirmation is required, which is important context beyond the tool name. It does not, however, explain what confirmation entails, what side effects occur, or what happens if confirmation is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single tight sentence with the core action front-loaded. The parenthetical 'write — requires confirmation' adds important behavioral context without bloat. It is concise, though it lacks structure that would help an agent parse parameter or confirmation-flow details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and three undocumented parameters, this description is far too sparse for reliable invocation. It communicates the essential write/confirmation nature but leaves the confirmation mechanism and parameter semantics entirely unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has three parameters — user_code, confirm_token, and confirmation_id — with zero description coverage, and the description adds no meaning to any of them. The phrase 'requires confirmation' loosely hints at the confirmation-related parameters but does not explain their roles or how to obtain valid values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Send a test mail'. It signals a write operation requiring confirmation, which makes the tool's purpose immediately understandable. However, it does not explicitly differentiate it from sibling tools like sys_mailalert or sys_webhook, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, and no mention of prerequisites or excluded scenarios. The only hint is the phrase 'requires confirmation', which implies a confirmation step but does not explain when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upnp_natB
UPnP NAT view (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The explicit 'read-only' parenthetical communicates that invoking the tool should have no side effects, which is valuable. However, it gives no other behavioral context such as what the output contains or whether the view reflects current live mappings.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of a single clear phrase with no filler or redundant clauses. The read-only note is immediately meaningful for agent safety. Every word earns its place for a zero-parameter view tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity and empty schema, the description is minimally adequate: it identifies the resource and safety profile. However, with no output schema and many sibling view commands, it would benefit from stating that this shows the UPnP NAT port mapping table or similar specifics. As written, it leaves enough ambiguity for an agent to confuse it with general NAT or port-map views.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters回声, and the schema description coverage is effectively 100%. With no parameters to document, the baseline is 4, and the description appropriately adds nothing misleading. There is no parameter information needed here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource, 'UPnP NAT', and an action, 'view', which is enough to understand the operation. It does not explicitly differentiate from similar sibling tools like show_nat, nat_view, or show_portmap, though the 'UPnP' qualifier helps narrow it. There is no tautology and the read-only marker adds useful scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as show_nat, show_portmap, or nat_view. The description only identifies the operation, not any condition, prerequisites, or exclusions. An agent has no basis for choosing it over similarly named siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upnp_offC
Disable UPnP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It does disclose that this is a write operation requiring confirmation, which is useful. However, it doesn't explain what the confirmation parameters are for, what happens after confirmation, whether the change is reversible, or what the response looks like. The mention of 'requires confirmation' is a start but leaves the confirmation mechanism opaque.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded with the action, which is good. However, it's under-specified rather than concise: the parenthetical 'write — requires confirmation' is vague and doesn't earn its place because it doesn't explain the confirmation process. A slightly longer description with concrete guidance would be more valuable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and three undocumented parameters, this description is severely incomplete. An agent cannot correctly invoke this tool without knowing how to obtain user_code, confirm_token, and confirmation_id, or what the confirmation flow entails. The sibling list shows many related tools, but the description doesn't connect to them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no parameter information. The three parameters (user_code, confirm_token, confirmation_id) are completely undocumented in both the schema and the description. An agent has no way to know what values to provide or how they relate to the confirmation flow. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Disable') and resource ('UPnP'), which clearly identifies the action. It doesn't explicitly differentiate from siblings like upnp_on or upnp_nat, but the action is unambiguous enough that an agent can tell it apart from the read-only status tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. It doesn't mention prerequisites (e.g., checking current UPnP status first) or contrast with upnp_on/upnp_nat. The only hint is the parenthetical 'write — requires confirmation', which implies a confirmation flow but doesn't explain when confirmation is needed or how to obtain it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upnp_onC
Enable UPnP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does disclose that the operation is a write and that confirmation is required, which is meaningful. However, it omits side effects, what enabling UPnP changes, and how the confirmation flow works.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely compact with no filler. The core purpose and the most important behavioral caveat are both front-loaded in a single phrase.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three undocumented parameters, no output schema, and no annotations. The description only provides a minimal anchor via 'requires confirmation'; it does not explain how to obtain or supply the confirmation values, what the expected result is, or when this action is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain any of the three parameters. 'Requires confirmation' hints at confirm_token and confirmation_id, but user_code remains completely unexplained, and the agent has no way to know what values to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action and resource: 'Enable UPnP'. It also signals that this is a write operation, which distinguishes it from read-only show/sys siblings. It does not explicitly name alternatives like upnp_off or upnp_nat, but the enable action is sufficiently specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to enable UPnP versus when to use upnp_off, upnp_nat, or related show tools. The parenthetical 'requires confirmation' is a process expectation, not a use-case or selection guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usb_devstatB
USB device status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'read-only', which is a minimal safety signal. It does not mention whether the command requires special privileges, what happens if no USB device is present, whether it returns a list or a summary, or any error conditions. For a status tool, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the key fact (USB status) and adds the read-only qualifier. There is no fluff or redundancy. It is appropriately sized for a zero-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description is minimal but adequate for a basic status check. However, the presence of sibling tools like usb_disk and usb_temp means the description should clarify what aspect of USB status it covers to avoid ambiguity. It does not, so the agent may need to inspect siblings or guess. The description is not incomplete enough to be unusable, but it lacks specificity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema fully covers parameter documentation (100% coverage). The description adds nothing about parameters, but none are needed. According to the baseline, 0 params merits a 4; the description does not introduce any confusion or omission.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (USB device) and action (status), and notes it is read-only. It is not a tautology, but it is generic—'status' could mean many things, and it does not distinguish from sibling tools like usb_disk or usb_temp, which may also report device state. A more specific term (e.g., 'enumerated devices', 'health') would raise clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description only states it is read-only, which implies safe usage, but does not explain what kind of USB status it provides or when to prefer it over usb_disk or usb_temp. An agent is left to guess which tool to invoke based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usb_diskC
USB disk info (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations were provided, so the description carries the burden of behavioral disclosure. The '(read-only)' qualifier helps convey a non-destructive nature, but the description doesn't clarify what the tool returns, whether it requires a USB device to be present or mounted, and what happens when no disk is found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that is appropriately short for a zero-parameter tool. It does waste a couple of words on generic 'info', but it is still efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description should compensate with context about what data is returned. With so many sibling tools, it is also underspecified in how it differs from usb_devstat and usb_temp, making it incomplete in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100% (no properties), so there are no parameter semantics for the description to explain. The description's omission of parameter details is therefore appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (USB disk) and a read-only nature, so an agent can infer it reports disk information. However, it does not specify what kind of info (status, model, capacity, mount point, etc.) and does not distinguish it from siblings like usb_devstat or usb_temp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to choose this tool over alternatives. Among many sibling tools covering USB and disk operations, the description provides no exclusions or selection hints, so an agent must guess when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usb_tempC
USB temperature (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'read-only', which is a useful safety trait, but it doesn't describe the return format, error behavior, or any operational constraints. This is a significant gap for a tool that likely returns a sensor reading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence, but it is under-specified. It earns its place but leaves out essential context like return value and usage. It is not verbose, but it is too sparse to be considered well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no params, no output schema), the description should still clarify what the agent gets back and how it differs from USB-related siblings. It doesn't mention the return format or any units, and it doesn't differentiate from usb_devstat or usb_disk. An agent would likely be uncertain about the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty. According to the rubric, a baseline of 4 applies for 0-parameter tools. The description doesn't need to explain parameters, and it doesn't contradict the schema, so a 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource (USB temperature) and the read-only nature, which distinguishes it from mutation tools, but it lacks a verb like 'get' or 'read' and doesn't specify what exactly is returned (e.g., value, units). It is not a tautology but is very close to the tool name, providing minimal additional meaning.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like usb_devstat or usb_disk. It doesn't mention any conditions, prerequisites, or contrast with sibling tools, leaving the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
user_accountD
Configure user account (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation is a write and requires confirmation, which is useful, but it does not explain what the confirmation process entails (e.g., whether confirm_token and confirmation_id are required, how to obtain them, what happens if confirmation is missing). It also does not disclose side effects, reversibility, or permission requirements. The description is too thin to be transparent about behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, which is concise, but it is under-specified rather than efficiently informative. The parenthetical '(write — requires confirmation)' is a useful signal, but the entire description is only one line and does not earn its place by adding enough value. It is not bloated, but it is not well-structured for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write operation with no annotations, no output schema, and five parameters at 0% schema coverage. The description provides almost no context: no return value, no confirmation flow, no parameter semantics, no side effects, no relation to siblings. An agent cannot safely invoke this tool based on the description alone. The confirmation requirement is mentioned but not explained, making the tool risky to call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the five parameters. The schema shows 'param' is required but gives no semantic meaning; 'user_code', 'acknowledge', 'confirm_token', and 'confirmation_id' are completely unexplained. The description's phrase 'requires confirmation' vaguely relates to confirm_token/confirmation_id, but it does not clarify their roles or how they interact. With zero coverage and no compensation, this is a critical gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says 'Configure user account' which is a verb+resource, but it is extremely vague. It does not specify what aspects of the user account are configured (password, permissions, profile, etc.), and it does not distinguish itself from sibling tools like user_edit, user_set, user_setdefault, ldap_user, or tacacsplus_user. The parenthetical '(write — requires confirmation)' hints at a write operation but does not clarify the tool's specific function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The sibling list includes many user-related tools (user_edit, user_set, user_setdefault, ldap_user, tacacsplus_user), but the description does not mention any of them or provide conditions for choosing this one. The only usage hint is 'requires confirmation', which is a prerequisite but not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
user_editC
Edit user profile (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose that this is a write operation and requires confirmation, which is meaningful behavioral context beyond the tool name. However, it omits details about side effects, failure modes, or what happens if confirmation is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the core action and the most important behavioral caveat. It is appropriately concise, though it sacrifices parameter and usage detail for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write operation with a confirmation flow, four undocumented parameters, no output schema, and no annotations. The description does not explain the confirmation workflow, what 'param' represents, or how to obtain user_code/confirmation_id, so an agent cannot reliably invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation for any of the four parameters: param, user_code, confirm_token, or confirmation_id. The single required parameter 'param' is completely opaque, leaving an agent unable to construct a valid request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb and resource: 'Edit user profile'. It also flags the write nature and confirmation requirement, which helps distinguish it from read-only siblings. However, it does not explicitly differentiate from similarly named user_set or user_setdefault, so it falls just short of full clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of alternatives like user_set or user_setdefault. The phrase 'requires confirmation' hints at a specific flow, but there is no explanation of prerequisites, when confirmation is needed, or how this relates to sibling user tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
user_setD
Set user management general setup (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full behavioral disclosure. It only says 'write — requires confirmation', which barely hints at a write operation but does not explain what the confirmation process entails, what side effects occur (e.g., whether existing settings are overwritten), or what happens if confirmation fails. This is inadequate for a mutation tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short, consisting of a single phrase, which is concise. However, it is under-specified rather than efficiently concise, so it earns a 4 not a 5 because the brevity sacrifices essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, no output schema, and zero schema description coverage, the description is severely incomplete. It does not explain the confirmation parameters' relationships, what 'general setup' means, or what the return value indicates. An agent has almost no chance of calling this tool correctly based solely on the provided information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the parameters. It mentions none of them. The schema has four parameters (param, user_code, confirm_token, confirmation_id), but the description provides no meaning beyond their names, leaving the agent unable to construct a correct call without external knowledge.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Set user management general setup', which indicates a verb and a vague resource, but it is unclear what specific settings are covered and how it differs from sibling tools like 'user_account', 'user_edit', and 'user_setdefault'. The phrase 'general setup' is too ambiguous to distinguish from those siblings, and the description does not clarify the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the other user management tools, nor does it mention any prerequisites or conditions. While it notes that it is a write operation requiring confirmation, it does not explain when this tool should be preferred over user_edit or user_setdefault, leaving the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
user_setdefaultB
Reset all user profiles to factory default (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It explicitly discloses that this is a write operation, that it affects all user profiles, and that confirmation is required, which is important safety context. It does not state that the reset is permanent or explain the confirmation token flow in detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one tight sentence, front-loaded with the action and resource, with the risk warning in a parenthetical. Every element earns its place and there is no unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with no annotations, no output schema, and four undocumented parameters, the description is not complete enough to invoke correctly. It never reconciles 'all user profiles' with the user_code parameter or explains how to obtain and use confirmation_id and confirm_token.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description explains none of the four parameters. The phrase 'requires confirmation' hints at acknowledge/confirm_token/confirmation_id, but it does not clarify their roles, whether they are required, or what user_code selects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Reset'), a clear resource ('all user profiles'), and the target state ('factory default'), which makes the tool's purpose immediately obvious. It also distinguishes itself from the many read-only sibling tools and from user_set/user_edit by emphasizing a full reset.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool instead of user_set, user_edit, or user_account, and no mention of prerequisites or how the confirmation flow is triggered. The description labels it as a write operation but does not explain the expected context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vigbrg_setC
Configure Vigor bridge (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses that the operation is a write and requires confirmation, but it does not explain the confirmation flow, side effects, prerequisites, or what happens on success or failure. This is a significant gap for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly worded sentence with no filler; the write nature and confirmation requirement are front-loaded. It is concise, though it sacrifices detail needed for safe invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 4-parameter write operation with no annotations, no output schema, and 0% parameter schema coverage, this description is far too sparse. An agent cannot determine what to put in 'param' or how to successfully complete the confirmation workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning for 'param', 'user_code', 'confirm_token', or 'confirmation_id'. The mention of 'requires confirmation' weakly hints at the confirmation parameters, but the required 'param' remains completely opaque.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Configure' and names the resource 'Vigor bridge', making the tool's purpose clear. The parenthetical 'write' helps distinguish it from read-oriented siblings like vigbrg_status, though it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'write — requires confirmation' implies this tool should be used for configuration changes to the Vigor bridge rather than status queries. However, it does not provide explicit when-to-use/when-not-to-use guidance or reference alternative siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vigbrg_statusB
Vigor bridge status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It explicitly says 'read-only', which usefully signals that this tool will not mutate system state. However, it does not disclose what the status output contains, whether it can fail, or any other behavioral context beyond the read-only claim.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words: 'Vigor bridge status (read-only)'. It conveys the essential action, resource, and safety characteristic in minimal space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only status tool, the description provides the minimum needed to invoke it safely. However, there is no output schema, no sibling differentiation, and no description of what 'bridge status' means, so an agent cannot fully predict what the result will look like or why it should choose this tool over related vigbrg_* tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters, so parameter semantics are trivially satisfied. The schema shows no properties and the description adds nothing needed about inputs. Per the 0-parameter baseline, this is adequately handled.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource ('Vigor bridge status, read-only) and the operation ('status'), making it clear this is a read operation on a specific component. It is somewhat generic compared to siblings like vigbrg_wanstatus or vigbrg_wlanstatus, but the name plus description is enough to identify the general capability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use vigbrg_status versus the many related sibling tools such as vigbrg_wanstatus, vigbrg_wlanstatus, or vigbrg_set. The description only states what the tool is; it does not explain selection criteria or alternatives, so the agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vigbrg_wanstatusA
Vigor bridge WAN status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The 'read-only' phrase is the sole behavioral disclosure, which is useful but minimal. With no annotations provided, the description carries the full burden, yet it omits details like whether it returns live data, cache, or any side effects. For a status tool this may be sufficient, but it adds little beyond the purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise phrase with no filler. It front-loads the key facts: what (WAN status), where (Vigor bridge), and how (read-only). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema status tool, the description is complete enough to convey the essential purpose and safety profile. The lack of return-value details is acceptable given no output schema exists, and the tool's simplicity lowers the bar.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and an empty schema, so schema coverage is trivially 100%. No parameter documentation is needed; the baseline for 0 params is 4, and the description adds nothing that contradicts it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as retrieving WAN status for a Vigor bridge, with an explicit read-only note. It distinguishes from generic wan_status (likely for main WAN) and other vigbrg_* tools by naming the specific component.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to prefer this over siblings like wan_status or vigbrg_status. The description only states what it does, not when to use it, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vigbrg_wlanstatusB
Vigor bridge wireless status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It does disclose the key non-mutating trait ('read-only'), which is useful. It stops there, providing no detail about returned data or side-effect-free guarantees beyond that phrase.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one short phrase with a parenthetical qualifier; no filler. It is front-loaded and appropriately sized for a no-argument status tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter read-only status tool the description gives enough to identify the call, but it omits any sense of the returned wireless status fields and doesn't route the agent among closely named siblings. With no output schema, a slightly richer description would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero properties, so there is nothing for the description to add about parameters; baseline 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description expands the tool name into 'Vigor bridge wireless status' and explicitly marks it read-only, which tells an agent the resource and operation type. It differentiates from sibling vigbrg_status and vigbrg_wanstatus by singling out wireless, but it uses no verb and doesn't specify what aspects of status are returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement about when to choose this tool over vigbrg_status, vigbrg_wanstatus, or vigbrg_set. The read-only label implicitly says it isn't for configuration, but no explicit context or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vlan_groupC
Configure VLAN group (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that the operation is a write and requires confirmation, which is useful, but it does not disclose what the confirmation flow entails, what side effects occur, whether changes are reversible, or what happens on failure. The mention of 'requires confirmation' hints at a two-step flow but leaves the mechanics unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the key facts: it is a write operation and requires confirmation. It is concise and avoids fluff, though it could be slightly more informative without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, and four undocumented parameters, the description is incomplete. An agent cannot determine what value to pass for 'param', how to obtain or use the confirmation fields, or what the result of a successful call looks like. The sibling list shows many VLAN-related tools, but the description does not position this one among them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters. The schema shows 'param' is required and 'user_code', 'confirm_token', and 'confirmation_id' are optional, but the description does not clarify what 'param' should contain or how the confirmation parameters relate to the confirmation requirement. The description adds no meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Configure VLAN group') and notes it is a write operation requiring confirmation. However, it does not explain what aspects of the VLAN group are configured (e.g., ID, members, tagging), and the name 'vlan_group' is generic enough that the description only marginally distinguishes it from siblings like vlan_on/vlan_off/vlan_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as vlan_on, vlan_off, or vlan_status. The only hint is that it is a write operation, but there is no context about prerequisites, typical scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vlan_offB
Disable VLAN (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must bear the full behavioral burden, and it does disclose two important facts: this is a write operation and confirmation is required. It does not explain side effects, reversibility, or what confirmation entails, leaving the agent with only a partial behavioral picture.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tight sentence that front-loads the action and appends the most important caveat, 'write — requires confirmation.' Every word earns its place, and there is no redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with four undocumented parameters, no annotations, and no output schema, the description leaves the agent unable to construct a valid call. The confirmation flow, parameter requirements, and scope of the disabling action are all unexplained, making the description insufficient as standalone guidance.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and none of the four parameters (user_code, acknowledge, confirm_token, confirmation_id) has any semantic explanation. The phrase 'requires confirmation' hints that the confirmation-related fields matter, but it does not describe their roles, conditional requirements, or how they should be supplied. The description fails to compensate for the schema's lack of detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action, 'Disable', and a resource, 'VLAN', so an agent can tell this is the counterpart to vlan_on and distinct from read-style siblings like vlan_status. It does not clarify whether this disables the VLAN feature globally or a specific VLAN instance, but the lack of a VLAN-id parameter suggests a global feature toggle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when the intent is to disable VLAN and labels the operation as a write, which distinguishes it from read-only alternatives. However, it never explicitly mentions sibling tools such as vlan_on or vlan_status, nor does it provide conditions for when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vlan_onC
Enable VLAN (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It does disclose that this is a write operation and that it 'requires confirmation', which is useful. However, it does not explain side effects, how confirmation works, or what happens after enabling VLAN.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise and front-loads the action and the key caveat about confirmation. Every word earns its place, though the brevity leaves out important operational details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no annotations, no output schema, no parameter descriptions, and a confirmation flow that is only vaguely referenced. An agent cannot determine what values to provide or how to obtain the confirmation token, so the description is incomplete for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and all four parameters are undocumented. The description does not explain user_code, acknowledge, confirm_token, or confirmation_id, nor does it map 'requires confirmation' to those parameters. It therefore adds no semantic value for constructing a correct call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action, 'Enable VLAN', with a clear resource. It is understandable on its own and contrasts implicitly with siblings like vlan_off and vlan_status, though it does not explicitly name them as alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus related tools such as vlan_off, vlan_status, or vlan_group. The phrase 'requires confirmation' hints at a prerequisite but does not explain when confirmation is available or how to use the tool correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vlan_statusB
VLAN status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It clearly states 'read-only', which is a key behavioral trait. However, it does not mention what the output contains, whether it is real-time, or any other side effects or limitations. For a simple status read, this is minimal but acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of a single phrase. It is front-loaded with the core purpose and read-only nature. While it is not verbose, it could benefit from a brief expansion to include what the status reveals, but for a no-param read-only tool, this brevity is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is minimally sufficient. It tells the agent that it is a read-only VLAN status query. However, it lacks any detail about the return format or what specific VLAN information is provided, which could be relevant for an agent deciding if this tool meets its needs. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema reflects this with an empty properties object (100% coverage). Since there are no parameters, the description does not need to explain parameter semantics. A score of 4 is appropriate for the zero-parameter baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'VLAN status' which clearly identifies the resource and the operation (status query). The 'read-only' qualifier adds specificity. However, it doesn't explicitly distinguish from sibling tools like vlan_group or other status tools, though the name itself is self-explanatory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of scenarios, prerequisites, or comparisons to other status tools like port_status or show_status. The usage context is only implied by the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_dial_outC
VPN dial-out configuration (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It does reveal that this is a write operation requiring confirmation, which is useful. However, it does not explain the confirmation mechanism, side effects, reversibility, or required permissions, leaving significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, a single phrase with the key traits (write, requires confirmation) front-loaded. It has no fluff. However, it may be too terse, bordering on under-specification, but it earns credit for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write operation with four parameters, no output schema, and no annotations, the description is incomplete. It does not explain what 'param' holds, how the confirmation flow works (which parameters are needed for confirmation), or what response to expect. An agent would struggle to invoke this correctly without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description provides no information about any of the four parameters (param, user_code, confirm_token, confirmation_id). The description adds zero semantic value beyond the bare schema property names, which are cryptic (especially 'param').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it is a write operation for VPN dial-out configuration, which clearly distinguishes it from the many read-only show/status siblings. It names the resource (VPN dial-out) and the action (configuration write), though it does not specify exactly which settings are configured.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like vpn_setup or vpn_ovpn. It implies it is for dial-out configuration but does not state conditions, exclusions, or prerequisites. The agent must infer usage from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_graphC
VPN graph status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavior burden; it does disclose the key trait of being read-only, implying no side effects. However, it does not describe what the output represents or whether any background/network state is queried, leaving operational behavior only partially transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact phrase with no filler and is easy to scan. It is perhaps too terse, but it is not padded; for a zero-parameter command this length is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotation context, the description should clarify what 'VPN graph status' actually returns and how the 'graph' should be interpreted. It does neither, so an agent invoking this tool cannot anticipate the response shape or semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter meaning for the description to clarify. The baseline of 4 applies: no schema omissions need compensating.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('VPN graph') and an outcome ('status'), and marks the call as read-only, but it lacks a verb like 'get' or 'show' and does not differentiate 'graph status' from sibling VPN tools. 'Graph' is ambiguous, so an agent can only partially infer what this tool returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to choose vpn_graph over the many sibling VPN and status tools, nor any excluded scenarios. The description simply labels the command and gives no decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_listB
VPN profile list (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It explicitly states 'read-only', which is a useful behavioral trait indicating no side effects. However, it does not describe return format, authentication requirements, or any other behaviors. For a simple list tool, this is minimal but acceptable, hence a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: 'VPN profile list (read-only)'. It is a single phrase, front-loaded, with zero waste. It conveys the essential purpose and behavior efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless list tool, the description covers the basic purpose and read-only behavior. However, it lacks any context about what a VPN profile is, what the list contains, or how it differs from other vpn_* tools. Given the tool's simplicity, this is a moderate gap, but not severe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema coverage is trivially 100%. With 0 params, the baseline is 4. The description adds nothing about parameters because there are none, so this is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb and resource: 'VPN profile list' indicates a listing operation. It adds the qualifier 'read-only' which clarifies the tool's nature. However, it does not explicitly differentiate from sibling tools like vpn_remote, vpn_graph, or vpn_setup, so it loses one point for missing sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. Among many sibling vpn_* and show_* tools, the description does not mention any conditions, exclusions, or context that would help an agent select this specific tool. This is a clear gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_ovpnC
OpenVPN configuration (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It discloses that this is a write operation and that confirmation is required, which is useful. However, it does not explain what the confirmation flow entails, what side effects writing the configuration may have, or whether the change is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, front-loaded with the write nature, and contains no filler. It is appropriately compact, though the terseness comes at the cost of meaningful operational detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation command with four parameters, no annotations, and no output schema, this description is not sufficient. The agent cannot determine what value to pass in 'param', how to complete the confirmation flow, or how this relates to the many VPN sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it provides no meaning for any parameter. The required 'param' field is completely opaque, and user_code, confirm_token, and confirmation_id are left unexplained despite being central to the confirmation behavior mentioned.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation as a write and the resource as OpenVPN configuration, so an agent knows this mutates VPN config rather than reading it. It does not differentiate from write siblings like vpn_setup or vpn_remote, but the core purpose is understandable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 instead of alternatives such as vpn_setup, vpn_remote, or vpn_dial_out. No conditions, exclusions, or comparison to sibling tools are provided, leaving the agent to guess which configuration scenario this applies to.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_remoteC
Remote VPN users (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It only mentions 'read-only', which implies a non-mutating operation, but it fails to describe what data is returned, whether any authentication is needed, or any other side effects. This is insufficient for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceedingly brief, but brevity here is under-specification rather than effective conciseness. It front-loads minimal info and lacks essential context, so the single phrase does not earn its place as a complete description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description should at least clarify the nature of the returned information. 'Remote VPN users' is ambiguous – does it return a list, status, count, or something else? Given the low complexity, the description could easily have been complete, but it is not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is fully covered (100% coverage). There is nothing to explain about parameters, so the description need not add anything. Baseline of 4 for zero parameters is appropriate; the description does not detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Remote VPN users (read-only)' essentially restates the tool name with the addition of 'read-only'. It lacks a clear verb indicating what action is performed (list, view, get). It does not distinguish from sibling tools like vpn_list or vpn_graph, leaving ambiguity about what specific aspect of remote VPN users is exposed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. Given the large set of sibling vpn_* tools, the description offers no exclusions, comparison, or context to help an agent choose this tool correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vpn_setupC
Configure a VPN profile (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| index | Yes | ||
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a write operation and that confirmation is required, which is useful behavioral context given there are no annotations. However, it does not explain side effects, whether changes are reversible, what confirmation entails, or what happens on success or failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately brief, though brevity comes at the cost of needed detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with five undocumented parameters, no annotations, and no output schema, this description is far too thin. It leaves essential information about parameters and confirmation behavior entirely to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no meaning for any of the five parameters (index, param, user_code, confirm_token, confirmation_id). An agent has no way to know what values to supply or how they relate to the confirmation flow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Configure') and a specific resource ('a VPN profile'), so an agent can identify the tool's core function. It does not explicitly differentiate from siblings like vpn_ovpn or vpn_dial_out, but the phrasing is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool instead of alternatives such as vpn_remote, vpn_ovpn, or vpn_list. The parenthetical 'requires confirmation' hints at a workflow constraint but does not explain prerequisites or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vrrp_applyC
Apply VRRP configuration (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that the operation is a write and requires confirmation, which is useful, but it omits critical details such as what happens to existing settings, whether the action is reversible, and what the confirmation flow entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
While the description is brief, brevity is achieved at the cost of substance. The single sentence conveys only that it is a write requiring confirmation, which is essential but insufficient for safe usage. Valuable information about parameters and confirmation flow is absent, so it is under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a write operation with a confirmation mechanism, three undocumented parameters, and no output schema, the description is severely incomplete. It lacks any explanation of the confirmation workflow, parameter semantics, or success/failure behavior, leaving the agent unable to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no explanation for the three parameters (user_code, confirm_token, confirmation_id). Since the schema itself lacks descriptions, the tool definition offers no semantic context for these parameters, making it impossible for an agent to construct valid arguments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a verb ('Apply') and a resource ('VRRP configuration'), and states it is a write operation. However, it does not distinguish itself from sibling tools like vrrp_set or vrrp_enable, leaving ambiguity about exactly what 'apply' accomplishes versus other VRRP configuration tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as vrrp_set, vrrp_enable, or vrrp_reset. There are no conditions, prerequisites, or exclusions mentioned, so an agent cannot infer the appropriate context for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vrrp_enableA
Enable/disable VRRP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the operation is a write and requires confirmation, which is important because no annotations are provided and it carries the full burden of behavioral disclosure. It does not go further to explain the exact confirmation mechanism, potential side effects, or reversibility, but the core behavior is at least stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with the core intent front-loaded ('Enable/disable VRRP') followed by a useful parenthetical about the write/confirmation behavior. It contains no filler, though it could arguably add a bit more detail without losing its efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations, the output schema, and the existence of five parameters, the description leaves significant gaps. An agent is not informed about how to obtain or provide confirmation tokens, when the confirmation fields are required, or what the tool will return after a successful call, risking incorrect invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero schema description coverage, the description adds no direct meaning to any of the five parameters beyond the on/off concept, which is already encoded in the schema's enum. The phrase 'requires confirmation' hints that the confirmation fields are important but gives no semantics to user_code, acknowledge, confirm_token, or confirmation_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (enable/disable) and the resource (VRRP), which sharply distinguishes it from sibling tools such as vrrp_set (configuration) or vrrp_show (read status). The 'write' marker reinforces that this is a state-changing operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context that this is a write operation requiring confirmation, which is valuable for an agent deciding whether to invoke it. However, it doesn't explicitly state when to choose this vs alternatives like vrrp_apply or vrrp_reset, and the confirmation procedure is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vrrp_resetC
Reset VRRP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state that this is a write operation and that it requires confirmation, which is useful. However, it does not disclose what exactly gets reset, whether the action is reversible, or what the confirmation flow entails (e.g., how to obtain the confirmation ID and token). While it provides some transparency, it is incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the primary action. It is a single short sentence that conveys the core purpose without verbosity. However, it sacrifices necessary detail for brevity, so it is not optimally balanced.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema and three parameters, the description is too sparse. It does not explain what 'reset' does, the confirmation prerequisite, or how to interact with the tool's parameters. It also does not differentiate this action from vrrp_set or vrrp_apply. An agent would need significant external knowledge to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate for the three parameters (user_code, confirm_token, confirmation_id). The description only hints at confirmation requirements, but does not explain the purpose of user_code, nor how the confirm_token and confirmation_id are used or related. This is insufficient for an agent to correctly supply parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action and resource: 'Reset VRRP'. It is a specific verb and resource, and it is distinguishable from sibling tools like vrrp_show, vrrp_set, and vrrp_enable. However, it does not specify what 'reset' entails (e.g., reset to defaults, restart the service), so it lacks nuance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not name any sibling tools or mention conditions for use, such as 'Use when you need to clear all VRRP settings' or 'Do not use if you only need to modify settings'. No exclusions or prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vrrp_setC
Configure VRRP (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose two meaningful behaviors — that this is a write operation and that confirmation is required — which is genuinely useful context beyond the schema. But it does not explain the confirmation round-trip (how confirm_token/confirmation_id relate), whether the change is applied immediately or only after confirm_token, or what side effects the write has.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is eight words with zero padding, and the key facts (configure, write, confirmation) are front-loaded. It earns near-maximum for efficiency, though it is slightly dense: the parenthetical 'write — requires confirmation' would read more clearly as separate statements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, 0% schema coverage, and a two-step confirmation flow implied by confirm_token/confirmation_id, the description is far too thin. An agent cannot know what to pass in 'param' or how the confirmation handshake works, making it risky to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the four parameters, but it mentions nothing about param (required), user_code, confirm_token, or confirmation_id beyond the bare 'requires confirmation' phrase. The required 'param' string is completely undocumented, leaving an agent unable to infer valid values or formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Configure') and resource (VRRP), and the 'write' tag implicitly separates it from sibling read tools like vrrp_show and from vrrp_enable/vrrp_apply/vrrp_reset, which name distinct operations. However, 'Configure VRRP' is broad and doesn't say which aspects of VRRP can be set, so an agent still can't tell exactly what domain it covers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus vrrp_enable, vrrp_apply, or vrrp_reset, and no exclusions or prerequisites are stated. The 'requires confirmation' hint implies this is the appropriate choice when a confirmed write is needed, but that is left to inference rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vrrp_showA
VRRP configuration (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description is the only source of behavioral disclosure. The explicit 'read-only' flag tells the agent this command will not change device state, which is highly valuable. It does not cover output format or potential side effects, but for a zero-parameter show command the disclosure is reasonably complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short phrase that front-loads the resource ('VRRP configuration') and the critical read-only property. Every word adds value and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no other description of the result, so the description ought to say a bit more about what is shown. The phrase 'VRRP configuration' only implies the content, leaving the agent to infer the display format. For a no-parameter show tool this is adequate but thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters and the schema is empty, so the description has no parameter burden to carry. The description identifies the resource the command is about, which is all the parameter semantics needed here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (VRRP configuration) and the operation mode (read-only), which lets the agent understand this is a non-mutating lookup. It lacks an explicit verb but the tool name plus 'read-only' clearly signals the purpose. It is distinguishable from mutating siblings like vrrp_set and vrrp_reset, though it doesn't differentiate itself from other status show tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance about when to invoke this tool versus alternatives. There is no mention of related commands like vrrp_enable, vrrp_set, or ha_show, and no statement about when a user would want the VRRP config rather than another status view.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_budgetB
Configure WAN data budget (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing side effects. It does disclose that this is a write and that confirmation is required, which is important. However, it leaves the confirmation protocol unexplained (how confirmation_id/confirm_token are obtained or used), and says nothing about reversibility or side effects beyond the write itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence contains only high-signal information: the operation, the resource, and the two most decision-relevant traits (write, confirmation). There is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a write tool with a confirmation flow, four parameters, no output schema, and no annotations; the one-line description is not enough for an agent to invoke it correctly. It correctly warns about confirmation but does not explain the flow or the meaning of the parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, and it almost entirely does not. 'Requires confirmation' hints at confirm_token/confirmation_id, but the required 'param' field and 'user_code' are left completely unspecified, making it impossible to know what values to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Configure') and a specific resource ('WAN data budget'), and the parenthetical immediately flags this as a write operation. It does not explicitly distinguish itself from sibling tools, but no sibling appears to cover WAN budget configuration, so confusion risk is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the intended use clear (configuration/write rather than status read), but it does not say when to prefer this tool over alternatives or mention any prerequisites beyond confirmation. The 'write' marker is an implicit exclusion of read-only use, not an explicit routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_detectA
WAN connection detection status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It explicitly states 'read-only,' which is the most important behavioral trait for this zero-parameter status query, and prevents the agent from mistaking it for a detection-triggering action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at six words and front-loads the core purpose and read-only nature. There is no filler or redundant wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only status tool, the description is mostly adequate, but it does not explain what the returned status values mean or how to interpret the output. It also does not differentiate this tool from closely related siblings like wan_status, leaving some ambiguity for a selecting agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema contains no properties, so there are no parameters to document. The baseline of 4 applies, and the description correctly avoids inventing parameter-level detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'WAN connection detection status' clearly identifies the resource and the type of operation (a read/query). It is not a tautology, but it lacks a specific verb such as 'show' or 'get' and does not explicitly distinguish itself from siblings like wan_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool instead of related siblings such as wan_status, wan_detect_mtu, or internet_view. The only context provided is 'read-only,' which is a safety property, not usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_detect_mtuA
WAN MTU detection status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the transparency burden. It explicitly states 'read-only', a useful non-destructive signal, but does not add detail about the meaning or shape of the status output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, with no wasted words. The parenthetical 'read-only' adds safety context without bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter status tool, this is close to adequate: it names the subject and read-only nature. However, with no output schema and no explanation of what the status means or how it relates to sibling detection tools, the description leaves some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and the schema already provides complete coverage, so a baseline of 4 is warranted. The description cannot add parameter-level value because no parameters exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a read-only status query for WAN MTU detection. 'Status (read-only)' distinguishes it from action-oriented siblings like wan_detect, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The read-only hint implies the tool is used to retrieve current MTU detection status rather than change settings. However, there is no explicit explanation of when to choose this over wan_detect, wan_detect_mtu6, or wan_mtu.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_detect_mtu6B
IPv6 WAN MTU detection status (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It does state that the operation is read-only, which is the key safety-relevant trait, but it does not explain what the status represents (e.g., detection state, MTU value, success/failure) or whether calling it triggers a new detection. This is adequate for a simple status query but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a compact, front-loaded phrase with no filler. Every word contributes: 'IPv6' establishes scope, 'WAN MTU detection' names the resource, and 'read-only' conveys safety and behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple—zero parameters, no output schema—so the description is close to sufficient for invocation. However, because there is no output schema, the description would benefit from stating what the response contains, such as detection status values or the detected MTU. This is a small but real gap for an agent deciding whether this tool answers a given question.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the baseline of 4 applies; there are no parameter semantics to document. The description does not introduce any ambiguity or conflicting parameter-related expectations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource ('IPv6 WAN MTU detection') and the operation type ('status', 'read-only'), so an agent can distinguish it from mutation-oriented siblings. It lacks an explicit verb like 'show' or 'get', but the noun phrase 'detection status' makes the read-only purpose evident.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit when-to-use guidance or exclusions, and it does not direct the agent to alternatives such as wan_detect_mtu for IPv4 or wan_status for general WAN status. The 'IPv6' and 'read-only' labels imply an inspection context, but that is not enough to count as real usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_disableB
Disable a WAN interface (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| wan | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does disclose that this is a write operation requiring confirmation. However, it does not explain what 'confirmation' entails, what side effects disabling a WAN interface may have, or whether the operation is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no filler, and the important write/confirmation caveat is placed immediately. It is highly efficient, though terse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutating tool with no annotations, no output schema, and five undocumented parameters, one sentence is insufficient. The agent is left without the confirmation flow, the required vs optional confirmation fields, or the consequences of disabling a WAN interface.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not describe any of the five parameters or how they relate to the confirmation requirement. The vague 'requires confirmation' hint does not clarify the roles of user_code, acknowledge, confirm_token, or confirmation_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Disable') and resource ('WAN interface'), and the 'write' tag clearly marks it as mutating, which separates it from read-only siblings like wan_status. It is not a tautology and conveys the core action unambiguously.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives clear context that this tool is for disabling a WAN interface and that it is a write operation requiring confirmation, but it does not state when to prefer it over alternatives such as wan_enable, nor does it explain the confirmation workflow. Usage is implied by the name and verb rather than explicitly spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_dnsB
Set WAN DNS servers (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| wan | Yes | ||
| primary | Yes | ||
| secondary | No | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the behavioral burden. It does disclose two important traits: the operation is a 'write' and it 'requires confirmation'. However, it stops short of explaining how the confirmation flow works, what side effects occur, or what input/state changes the caller should expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every phrase earns its place: the action, the target resource, the write nature, and the confirmation requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-parameter mutation tool requiring confirmation and having no output schema or annotations, this description is insufficient. It does not clarify the confirmation sequence, what values the confirmation fields expect, or what response the caller receives, leaving an agent to guess at critical invocation details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate for the six undocumented parameters, but it does not. 'WAN DNS servers' hints at primary/secondary DNS roles, but wan, user_code, confirm_token, and confirmation_id are not explained, leaving the confirmation-related parameters ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Set WAN DNS servers', which clearly identifies the operation as a write to WAN DNS configuration. It is distinct from read-only sibling tools like show_dns, though it does not explicitly name or contrast any alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied by the verb 'Set' and the resource 'WAN DNS servers', so an agent can infer when to call it. However, the description provides no explicit guidance about when to prefer this tool over related siblings such as dhcp_dns1, ip_dnsforward, or show_dns, and no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_enableC
Enable a WAN interface (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| wan | Yes | ||
| user_code | No | ||
| acknowledge | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the operation is a write and requires confirmation, which is useful, but it does not elaborate on the confirmation flow (e.g., how confirm_token and confirmation_id are used), side effects, or reversibility. This is a significant gap for a mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that avoids fluff and front-loads the primary action. However, it lacks any structured breakdown, and the brevity borders on under-specification rather than efficient completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no schema coverage, no annotations, and no output schema, the description is severely incomplete. It does not explain the confirmation mechanism, parameter roles, expected behavior, or return values, making it inadequate for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description mentions none of the five parameters. The agent has no explanation of what 'wan', 'user_code', 'acknowledge', 'confirm_token', or 'confirmation_id' mean or how they interact, leaving the agent to guess from names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Enable a WAN interface' with a specific resource and a note about being a write operation. It is distinct from obvious siblings like wan_disable and status tools, so an agent can infer the basic purpose without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as wan_disable or wan_status. It mentions 'requires confirmation' but does not explain the context or prerequisites, leaving the agent without selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_failoverC
Configure WAN failover (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It does disclose two useful facts — the operation is a write and it requires confirmation — which correctly implies the confirm_token/confirmation_id/user_code workflow. But it stops there: it does not say what the confirmation step involves, what risks the write carries (e.g., will it drop active links), or what state changes result, leaving the agent guessing about consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is brief and puts the purpose plus the key write/confirmation caveat up front, which is efficient. However, brevity here edges toward under-specification — the two fragments convey the gist but omit the parameter semantics and workflow detail that a lone agent would need, so it is concise without being complete.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a confirmation-gated write tool with four undocumented parameters and no output schema, and the description explains only that confirmation is needed. An agent cannot determine what to pass in 'param', how to obtain confirm_token/confirmation_id, or what success/failure looks like. For a mutating tool of this complexity, this level of description is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and there are four parameters (param, user_code, confirm_token, confirmation_id), yet the description explains none of them. The 'requires confirmation' phrase implicitly gestures at the token/id fields, giving a marginal hint, but it does not clarify what 'param' holds or which fields are essential for the confirmation flow. The description must compensate for the total lack of schema documentation and largely fails to.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Configure') and a clear resource ('WAN failover'), which distinguishes it from the large family of read-only show_* tools in its sibling list. It does not explicitly contrast with closely related WAN write tools like wan_enable/wan_disable/wan_lb, but 'failover' is semantically distinct enough that an agent can tell the intent apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description flags that this is a write operation requiring confirmation, hinting at a guarded execution workflow. However, it provides no when-to-use guidance relative to alternatives — no mention of when to choose failover configuration over wan_lb, wan_forward, or wan_enable/wan_disable, and no stated preconditions such as an existing failover setup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_forwardC
Enable/disable inter-WAN forwarding (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| onoff | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It mentions 'write' and 'requires confirmation', but does not explain what confirmation entails, what side effects occur, or whether the operation is reversible. This is minimal and leaves critical uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the key information (purpose and write/confirmation flag) with no fluff. It is concise and well-structured, though it omits substantial necessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a write operation with confirmation parameters, no output schema, and no annotations, the description is grossly incomplete. The agent lacks information about the confirmation flow, how to obtain a confirmation token, and the meanings of the additional parameters, making a correct invocation nearly impossible.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it explains none of the four parameters. 'onoff' is an enum that the schema already shows, but 'user_code', 'confirm_token', and 'confirmation_id' are entirely unexplained, leaving the agent unable to construct a valid request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation 'Enable/disable' and the resource 'inter-WAN forwarding', which distinguishes it from read-only WAN tools. However, it does not explicitly differentiate itself from siblings like wan_enable/wan_disable, so it is clear but lacks direct sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives among the many WAN-related siblings. The note 'requires confirmation' hints at a prerequisite but does not explain when this tool should be chosen over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_lbC
Configure WAN load balancing (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| param | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that this is a write operation and that it requires confirmation, which is useful. But it doesn't explain the confirmation flow, side effects, or whether existing load-balancing settings are replaced, so it only partially fulfills the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with the action and caveat front-loaded; no wasted words. It is not padded, though it sacrifices useful content for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write tool with no annotations, no output schema, 0% parameter coverage, and 4 parameters, an 8-word description is far from complete. The confirmation workflow and the meaning of the parameters are entirely missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not mention any of the four parameters. The required 'param' string, plus optional user_code, confirm_token, and confirmation_id, receive no semantic explanation, so an agent cannot infer what values to pass.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Configure') and resource ('WAN load balancing'), and flags it as a write action, which separates it from the many read-only 'show_*'/status siblings. It doesn't explicitly compare against related WAN config siblings like wan_failover or wan_budget, so not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Only implies the use case (configuring WAN load balancing) and the confirmation requirement. Gives no when-to-use, when-not-to-use, or alternative tool names, and no workflow around the required confirmation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_mtuB
Set WAN MTU (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| mtu | Yes | ||
| wan | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that the operation is a write and 'requires confirmation', which is valuable. However, it does not explain how confirmation works, what the side effects are, or whether the change is reversible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly scoped phrase with the core action front-loaded and the key caveat (write/confirmation) in a parenthetical. Every word earns its place, and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with five parameters, no annotations, and no output schema, this description is incomplete. It says confirmation is required but does not state how the agent should obtain or supply the confirmation fields, and it leaves the meaning of the optional parameters ambiguous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for the five undocumented parameters. It does not. The words 'Set WAN MTU' give some context that wan is the WAN interface and mtu is the desired value, but the confirmation-related parameters (user_code, confirm_token, confirmation_id) and their roles are completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Set WAN MTU' names a specific verb and resource, and the parenthetical 'write' explicitly marks it as a mutation, distinguishing it from the many read-only show/status siblings such as wan_status or wan_detect_mtu. Despite the missing title, an agent can clearly tell what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives like wan_detect_mtu or wan_detect_mtu6. The description implies usage through the command itself, but it does not state prerequisites, exclusions, or which sibling should be used for MTU detection rather than setting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_statusA
Per-WAN link state, mode, IP, gateway, traffic, DNS (read-only)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does state 'read-only', which signals no side effects, a key trait. However, it does not describe the return format, whether multiple WANs are supported, or any error behavior. For a simple read-only query this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense phrase that front-loads the resource (WAN) and the data points, and includes the read-only qualifier. Every word earns its place; there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, read-only status tool with no output schema, the description gives a reasonable summary of the expected return content (state, mode, IP, gateway, traffic, DNS). It does not specify the exact structure, but that is not critical for invocation. The description is complete enough for an agent to understand what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema coverage is trivially 100%. The description does not need to add parameter details since there are none. The phrase 'Per-WAN' implies it queries all WAN links without filtering, which is consistent with the empty parameter schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (WAN link) and the exact data points it reports (state, mode, IP, gateway, traffic, DNS), and it marks the operation as read-only. It is easily distinguished from sibling mutation tools like wan_enable/wan_disable and from LAN-specific tools like show_lan. Although it lacks an explicit verb, the intent is unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the many sibling status tools (e.g., show_status, show_statistic, wan_detect). It does not mention that this is the go-to per-WAN status query, nor does it state any exclusions or alternatives. The only hint is 'read-only', which is implicit but not comparative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wan_vlanB
Set WAN VLAN tag (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| vid | Yes | ||
| wan | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It does state that this is a write operation and that confirmation is required, which is useful. However, it does not explain the confirmation flow, side effects, reversibility, or what happens if confirmation fields are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the action and appends the key caveat in parentheses. Every word earns its place, and there is no redundancy. It is structurally concise despite being informationally sparse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description announces confirmation but never explains which confirmation parameters are needed or how to obtain them, leaving a critical invocation gap. There is no output schema or annotation to compensate. An agent cannot reliably know whether to include user_code, confirm_token, confirmation_id, or all of them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate, but it does not explain parameters directly. 'WAN VLAN tag' implies that vid is the tag and wan is the interface, but user_code, confirm_token, and confirmation_id are left entirely unexplained despite being central to the confirmation workflow.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Set') and a precise resource ('WAN VLAN tag'), making the operation unambiguous. It is clearly distinct from sibling tools that read status or manage other WAN or VLAN settings. The added '(write — requires confirmation)' qualifier reinforces the operation type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus related siblings like wan_mtu, wan_enable, vlan_on, vlan_off, or wan_failover. No prerequisites, selection criteria, or exclusions are provided. The confirmation hint is operational, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wol_sendA
Send Wake-on-LAN magic packet (write — requires confirmation)
| Name | Required | Description | Default |
|---|---|---|---|
| mac | Yes | ||
| user_code | No | ||
| confirm_token | No | ||
| confirmation_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral transparency burden. It discloses that this is a write operation and requires confirmation, which is valuable. However, it does not explain the confirmation flow, potential side effects, or success/failure behavior, so transparency is only partial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with a useful parenthetical. It front-loads the core action and includes the critical write/confirmation trait without unnecessary filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description is not complete enough for an agent to correctly handle the confirmation requirements. The optional confirmation parameters are unadorned and the flow for obtaining them is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain the four parameters. It mentions 'requires confirmation', loosely mapping to confirm_token and confirmation_id, but leaves user_code and even the required mac field semantics largely to inference. With such low schema coverage, the description should compensate but does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Send Wake-on-LAN magic packet'. It clearly identifies the action and the protocol. It also signals a write operation, distinguishing it from the many read-only query tools in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by naming the operation photo and noting that confirmation is required, but it does not explicitly state when to use this tool versus alternatives. There is no clear exclusion or reference to other network tools, though the unique WOL function makes confusion less likely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
217 tool updates
v0.6.0- First observed
apm_disable - First observed
apm_enable - First observed
apm_query - First observed
apm_show - First observed
apm_stanum - First observed
appqos_enable - First observed
appqos_view - First observed
csm_appe_set - First observed
csm_appe_show - First observed
csm_dnsf - First observed
csm_ucf - First observed
csm_wcf - First observed
ddns_enable - First observed
ddns_forceupdate - First observed
ddns_log - First observed
ddns_show - First observed
dhcp_dns1 - First observed
dhcp_dns2 - First observed
dhcp_gateway - First observed
dhcp_leasetime - First observed
dhcp_off - First observed
dhcp_on - First observed
dhcp_startip - First observed
dhcp_status - First observed
dos_activate - First observed
dos_blacklist_show - First observed
dos_deactivate - First observed
dos_view - First observed
dos_whitelist_show - First observed
dpdk_cmdlog - First observed
dpdk_statistic - First observed
fs_info - First observed
fs_ls - First observed
fs_pwd - First observed
ha_set - First observed
ha_show - First observed
ha_status - First observed
hsportal_info - First observed
hsportal_level - First observed
hsportal_setup - First observed
internet_set - First observed
internet_view - First observed
ip_addr - First observed
ip_arp_status - First observed
ip_bindmac - First observed
ip_dnsforward - First observed
ip_lanDNSRes - First observed
ip_nmask - First observed
ip_ping - First observed
ip_route_add - First observed
ip_route_del - First observed
ip_route_status - First observed
ip_session - First observed
ip_tracert - First observed
ip6_addr - First observed
ip6_mngt - First observed
ip6_ping - First observed
ip6_tracert - First observed
ipf_rule - First observed
ipf_set - First observed
ipf_view - First observed
ldap_set - First observed
ldap_user - First observed
ldap_view - First observed
linux_setlinuxip - First observed
linux_ssh_disable - First observed
linux_ssh_enable - First observed
linux_ssh_port - First observed
linux_status - First observed
local8021x_show - First observed
local8021x_show_local_cer - First observed
log_call - First observed
log_filter - First observed
log_ppp - First observed
log_tail - First observed
log_wan - First observed
mngt_bfp - First observed
mngt_defenseworm - First observed
mngt_httpport - First observed
mngt_httpsport - First observed
mngt_noping - First observed
mngt_sshport - First observed
mngt_sshtimeout - First observed
mngt_telnetport - First observed
mngt_telnettimeout - First observed
msubnet_status - First observed
msubnet_switch - First observed
nand_bad - First observed
nand_usage - First observed
nat_dmz - First observed
nat_view - First observed
object_ip_view - First observed
object_service_view - First observed
port_sniff_status - First observed
port_speed - First observed
port_status - First observed
portmaptime_flush - First observed
portmaptime_list - First observed
portmaptime_set - First observed
qos_class - First observed
qos_setup - First observed
radius_show - First observed
radius_show_local_cer - First observed
service_get - First observed
service_show - First observed
show_clienttraffic - First observed
show_cocpu - First observed
show_cpu - First observed
show_cputemp - First observed
show_dmz - First observed
show_dns - First observed
show_flow - First observed
show_lan - First observed
show_memory - First observed
show_nat - First observed
show_openport - First observed
show_pmtime - First observed
show_portmap - First observed
show_qryrdsl - First observed
show_session - First observed
show_statistic - First observed
show_status - First observed
show_traffic - First observed
show_voip - First observed
switch_list - First observed
switch_off - First observed
switch_on - First observed
switch_query - First observed
switch_status - First observed
swm_alert - First observed
swm_db - First observed
swm_detail - First observed
swm_disable - First observed
swm_enable - First observed
swm_get - First observed
swm_group - First observed
swm_log - First observed
swm_maintain - First observed
swm_post - First observed
swm_profile - First observed
swm_search - First observed
swm_show - First observed
swm_snmp - First observed
swm_tr069 - First observed
sys_alg - First observed
sys_app_bandwidth - First observed
sys_app_statistic - First observed
sys_autoreboot - First observed
sys_cc - First observed
sys_cmdlog - First observed
sys_commit - First observed
sys_dashboard - First observed
sys_dnsCacheTbl - First observed
sys_domainname - First observed
sys_fr_log - First observed
sys_health - First observed
sys_info - First observed
sys_license - First observed
sys_mailalert - First observed
sys_max_session - First observed
sys_name - First observed
sys_passwd - First observed
sys_pollbuf - First observed
sys_qrybuf - First observed
sys_reboot - First observed
sys_syslog - First observed
sys_tftpd - First observed
sys_time - First observed
sys_tr069 - First observed
sys_version - First observed
sys_webhook - First observed
tacacsplus_set - First observed
tacacsplus_view - First observed
testmail_send - First observed
upnp_nat - First observed
upnp_off - First observed
upnp_on - First observed
usb_devstat - First observed
usb_disk - First observed
usb_temp - First observed
user_account - First observed
user_edit - First observed
user_set - First observed
user_setdefault - First observed
vigbrg_set - First observed
vigbrg_status - First observed
vigbrg_wanstatus - First observed
vigbrg_wlanstatus - First observed
vlan_group - First observed
vlan_off - First observed
vlan_on - First observed
vlan_status - First observed
vpn_dial_out - First observed
vpn_graph - First observed
vpn_list - First observed
vpn_ovpn - First observed
vpn_remote - First observed
vpn_setup - First observed
vrrp_apply - First observed
vrrp_enable - First observed
vrrp_reset - First observed
vrrp_set - First observed
vrrp_show - First observed
wan_budget - First observed
wan_detect - First observed
wan_detect_mtu - First observed
wan_detect_mtu6 - First observed
wan_disable - First observed
wan_dns - First observed
wan_enable - First observed
wan_failover - First observed
wan_forward - First observed
wan_lb - First observed
wan_mtu - First observed
wan_status - First observed
wan_vlan - First observed
wol_send
TDQS
Scored across 217 tools
Many tools have overlapping purposes, such as show_traffic, show_clienttraffic, show_statistic, sys_app_statistic, and sys_app_bandwidth all providing traffic/statistics views. Similarly, multiple status/info tools (show_status, sys_info, sys_health, sys_dashboard) blur boundaries, and several switch management tools (swm_show, swm_get, swm_query-like) are hard to distinguish.
The naming is mostly verb_noun with prefixes like show_, sys_, wan_, dhcp_, but there is inconsistency: some use show_ (show_traffic), some use status (dhcp_status, linux_status, port_sniff_status), some use view (dos_view, internet_view, nat_view), and some use mixed forms like sys_dnsCacheTbl, sys_fr_log, and portmaptime_list. The pattern is readable but not uniform.
217 tools is an extreme number for an MCP server, far beyond the typical well-scoped range. Even for a comprehensive router management interface, this creates overwhelming selection complexity and suggests the server exposes nearly every CLI command as a separate tool rather than a curated API.
The tool surface is extremely comprehensive, covering nearly every router subsystem: WAN, LAN, DHCP, NAT, VPN, QoS, firewall, VLAN, switch, AP management, IPv6, logging, and more. There are minor gaps (e.g., no explicit firmware upgrade tool beyond TFTP enable, no direct NAT rule creation tool), but the breadth is impressive and most workflows are covered.
Maintenance
Related MCP Connectors
- emisarOAuthdev.emisar
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Security gateway for AI agents: policy, approval, and audited execution, no secrets shared.
- mcpOAuthcom.vibgrate
Query your team's drift, vulnerability, and upgrade data from any AI assistant. OAuth 2.1, 51 tools.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with direct access to multi-vendor network devices for tasks like configuration management, health checks, and topology discovery through 35 specialized tools. It enables natural language control over platforms including Cisco, Juniper, and Nokia using SSH, NETCONF, and SNMP protocols.11MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to monitor and securely manage AsusWRT and AsusWRT-Merlin routers via SSH with allowlisted commands, supporting read-only monitoring and controlled mutations.472MIT
- AlicenseDqualityBmaintenanceEnables managing MikroTik RouterOS devices via natural language, with read-heavy network inspection and guarded write access across multiple routers.261Apache 2.0
- AlicenseNot gradedqualityAmaintenanceBridges AI assistants with MikroTik RouterOS devices, enabling natural language management of network configurations, firewall, VLANs, VPNs, and diagnostics via ~300 tools.1MIT