Skip to main content
Glama
AIops-tools

io.github.AIops-tools/network-aiops

Server Quality Checklist

83%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.8.0

  • Disambiguation5/5

    Each tool has a unique purpose with no overlap. For example, get_bgp_neighbors and get_bgp_neighbors_detail differ by detail level, and get_interfaces, get_interfaces_counters, get_interfaces_ip are all distinct. Config operations (backup, diff, merge, replace) are clearly separated, and RCA tools address specific issues.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with lowercase and underscores (e.g., get_lldp_neighbors, config_backup, netbox_list_devices). The naming is predictable and readable, with no mixing of styles.

    Tool Count4/5

    33 tools is slightly high but justified for the breadth of network AIOps: monitoring, configuration, NetBox integration, and troubleshooting. Each tool addresses a specific need, though some consolidation might be possible.

    Completeness4/5

    The tool set covers read operations for many network aspects, configuration management with rollback/revert, NetBox source-of-truth, and RCA. Missing direct write tools for specific protocols, but config merge/replace covers generic changes. Minor gaps exist but core workflows are complete.

  • Average 3.9/5 across 33 of 33 tools scored. Lowest: 2.9/5.

    See the Tool Scores section below for per-tool breakdowns.

    • 1 of 1 community issues answered or closed in the last 6 months
    • 30 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • This repository includes a glama.json configuration file.

  • This server has been verified by its author.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It only implies a read operation via '[READ]' but lacks details on behavior like handling null target, rate limits, or 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.

    Conciseness5/5

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

    Extremely concise with no waste. The purpose and parameter are front-loaded in a clear structure.

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

    Completeness2/5

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

    Despite low complexity, the description omits return value details. With no output schema, the agent cannot infer what 'Configured NTP servers' includes (e.g., list of addresses, configuration status).

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

    Parameters3/5

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

    The description adds meaning to the parameter 'target' by stating it is a 'Device name from config', which is not in the schema. However, it does not explain behavior when target is null or provide further details.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it reads configured NTP servers, using the verb 'get' implicitly and specifying the resource. However, it does not distinguish from sibling tools like get_ntp_stats, which could cause confusion.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. No usage context or exclusion criteria are given.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It indicates read-only via [READ] but fails to disclose behavior for null target input, error handling, or data freshness. No side effects are mentioned, but the read-only tag is helpful.

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

    Conciseness4/5

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

    The description is very short and front-loaded with purpose and argument list. No superfluous text. However, it could benefit from slightly more detail without becoming verbose.

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

    Completeness2/5

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

    Given the simple interface (1 optional param, no output schema), the description omits return format and details on null target behavior. It does not link to the sibling 'get_ntp_servers' for complementary usage, leaving gaps for a complete understanding.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must add meaning. It explains 'target' as 'Device name from config', but does not clarify the effect of null (default) or whether it implies all devices. This leaves ambiguity.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it is a read operation ([READ]) and specifies the exact data: NTP peer synchronization stats including stratum, offset, jitter, reachability. This distinguishes it from sibling tools like 'get_ntp_servers' which likely returns server configurations, not stats.

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

    Usage Guidelines2/5

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

    The description does not provide any guidance on when to use this tool versus alternatives. There is no mention of prerequisites or when not to use it. The sibling 'get_ntp_servers' is closely related but no comparison is given.

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

  • Behavior2/5

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

    The description includes a [READ] prefix, indicating a safe operation, but provides no further behavioral traits such as performance, pagination, error handling, or whether it returns all VRFs or requires filtering. With no annotations, the description carries full burden and 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.

    Conciseness5/5

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

    Extremely concise: one line for the tool purpose and one line for the parameter description. No fluff, front-loaded with the most important information. Every sentence earns its place.

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

    Completeness3/5

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

    For a simple tool with one parameter and no output schema, the description covers the basics but lacks clarity on VRF scope (all VRFs or specific) and output format. The ambiguity about 'per VRF' reduces completeness. Given the low complexity, a score of 3 reflects the gap.

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

    Parameters4/5

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

    The single parameter 'target' is described in the description: 'Device name from config; omit to use the default device.' This adds meaning beyond the schema (which has no parameter descriptions), clarifying it is optional and its purpose. For one parameter with 0% schema coverage, the description adequately compensates.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it reads detailed BGP neighbors per VRF with specific fields (state, router id, AS, prefix stats). While it distinguishes from siblings like get_bgp_neighbors (implied summary), it does not explicitly contrast them, leaving slight ambiguity.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like get_bgp_neighbors or bgp_neighbor_rca. No prerequisites, context, or exclusions mentioned.

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

  • Behavior3/5

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

    No annotations are provided, but description starts with '[READ]' indicating read-only behavior. No destructive side effects implied. However, missing details on authentication or rate limits, which could be relevant 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.

    Conciseness4/5

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

    Very concise with two sentences. Front-loaded with '[READ]' and attribute list. No wasted words.

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

    Completeness3/5

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

    Lists returned attributes but omits return format (e.g., list or dict). No output schema available. With minimal parameters and complexity, description is adequate but could be more complete by specifying output structure.

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

    Parameters4/5

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

    Schema description coverage is 0%, but description adds meaning: 'target: Device name from config' clarifies the parameter's purpose beyond the schema's generic string type.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states verb '[READ]' and resource 'Interfaces' with specific attributes (up/down state, enabled flag, speed, description). However, it doesn't explicitly distinguish from sibling tools like get_interfaces_counters or get_interfaces_ip, so minor gap.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives. Parameter 'target' is described as 'Device name from config' but lacks context on prerequisites or scenarios. No when-not-to-use information.

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

  • Behavior2/5

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

    The '[READ]' tag indicates non-destructive behavior, but no annotations are present to confirm. The description lacks disclosure of permissions, side effects, or behavior with null/valid target. No output schema, so return format is unknown.

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

    Conciseness4/5

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

    The description is very short: one line and a parameter note. It is front-loaded with '[READ]' and contains no fluff. However, it might be too sparse for completeness.

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

    Completeness2/5

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

    Given the lack of annotations and output schema, the description is incomplete. It does not explain the return format, pagination, or how filtering works when target is null. For a read tool on network interfaces, more detail is expected.

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

    Parameters4/5

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

    The parameter 'target' has a description 'Device name from config', adding meaning beyond the schema (which only has type). With 0% schema description coverage, this compensates effectively. Could specify format or constraints.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it retrieves per-interface IPv4/IPv6 addresses and prefix lengths, using a specific verb ('get') and resource ('interfaces IP'). It distinguishes from siblings like 'get_interfaces' (likely interface status) and 'get_interfaces_counters' (counters).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives (e.g., 'get_interfaces' for interface status). The '[READ]' prefix hints at read-only, 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.

  • Behavior2/5

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

    No annotations are present, so the description must carry the full burden. While '[READ]' implies a read-only operation, there is no mention of idempotency, safety, error handling, or what happens if the target is unreachable. The description does not disclose potential side effects or permission requirements.

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

    Conciseness5/5

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

    The description is extremely concise: two lines for the purpose and one line for the argument. It is front-loaded with the key information and contains no superfluous text.

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

    Completeness3/5

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

    Given the tool's simplicity (one parameter, no output schema), the description provides the essential purpose and argument meaning. However, it could be more complete by explaining the behavior when target is null (e.g., returns neighbors for all devices) and by describing the return format. The 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.

    Parameters3/5

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

    The only parameter 'target' has 0% schema description coverage. The description line 'target: Device name from config' adds some semantic value by indicating the parameter's source (config) and type (device name), but it does not explain what values are valid, the meaning of null, or formatting requirements. Baseline for 0% coverage is 4, but the minimal addition reduces the score to 3.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with '[READ] LLDP neighbors: local port, remote hostname, remote port,' which clearly identifies the tool's purpose as a read operation and specifies the data returned. It distinguishes from siblings like 'get_lldp_neighbors_detail' which likely provides more detail.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as 'get_lldp_neighbors_detail' or other read tools. The description lacks information about prerequisites, order of operations, or situational context.

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

  • Behavior3/5

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

    The description states it is a read operation, implying no side effects. It notes "driver support varies," which hints at potential inconsistencies. However, without annotations, the description could disclose more about authorization needs or return limitations.

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

    Conciseness5/5

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

    The description is extremely concise with two sentences, front-loading the read nature. Every word adds value, with no redundancy.

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

    Completeness3/5

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

    The tool is low complexity (one optional parameter, no output schema). The description mentions the returned fields but lacks details on the response structure (e.g., list or object, pagination). Given the minimal info, it is adequate but not fully complete.

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

    Parameters3/5

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

    The input schema has one parameter (target) with 0% description coverage. The description adds "Device name from config," providing more context than the schema alone. Yet it remains vague and does not specify allowed values or behavior when null.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses "[READ]" to indicate a read operation and lists the resource (VLANs) with returned fields (id, name, member interfaces). It is specific and distinguishes from sibling tools like get_interfaces or get_network_instances by focusing solely on VLANs.

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

    Usage Guidelines2/5

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

    The description does not provide any guidance on when to use this tool versus alternatives such as get_network_instances or get_interfaces. No context about prerequisites or exclusions is given.

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

  • Behavior2/5

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

    No annotations are present, so the description carries the full burden. It only indicates a read operation and lists counter types, but does not disclose authorization needs, behavior on invalid targets, or output format details.

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

    Conciseness4/5

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

    The description is very concise with two sentences. It front-loads the purpose and lists key resources, though a structured parameter section could improve readability.

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

    Completeness3/5

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

    For a simple read tool with one parameter, the description covers the core purpose and parameter. However, it lacks details on the return value (e.g., format, per-interface representation) and potential error handling, leaving gaps for agent usage.

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

    Parameters4/5

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

    The schema provides no description for 'target' (0% coverage). The description adds meaning by stating 'Device name from config', helping the agent understand the parameter's purpose and source.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it is a read operation that retrieves per-interface traffic and error counters (octets, packets, errors, discards). This distinguishes it from sibling tools like get_interfaces (which likely returns interface status or configuration) and get_interfaces_ip.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. The '[READ]' prefix implies it is safe, but there is no explicit context about suitable scenarios or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It only discloses the read-only nature via '[READ]' but does not explain other behaviors like return format, pagination, or performance implications. For a detailed tool, more behavioral context is needed.

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

    Conciseness5/5

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

    The description is extremely concise with no wasted words. It front-loads the purpose and uses a clear structure with an Args section. Every sentence serves a purpose.

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

    Completeness2/5

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

    Given no output schema and no annotations, the description is incomplete. It lists returned fields but does not describe the output structure, pagination, error conditions, or any permissions needed. For a tool with one optional parameter, more detail is expected.

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

    Parameters4/5

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

    The sole parameter 'target' is explained as 'Device name from config,' adding meaning beyond the schema which only gives type and default. With 0% schema description coverage, this minimal explanation is helpful, though it could be more precise (e.g., format or examples).

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it retrieves detailed LLDP neighbor information including chassis id, system name/description, and capabilities. It uses the verb 'get' and specifies the resource, distinguishing it from sibling tools like get_lldp_neighbors (likely summary) and get_bgp_neighbors.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like get_lldp_neighbors (presumably a summary) and other network tools, the description does not differentiate usage scenarios or mention prerequisites.

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

  • Behavior3/5

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

    No annotations exist, so the description bears the full burden. It labels the tool as [READ] indicating non-destructive behavior, and lists the returned fields, but lacks details on authentication needs, rate limits, or 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.

    Conciseness4/5

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

    The description is concise with a front-loaded [READ] tag and a brief sentence on output, followed by parameter documentation. Each sentence earns its place, though more structured formatting could improve scanability.

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

    Completeness4/5

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

    For a table retrieval without output schema, the description lists the expected fields (MAC, interface, VLAN, flags), which is sufficient. It could mention that the output is a list or clarify the meaning of 'static/active flags', but overall it provides a solid overview.

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

    Parameters3/5

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

    Schema coverage is 0%, so description must compensate. It explains 'target' as 'Device name from config', adding minimal context beyond the schema. This is adequate but not rich; the parameter's purpose is clear but could specify format or required privileges.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description explicitly states it is a READ operation on the MAC address table, listing MAC, interface, VLAN, and static/active flags. This clearly distinguishes it from sibling tools like get_arp_table (ARP table) and get_vlans (VLAN info).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. It only states the parameter, leaving the agent 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.

  • Behavior3/5

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

    The [READ] tag indicates read-only behavior, and description lists returned fields. However, with no annotations, it lacks details on authentication, rate limits, or side effects. Adequate for a simple read tool 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.

    Conciseness5/5

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

    Extremely concise: one line for purpose and one for parameter. Front-loaded with [READ] tag. No unnecessary words, every part adds value.

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

    Completeness4/5

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

    Without output schema, description lists returned fields, which is sufficient for a simple read tool. Missing behavioral details but given its simplicity, it's mostly complete.

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

    Parameters4/5

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

    The description explains the single parameter 'target' as 'Device name from config', adding meaning beyond the schema (which only defines type and default). Schema coverage is 0%, so description compensates well.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states it reads network instances (VRFs) and lists returned fields (name, type, state, member interfaces). It distinguishes from siblings by focusing on VRF-specific data, but could be more explicit about what 'member interfaces' means.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like get_interfaces or get_bgp_neighbors. Only specifies the 'target' parameter as device name but no context on prerequisites or scenarios.

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

  • Behavior3/5

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

    The description explicitly marks the tool as a read operation via '[READ]', disclosing its non-destructive nature. However, it does not mention any performance implications, permission requirements, or other behavioral details beyond that. Without annotations, 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.

    Conciseness5/5

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

    The description is extremely concise: two sentences that front-load the purpose and list the data categories, followed by a parameter explanation. Every sentence earns its place with zero waste.

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

    Completeness5/5

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

    For a simple tool with one optional parameter and no output schema, the description fully covers what data is returned (fans, temp, power, CPU, memory). No missing critical context given the tool's simplicity.

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

    Parameters4/5

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

    The input schema has 0% description coverage but the description adds meaning by explaining the 'target' parameter as a device name from config with a default behavior (omit for default). This compensates well for the schema's lack of documentation.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it is a READ operation for hardware environment data including fans, temperature, power, CPU, and memory. This distinguishes it from many sibling tools that focus on networking or configuration, though a sibling 'device_health' may overlap.

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

    Usage Guidelines2/5

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

    The description provides guidance on the 'target' parameter but offers no information on when to use this tool versus alternatives like 'device_health' or other monitoring tools. No when-not-to-use or context for selection is given.

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

  • Behavior3/5

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

    No annotations provided, so description carries full burden. It discloses the read-only nature with '[READ]' and explicitly states that password hashes are not returned. However, it does not mention other behavioral aspects like authentication requirements or scope of users returned.

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

    Conciseness5/5

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

    Two sentences: first defines purpose, second defines the parameter. No unnecessary words, front-loaded with key constraints (read-only, no password hashes).

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

    Completeness4/5

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

    For a simple 1-parameter read tool, the description is mostly adequate. It explains purpose and parameter meaning. Minor gaps: no mention of return format or pagination, but these are less critical for a simple tool.

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

    Parameters3/5

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

    Schema has 0% description coverage for the target parameter. The description adds 'Device name from config', which clarifies what the parameter represents. However, it does not specify format, default behavior, or if null means all devices.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it reads local users and privilege levels, explicitly notes that password hashes are not returned, and distinguishes from sibling tools like get_bgp_neighbors or get_interfaces which cover different network data.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives, no prerequisites, and no context about filtering (e.g., what happens when target is null or omitted). The description is minimal.

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

  • Behavior3/5

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

    The '[READ]' prefix indicates idempotency and no side effects, but no annotations are provided to supplement. The description does not disclose details such as error behavior, pagination, or what happens when target is null. For a read operation, this is minimally acceptable but lacks depth.

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

    Conciseness5/5

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

    Two compact sentences with zero filler. The output fields are listed concisely, and the parameter is explained in a clear bullet format. Every word serves a purpose.

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

    Completeness3/5

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

    For a simple tool with one optional parameter and no output schema, the description covers the core functionality and parameter meaning. However, it omits details like default behavior when target is null and potential error cases, making it slightly incomplete for an agent to use autonomously.

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

    Parameters4/5

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

    The schema has 0% description coverage, but the description adds 'Device name from config' for the target parameter, providing context beyond the raw schema types. This compensates well for the lack of schema descriptions, though it could clarify that target is optional and its default behavior.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description clearly states the tool reads ARP table entries and lists the returned fields (interface, IP, MAC, age). The verb 'get' combined with 'ARP table' and the read indicator '[READ]' makes the purpose unambiguous. Among siblings like get_mac_address_table and get_interfaces, it is distinct.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives (e.g., get_mac_address_table for MAC table). The description only lists the parameter and output fields, leaving the agent to infer the tool's role without comparative context.

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

  • Behavior3/5

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

    No annotations provided, so description carries full burden. It declares '[READ]' indicating read-only, but does not disclose other behavioral traits like authorization needs, rate limits, or error conditions. Sufficient to understand it's safe, but lacks depth.

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

    Conciseness5/5

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

    Two concise sentences with no extraneous text. The first sentence captures the purpose, the second describes the parameter. Efficient and well-structured.

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

    Completeness3/5

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

    Given one optional parameter and no output schema, the description is brief but covers the basics. However, it does not specify what 'levels' means exactly, whether it applies to all interfaces or a specific one, or what the output format is. Could be more complete for an agent.

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

    Parameters4/5

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

    Schema has 0% description coverage, but the description explains the only parameter 'target' as 'Device name from config'. This adds essential meaning beyond the schema type, though it could be more detailed.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'get' and the resource 'optical transceiver levels per interface/channel', specifying 'rx/tx power, bias'. This distinguishes it from sibling tools like get_bgp_neighbors or get_interfaces_counters.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives, no prerequisites, and no context about typical scenarios. The description only states what it does without any usage context.

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

  • Behavior2/5

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

    No annotations exist, so description carries full burden. It uses '[READ]' to imply non-destructive behavior, but lacks details on permissions, error conditions, or edge cases.

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

    Conciseness5/5

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

    Extremely concise: one line for purpose, then a formatted parameter list. No superfluous text.

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

    Completeness3/5

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

    Covers parameters but lacks any hint about output format or return value. Without an output schema, some guidance on what is returned (e.g., best route, next-hop) would improve completeness.

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

    Parameters4/5

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

    Schema coverage is 0%, but the description adds meaningful explanations for all three parameters (destination prefix, optional protocol filter, target device), compensating 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.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    [READ] signals read-only, 'Routing-table lookup for a destination prefix' specifies verb and resource clearly. It is distinct from siblings like get_bgp_neighbors or get_arp_table.

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

    Usage Guidelines3/5

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

    The description states the tool's purpose and parameters but does not explicitly guide when to use it versus alternatives or provide when-not-to-use conditions.

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

  • Behavior2/5

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

    No annotations provided, so description must carry burden. Only mentions '[READ]' hint of safe behavior but no details on permissions, error conditions, or what happens when target is null.

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

    Conciseness5/5

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

    Extremely concise: two lines with front-loaded purpose and parameter explanation, zero wasted words.

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

    Completeness4/5

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

    For a simple one-parameter tool, description covers purpose and parameter adequately, but lacks details on return format or behavior with null target.

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

    Parameters4/5

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

    Schema coverage is 0% but description explains 'target' as 'Device name from config', adding meaningful context beyond the schema's type-only definition.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Description starts with '[READ] SNMP metadata: chassis id, contact, location' which clearly states the verb and specific resource, and distinguishes from sibling tools like BGP or LLDP.

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

    Usage Guidelines3/5

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

    Description does not provide explicit when-to-use or when-not-to-use guidance, though the purpose is clear. No alternatives mentioned despite broad sibling set.

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

  • Behavior4/5

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

    The '[READ]' prefix explicitly indicates a read-only operation, and the description specifies the fields returned. For a simple tool, this is good transparency. However, no annotations are present, so the description carries full burden, and it lacks discussion of potential exceptions or authorization needs.

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

    Conciseness5/5

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

    The description is extremely concise: two sentences that front-load the purpose and parameter explanation. Every sentence adds value with no unnecessary words.

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

    Completeness4/5

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

    For a tool with one optional parameter and no output schema, the description covers the core purpose and parameter semantics. It outlines the returned fields, but missing guidance on usage contexts and return format limits completeness slightly.

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

    Parameters3/5

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

    The input schema has 0% description coverage, but the description explains the sole parameter 'target' as 'Device name from config', adding meaning. However, it does not mention whether it is required (schema says optional) or provide format constraints, so compensation is adequate but minimal.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb ('READ'), resource ('BGP neighbors'), and what is returned ('peer, remote AS, up state, prefix counts'). The prefix '[READ]' and scope 'per VRF' differentiate it from sibling tools like get_bgp_neighbors_detail.

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

    Usage Guidelines3/5

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

    The description implies use for summary BGP neighbor data per VRF but does not explicitly guide when to use this tool versus alternatives like get_bgp_neighbors_detail or bgp_neighbor_rca. No when-not or exclusion criteria are provided.

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

  • Behavior4/5

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

    With no annotations, the description carries the full burden. It explicitly marks the tool as [READ], states it pulls two data sources (get_interfaces and get_interfaces_counters), and reports worst-first findings. It does not mention side effects, but the nature of the tool makes them unlikely.

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

    Conciseness4/5

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

    The description is concise and well-structured, with a clear header line followed by details and an Args section. However, the Args section could be considered slightly verbose for a single parameter but is still efficient.

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

    Completeness3/5

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

    Given no output schema, the description partially compensates by describing the report format (worst-first, with counts, cause, and action). However, it lacks details like whether the output is a list or a single object, and it does not mention pagination or error handling.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description must fully explain parameters. It does so by describing 'target' as a device name and noting the default behavior (omit for default device). This adds significant meaning beyond the bare schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb 'Flag' and the resource 'interfaces' with specific conditions (admin-up/oper-down, erroring, discarding, flapping). It distinguishes from siblings like get_interfaces and get_interfaces_counters by indicating it performs root cause analysis, not raw retrieval.

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

    Usage Guidelines3/5

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

    The description implies usage for diagnosing interface health issues but does not explicitly state when to use it versus alternatives like get_interfaces or device_health. No when-not-to-use guidance is provided.

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

  • Behavior4/5

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

    With no annotations, the description carries full burden. It states returns ('healthy' flag and 'issues' list) and behavior (resilient to missing environment data, which becomes a note). It could add more about potential side-effects or performance, but 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.

    Conciseness5/5

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

    The description is concise with three short paragraphs, front-loading the purpose. Every sentence adds value, and there is no redundancy or fluff.

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

    Completeness4/5

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

    For a simple read-only health summary tool with no output schema, the description explains the return structure and parameter behavior. It could mention what 'facts' includes, but overall it is complete enough for agent usage.

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

    Parameters4/5

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

    The description explains the single parameter 'target' with 'Device name from config; omit to use the default device', adding meaning beyond the schema. Schema coverage is 0%, so description compensates well.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with '[READ] Aggregated health: facts + interface up/down counts + environment', clearly stating the verb (READ) and resource (aggregated health) and its components. It distinguishes from sibling tools like get_interfaces_counters and get_environment by being an aggregation.

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

    Usage Guidelines3/5

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

    The description implies usage for a summary of device health and mentions resilience to missing environment data, but does not explicitly state when not to use it or list alternatives. Usage is implied rather than explicitly guided.

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

  • Behavior3/5

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

    No annotations provided, so the description must cover behavioral traits. The '[READ]' prefix indicates a read-only operation, which is helpful. However, it does not disclose what fields are returned, error handling (e.g., device not found), or any side effects, leaving gaps for the agent.

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

    Conciseness5/5

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

    The description is extremely concise with two clear sentences. The first sentence states the action and result, and the second explains the parameter with a useful cross-reference. No wasted words.

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

    Completeness4/5

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

    Given the tool's simplicity (single required parameter, no output schema), the description adequately covers its purpose and parameter. It could mention the return format or error behavior, but as a single-device lookup, it is sufficiently complete for most agents.

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

    Parameters4/5

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

    With 0% schema description coverage, the description adds meaningful guidance: the parameter must be an exact device name, not partial. It also references the list tool for discovery, which enhances understanding beyond the schema's bare type definition.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool returns a single NetBox device by exact name, using the verb 'Return' and specifying the resource. It distinguishes from the sibling tool 'netbox_list_devices' by noting the exact name requirement and cross-referencing the list tool.

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

    Usage Guidelines4/5

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

    The description provides clear context: use when you have an exact device name. It references netbox_list_devices for finding names, implying a usage flow. However, it does not explicitly exclude alternative use cases or mention 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.

  • Behavior4/5

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

    Exhaustively documents redaction scope (password hashes, SNMP keys, etc.), pattern-based detection, and the 'redaction' block in output. Discloses that it reduces rather than eliminates exposure, meeting transparency needs without annotations.

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

    Conciseness4/5

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

    Starts with a summary tag and structured explanation. Some redundancy exists (repeats redaction details), but remains readable and well-organized.

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

    Completeness4/5

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

    Covers output content (redaction block, untouched lines), edge cases (PKI keys), and trade-offs of include_secrets. Lacks mention of error states or rate limits, but sufficient for a simple read tool.

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

    Parameters4/5

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

    With 0% schema coverage, the description fully explains both parameters: include_secrets warns about storing secrets, and target specifies the device. Adds clear usage context beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description opens with '[READ] Return the device running config' and details the redaction behavior. It clearly distinguishes from siblings like config_diff and config_replace by focusing on retrieval.

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

    Usage Guidelines4/5

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

    Provides explicit guidance to use the CLI's '-o' flag instead of include_secrets for human readability. Also notes the redaction limitation regarding multi-line PKI keys, implying when not to rely on it fully.

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

  • Behavior4/5

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

    With no annotations, the description fully discloses that the tool is a write operation with medium risk, that the token can only be used once, and the dry_run behavior. It also mentions the governance of the inverse tool. This is transparent for the agent.

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

    Conciseness4/5

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

    The description is concise with a clear front-loaded summary, followed by relevant behavioral notes and parameter explanations. No fluff, but could be slightly more structured.

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

    Completeness4/5

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

    Given no output schema and 3 parameters, the description covers behavior, parameters, and usage. It lacks explicit return value detail but is sufficient for an agent to select and invoke correctly.

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

    Parameters4/5

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

    Schema coverage is 0%, but the description explains each parameter: undo_id is from undo_list or _undo_id, dry_run previews, target passes through. This adds meaningful context beyond schema titles.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it 'Apply a recorded undo by dispatching its inverse tool.' This specifies the action (apply) and the resource (recorded undo), and it is distinct from siblings like undo_list which lists undos.

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

    Usage Guidelines4/5

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

    The description provides guidance on when to use dry_run, notes that a token can only be applied once, and explains that the inverse runs through its own governed tool. However, it does not explicitly compare to other tools or say 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.

  • Behavior4/5

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

    No annotations provided, so description must disclose behavior. It explicitly marks as [READ], details the process of pulling data and reporting findings, and mentions the target parameter. Does not discuss cost or permissions, but sufficient for the tool's simple read-only nature.

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

    Conciseness5/5

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

    Description is concise and well-structured: a [READ] tag, one-line summary, explanatory paragraph, and Args section. Every sentence adds value with no redundancy.

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

    Completeness5/5

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

    For a simple tool with one optional parameter and no output schema, the description covers functionality (flagging issues, worst-first reporting, causes/actions) and parameter usage completely.

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

    Parameters5/5

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

    Schema coverage is 0%, but description compensates with 'target: Device name from config; omit to use the default device.' This adds clear meaning beyond the schema's type and default, explaining how to use the parameter.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    Clearly states it flags BGP neighbors that are down, shut, reset, or route-less, distinguishing from sibling tools like get_bgp_neighbors which only fetch data. The verb 'flag' and resource 'BGP neighbors' are specific.

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

    Usage Guidelines3/5

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

    Describes what it does (pulls get_bgp_neighbors and reports findings) but does not explicitly state when to use it versus alternatives like get_bgp_neighbors_detail or interface_health_rca. No 'when not to use' guidance is given.

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

  • Behavior4/5

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

    No annotations, but description discloses truncation behavior and return structure, advising to increase limit if truncated. Covers key behavioral traits.

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

    Conciseness5/5

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

    Concise, with front-loaded purpose and structured Args section. Every sentence adds value without redundancy.

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

    Completeness5/5

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

    Completeness is high: return format, truncation handling, parameter details, and usage advice provided. No output schema, but description compensates fully.

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

    Parameters4/5

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

    Schema coverage is 0%, so description adds value: 'name' is a contains match, 'limit' has default 50. Provides clear meaning beyond schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with '[READ] List NetBox devices' and lists key fields, making the verb and resource clear. It distinguishes from siblings like 'netbox_get_device'.

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

    Usage Guidelines4/5

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

    States 'Use this to confirm intended state before pushing config to a device', providing a clear scenario. Does not explicitly exclude alternatives but offers context.

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

  • Behavior5/5

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

    With no annotations, the description carries full burden. It discloses it is a dry-run, nothing is committed, diff is credential-redacted with a redaction block, and include_secrets provides verbatim output.

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

    Conciseness4/5

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

    The description is well-structured with a bold summary, behavioral explanation, and parameter list. It is thorough but slightly verbose; could be tightened slightly.

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

    Completeness4/5

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

    Given no annotations and no output schema, the description covers behavioral traits and all parameters adequately. It explains the redaction block but does not detail the diff format or error handling, yet is sufficient for a preview tool.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description provides detailed explanations for all four parameters: config_text (merge vs replace), replace (toggle), include_secrets (verbatim), and target (device name), adding significant meaning beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly labels it as a [READ] DRY-RUN operation, states it stages a candidate, returns the diff, and discards it with 'Nothing is committed.' This distinguishes it from sibling tools like config_merge and config_replace.

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

    Usage Guidelines4/5

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

    The description explains it is the 'dry-run primitive for previewing a change' and contrasts redaction with config_backup. It implies use before committing but does not explicitly list when not to use or compare with all siblings.

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

  • Behavior4/5

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

    With no annotations, the description adequately discloses that this is a WRITE operation that confirms and cancels the revert timer. It warns about verifying device health first and explains the dry_run behavior. However, it lacks details on error conditions or what happens if the device is not reachable, which would improve transparency.

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

    Conciseness5/5

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

    The description is concise and well-structured: a one-line summary, then workflow context, then usage guidance, then parameter explanations. Every sentence adds value and is front-loaded for quick comprehension.

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

    Completeness4/5

    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 fairly complete. It explains the workflow, safe alternative, and both parameters. Lacks return value format or error handling details, but still sufficient for an agent to use correctly.

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

    Parameters4/5

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

    The input schema has 2 parameters (target and dry_run) with 0% schema description coverage, so the description must add meaning. It does: 'dry_run=True reads whether a pending commit-confirm is actually pending' and 'target: Device name from config.' This clarifies the parameters beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states 'Confirm a pending commit-confirm change, cancelling its revert timer.' It identifies the specific verb and resource, and distinguishes this tool from sibling tools like config_merge or config_rollback by explaining it is the second half of the commit-confirm workflow.

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

    Usage Guidelines5/5

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

    The description explicitly says 'Run it only AFTER verifying the device is still reachable and healthy — doing nothing is the safe alternative.' It also explains the dry_run parameter for checking if a commit-confirm is pending, providing clear when-to-use and when-not-to-use guidance.

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

  • Behavior5/5

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

    With no annotations provided, the description fully discloses behavioral traits: it explains that the truncated flag is measured by fetching one extra row, describes the effectVerified field and its implications for probable vs. confirmed state, and notes that the target parameter is unused for CLI uniformity. This goes beyond minimal requirements.

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

    Conciseness4/5

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

    The description is front-loaded with the purpose and well-structured. It covers necessary details without excessive verbosity. Some minor repetition could be trimmed, but it remains efficient and clear.

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

    Completeness5/5

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

    Given the tool's complexity (undo tokens, effectVerified, truncated behavior, parameter quirks), the description is fully complete. It details the return structure, usage with undo_apply, and caveats. No output schema, but the description compensates adequately.

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description must compensate. It clearly explains limit's default and cap (50, 500), and target's purpose (unused, for uniformity). This adds significant value beyond the schema, although the limit explanation could mention that it's optional.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with "[READ] List recorded, not-yet-applied undo tokens (most recent first)", clearly stating it is a read operation that lists undo tokens. This distinguishes it from the sibling tool undo_apply, which applies them. The verb 'list' and resource 'undo tokens' are 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.

    Usage Guidelines4/5

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

    The description explains when to use this tool: to see available undo tokens before applying them with undo_apply. It also provides guidance on the truncated flag, advising to re-run with higher limit when true. It does not explicitly state when not to use it, but the context is clear enough for an agent to decide.

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

  • Behavior5/5

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

    With no annotations provided, the description fully bears the burden of behavioral disclosure. It states the tool is a write operation (destructive), irreversible, platform-dependent, and explains the dry_run mode in detail, including that it opens a session, verifies reachability, and reports a digest.

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

    Conciseness5/5

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

    The description is concise, front-loaded with the core purpose, and structured with sections (warning, dry_run behavior). Every sentence adds value without fluff.

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

    Completeness4/5

    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 2 parameters, the description covers the essential behavior, dry_run nuance, and platform dependency. It does not detail the return format on actual rollback, but the explanation of dry_run's output is sufficient for an agent to infer typical tool behavior.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description adds meaning to both parameters: dry_run is explained with its behavior and effect, and target is described as 'Device name from config.' This fully compensates for the lack of schema descriptions.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool reverts the last committed change via NAPALM rollback(), specifies it is a write operation, and adds 'No undo' for irreversibility. It distinguishes from sibling tools like config_backup, config_diff, config_merge, config_replace, and confirm_commit.

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

    Usage Guidelines4/5

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

    The description explains that device support varies and rollback depth is platform-dependent, and details dry_run behavior. However, it does not explicitly state when to use this tool versus alternatives, though the context of sibling tools makes it implicit.

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

  • Behavior4/5

    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 tool is read-only, lists the returned fields, and mentions the interface name list. It does not mention side effects or permissions, but for a read tool this is sufficient. Slightly generic on whether all fields are always returned, but overall good.

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

    Conciseness5/5

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

    The description is concise: two short paragraphs, front-loaded with '[READ]' and key facts. Every sentence adds value, no wasted words.

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

    Completeness5/5

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

    With no output schema, the description adequately explains return values (hostname, vendor, model, etc.) and mentions the interface name list. It also references a sibling tool for more detail. The single optional parameter is fully covered.

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

    Parameters4/5

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

    The description adds meaning to the 'target' parameter beyond the schema: 'Device name from config; omit to use the default device.' This compensates for the 0% schema coverage, though it could also explain the format or constraints of the device name.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states this is a READ operation for core device facts, listing specific fields (hostname, vendor, model, OS version, serial, uptime) and distinguishing from sibling 'get_interfaces' by noting it also returns interface names. The verb+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.

    Usage Guidelines5/5

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

    Explicitly tells when to use an alternative: 'Use get_interfaces for per-interface state/speed.' Also explains when to omit the target parameter. This provides clear usage context.

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

  • Behavior4/5

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

    With no annotations provided, the description carries full burden. It declares read-only intent with '[READ]', describes the return format (including 'truncated' bool), and explains truncation behavior. This is thorough, though it doesn't cover authentication or error scenarios.

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

    Conciseness5/5

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

    The description is well-structured with a summary line, usage context, return format, caveat, and parameter explanations. Every sentence adds value without redundancy.

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

    Completeness4/5

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

    For a simple list tool with no output schema, the description covers the return format and truncation behavior. It could mention sorting or pagination beyond limit, but overall it's sufficiently complete for its complexity.

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

    Parameters5/5

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

    Schema coverage is 0%, so the description must compensate. It clearly explains both parameters: device as exact name with a reference to netbox_list_devices, and limit with default value and purpose. This adds significant meaning beyond the minimal schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the verb (List), resource (NetBox device's interfaces), and key fields (name, type, enabled, description). It distinguishes itself from the sibling get_interfaces tool by noting this is the source-of-truth inventory for drift detection.

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

    Usage Guidelines5/5

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

    It explicitly instructs to compare against get_interfaces to spot drift, warns against reporting drift from a truncated list, and suggests re-running with a higher limit. It also specifies that the device parameter requires an exact name from netbox_list_devices.

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

  • Behavior5/5

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

    With no annotations, the description fully carries the burden of disclosing behaviors. It explains the revert timer, credential redaction (no opt-out), dry_run behavior (same refusal as real commit), non-return of full config for security, and the possibility of permanent commits with a warning. All important traits are covered.

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

    Conciseness4/5

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

    The description is detailed and meticulously structured, but every sentence delivers value. It opens with the primary purpose, then details behavior, workflow, and parameters. While not extremely concise, it earns its length through density of useful information.

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

    Completeness5/5

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

    Given the tool's complexity and lack of output schema, the description is comprehensive. It covers return values (diff, backup digest), security warnings, proper workflow (dry_run -> verify -> confirm_commit), and output fields (commit.safetyNet, commit.warning). No critical information appears missing.

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

    Parameters5/5

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

    Although schema description coverage is 0%, the description adds rich semantic meaning to each parameter: config_text (snippet), revert_in (timer behavior, default, zero disables), dry_run (preview mode), and target (device name). It explains effects and defaults beyond the schema's basic types.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool's action: 'Merge a config snippet and commit under a device-side revert timer.' It specifies the verb (merge) and resource (config on device), and distinguishes itself from siblings by highlighting the revert timer mechanism, a unique feature not present in other config tools.

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

    Usage Guidelines5/5

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

    The description explicitly advises when to use the tool: after verifying reachability and before calling confirm_commit. It also provides guidance on when not to use it (e.g., if literal secrets are needed, use config_diff first) and explains the dry_run feature as a safe preview.

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

  • Behavior5/5

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

    With no annotations, the description fully discloses: high risk, revert timer with confirm_commit requirement, permanent change if no timer, credential-redacted diff (no opt-out), backup digest, and undo.db storage. No behavioral surprises.

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

    Conciseness4/5

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

    The description is well-structured with front-loaded key info and separate sections for warnings, return values, and parameter details. Every sentence adds value, though slightly verbose with repeated warnings. Still efficient for the complexity.

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

    Completeness5/5

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

    No output schema, but the description specifies return values (diff, backup digest) and mentions undo.db. Covers preconditions, side effects, and alternatives (config_diff, config_merge). Completely prepares the agent to use the tool correctly.

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

    Parameters5/5

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

    Schema description coverage is 0%, but the description explains all four parameters: config_text (full replacement), revert_in (timer, default 300, 0 disables), dry_run (preview mode), and target (device name). Provides sufficient context beyond schema titles.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description starts with '[WRITE] Replace the full config and commit under a revert timer. HIGH RISK.' which clearly states the verb (replace), resource (full config), and key behavior. It distinguishes from sibling config_merge by referencing the same commit-confirm contract while implying this is a full replacement.

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

    Usage Guidelines5/5

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

    Explicitly mentions the commit-confirm contract, instructs to verify reachability and check commit.safetyNet for permanent changes. Guides on when to use dry_run and when to use config_diff with include_secrets=True for unredacted diffs. Provides clear when-to-use and when-not-to-use guidance.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

Network-AIops MCP server

Copy to your README.md:

Score Badge

Network-AIops MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AIops-tools/Network-AIops'

If you have feedback or need assistance with the MCP directory API, please join our Discord server