Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation4/5

    Tools are largely distinct, but snmp_walk and snmp_bulk_walk share the same purpose (walking an OID subtree) differing only in method, which could cause confusion. Additionally, snmp_table is a specialized walk. However, descriptions clarify the differences.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case (e.g., device_detect, snmp_get, interfaces_list), making it easy for agents to predict and select the correct tool.

    Tool Count5/5

    With 9 tools, the server covers core SNMP operations (get, walk, bulk walk, table) and common MIB groups (system, interfaces, host resources, printer). The count is well-balanced for its scope.

    Completeness5/5

    The tool set provides both low-level SNMP access and high-level summaries for common device types. It includes detection (device_detect), system info, interfaces, resources, and printer status. The only notable gap is lack of SNMP SET, but that aligns with the server's focus on read-only monitoring.

  • Average 3.7/5 across 9 of 9 tools scored. Lowest: 2.9/5.

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

    • No community issues in the last 6 months
    • 11 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is failing
  • This repository is licensed under Apache 2.0.

  • 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.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • 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?

    No annotations exist, so description carries full burden. It discloses supported brands and sentinel value handling but omits critical behaviors: required SNMP version/community, read-only nature, error handling (unreachable host), or potential side effects.

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

    Conciseness4/5

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

    Description is concise with three sentences, front-loading main purpose and supported brands. No redundant information, though could benefit from structured details about parameters.

    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 reported components (supplies, trays, bins, alerts) and sentinel value handling, which aids understanding. However, lacks behavioral context (e.g., authentication, timeout) and does not describe return format despite missing output schema.

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

    Parameters1/5

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

    Schema has one required parameter 'host' with no description coverage (0%). The tool description does not explain the parameter's format (IP, hostname, SNMP community) or any constraints, leaving agents to infer meaning solely from the schema type.

    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 reports printer status via PRINTER-MIB (RFC 3805) covering supplies, trays, bins, alerts, and supports multiple brands. It includes handling of sentinel values, making the purpose specific and distinct from sibling tools like system_info or interfaces_list.

    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 over alternatives (e.g., snmp_walk, snmp_get) or prerequisites like SNMP configuration. The description only lists supported printer brands but does not differentiate use cases.

    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 disclose behavioral traits. It states the tool fetches information (a read operation) but does not confirm idempotence, safety, or lack of side effects. Given the SNMP context, it is likely a read-only fetch, but this is not explicitly stated. The description lacks clarity on response size or potential errors.

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

    Conciseness4/5

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

    The description is a single, well-structured sentence that front-loads the main action and lists the returned OIDs. It is efficient, though it could be slightly improved by separating the list of OIDs or adding a note about parameter requirements.

    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 tool with one parameter and no output schema, the description provides a complete list of retrieved OIDs, which is the core information needed. However, it lacks details about error conditions, response format, or whether the tool supports authentication options, which would be helpful for the agent.

    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%, and the description does not add meaning to the 'host' parameter beyond the schema's type declaration. It does not explain formatting, examples, or constraints (e.g., IP vs hostname). The parameter remains ambiguous.

    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 explicitly identifies the specific MIB group (SNMPv2-MIB::system) and lists the OIDs retrieved, making it clear what information the tool returns. The name 'system_info' is generic but the description adds precise context, and it is clearly distinct from sibling tools like interfaces_list or snmp_walk.

    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 such as snmp_get or snmp_walk. There is no mention of prerequisites, conditions, or exclusions, leaving the agent to infer the use case solely from the name and listed OIDs.

    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?

    Without annotations, the description carries the full burden. It discloses the return format (dict with value and type) but omits other behavioral traits like error handling, timeout behavior, or limits on OID count. 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?

    Two concise sentences: the first states the action and input formats, the second describes the output. No redundant information, every part earns its place.

    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 2-parameter tool with no output schema, the description covers input format and output structure. It lacks details on error cases, OID limits, or default behavior, but is fairly complete for its complexity.

    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, so the description adds significant value. It explains that host is the target and oids_in is a list of OIDs, clarifying acceptable formats (numeric and symbolic). This compensates well for the schema's lack of descriptions, though it could detail the host format.

    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 fetches one or more OIDs via a single SNMP GET-Request, specifying acceptable formats (numeric and symbolic). This differentiates from sibling tools like snmp_walk but doesn't explicitly contrast with them, keeping it just short of a 5.

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

    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 snmp_get versus alternative sibling tools (e.g., snmp_walk, snmp_bulk_walk). The description does not mention prerequisites or contexts where this tool is preferred, leaving the agent to infer usage.

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

  • Behavior4/5

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

    With no annotations, the description effectively communicates behavioral traits: merging of ifTable and ifXTable, handling of high-capacity counters, and automatic ifSpeed fallback. It fails to disclose if the tool has side effects or requires specific permissions, but for a read-only list operation, this is adequate.

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

    Conciseness5/5

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

    The description is concise and well-structured, starting with the core purpose and then adding technical details. No redundant information is present, and every sentence adds value.

    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?

    While the description covers the tool's operation and key behaviors, it lacks information about the output format (since no output schema is provided) and does not explain the 'host' parameter. For a simple one-parameter tool, these gaps are noticeable but not critical.

    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?

    The input schema has 0% description coverage and the single 'host' parameter has no explanation. The description does not clarify whether 'host' expects an IP address, hostname, or includes SNMP community details, leaving the agent to infer from context.

    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 lists network interfaces via IF-MIB (RFC 2863), providing a specific verb and resource. It also explains the merging of tables, which distinguishes it from sibling tools like snmp_table or snmp_walk that may not have this specific logic.

    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 mention when to use this tool versus alternatives. There is no guidance on prerequisites, such as SNMP credentials, or situations where other tools like snmp_get or device_detect might be more appropriate.

    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 discloses that the tool raises an 'unsupported' error for agents lacking the MIB, which is critical behavioral insight. It does not detail side effects or authentication, but for a read-only query, the disclosure is adequate.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence that efficiently conveys the tool's purpose and a key behavioral note. No extraneous words; every part earns its place.

    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 single parameter and lack of output schema, the description sufficiently outlines the returned data categories and an error condition. It could be slightly improved by noting return format, but overall it provides necessary context.

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

    Parameters1/5

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

    The schema has 0% description coverage and only a single 'host' parameter. The description does not elaborate on the parameter's meaning, format, or constraints, leaving the agent with no additional guidance beyond the schema's bare type.

    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 explicitly states it provides a summary of HOST-RESOURCES-MIB data, listing specific metrics (CPU, memory, uptime, process count, storage table). It distinguishes itself from sibling tools like system_info by referencing a specific MIB and detailing the error case for unsupported agents.

    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 mentions a failure mode for uncooperative devices (bare switches), giving some usage context. However, it does not explicitly state when to use this tool over siblings like system_info or interfaces_list, leaving the agent to infer applicability.

    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?

    Despite no annotations, the description details the exact 5 GETs performed (sysObjectID, sysDescr, etc.) and explains the output (vendor hint, supported_mibs). This provides sufficient behavioral context for safe invocation.

    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 two sentences, each earning its place: first states purpose and action, second provides usage guidance. No redundant information.

    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 low complexity (1 param, no output schema), the description adequately explains the tool's function and behavior but fails to document the single parameter 'host'. This gap reduces completeness.

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

    Parameters1/5

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

    The schema has 1 parameter 'host' with 0% description coverage, and the tool description does not explain what 'host' represents (e.g., IP address, hostname). No additional meaning is provided beyond the field 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?

    Description clearly states the tool probes which standard MIBs a device implements by issuing 5 specific GETs. It explicitly distinguishes itself from sibling tools as a lightweight smoke test before heavier tools.

    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?

    Explicitly recommends use as a smoke test before heavier tools, providing clear context for when to use it. However, it does not include when-not-to-use scenarios or explicit alternatives beyond the sibling list.

    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 exist, so description carries full burden. It describes the GETNEXT mechanism, termination criteria (endOfMibView, leaving subtree), and return format (list of objects). It lacks details on side effects or performance but is sufficient for a read-only tool.

    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 two sentences long, front-loaded with the action, and contains no redundant information. Every word 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?

    Given low complexity (2 simple params) and no output schema, the description covers the main behavior and return structure. Missing details on errors or prerequisites but still adequate for a straightforward 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% coverage, so description must compensate. It adds meaning to root_oid as the start of the subtree and implies host is the target. However, it does not specify format or constraints (e.g., host string type). Baseline 3 given minimal extra context.

    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 'Walk an OID subtree via GETNEXT chain', specifying the verb and resource. It also mentions termination conditions, which distinguishes it from sibling tools like snmp_get (single OID) and snmp_bulk_walk (different protocol).

    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 walking a subtree but does not explicitly contrast with siblings like snmp_bulk_walk or snmp_get. No when-not or alternative guidance is provided.

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

  • Behavior4/5

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

    Without annotations, the description carries the full burden. It discloses column-name mapping best-effort behavior and fallback to numeric OIDs, which is a key behavioral trait. However, it lacks details on permissions, rate limits, or idempotency.

    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 well-structured sentences. The first conveys the core purpose and output format, the second adds a caveat. No redundant information.

    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 has no output schema and two simple parameters, the description explains the return structure and a key limitation (column mapping). It covers most needed context for invocation, though error behavior or SNMP version requirements are missing.

    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?

    With 0% schema description coverage, the description does not explain the 'host' or 'table_oid' parameters beyond their names. No additional meaning or constraints are provided, leaving the agent to infer from context.

    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 action 'Walk and tabularize an SNMP table' and specifies the output format. It distinguishes from sibling tools like 'snmp_walk' which returns flat data, by focusing on tabular output.

    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 implies usage for SNMP table data via 'tabularize an SNMP table', but does not explicitly state when to use this tool vs alternatives (e.g., snmp_get, snmp_walk). No exclusions are 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 are provided, so the description carries the full burden. It discloses the GETBULK mechanism, fallback to GETNEXT with warning on v1, and default max_repetitions. It does not mention side effects, rate limits, or authentication needs, but for a read-only SNMP walk, this is reasonably transparent.

    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, no wasted words. First sentence states purpose and mechanism. Second sentence adds performance comparison, fallback, and default. Highly efficient.

    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 3-param tool with no output schema and no annotations, the description covers purpose, usage conditions, and a key parameter. Missing details on return format, error handling, or credentials, but given the simplicity and typical SNMP context, it is fairly 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?

    Schema description coverage is 0%, so the description must add meaning. It explains max_repetitions (default 25) but does not describe host or root_oid. Host and root_oid are self-explanatory to some extent, but the lack of schema description combined with only one param explained results in moderate added value.

    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 walks an OID subtree via GETBULK for SNMPv2c+. It distinguishes from sibling snmp_walk by noting it is faster for large tables and provides a fallback mechanism, making the purpose specific and well-defined.

    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 gives guidance on when to use (large tables, faster than snmp_walk) and when fallback occurs (v1 hosts with warning). It implies snmp_walk as an alternative but does not explicitly list when not to use or cover all sibling tools. Clear context but missing exclusions.

    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

snmp-mcp MCP server

Copy to your README.md:

Score Badge

snmp-mcp 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/acato/snmp-mcp'

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