Skip to main content
Glama

Bogon Check

bogon_check

Identify if an IP address or prefix is a non-routable bogon using IANA reserved ranges, revealing misconfigurations or hijack attempts.

Instructions

Check if an IP address or prefix is a bogon (reserved/non-routable).

Tests against all IANA reserved ranges including RFC 1918 (private), RFC 6598 (CGNAT), RFC 5737 (documentation), multicast, loopback, link-local, and other special-use prefixes.

A bogon appearing in the global routing table usually indicates a misconfiguration or a hijack attempt.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesIP address or prefix to check (e.g. '192.168.1.0/24', '10.0.0.1')

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
detailYes
matchesYesMatching reserved ranges with RFC references
is_bogonYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/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 usefully discloses the comprehensiveness claim ('all IANA reserved ranges...') and lists the specific special-use categories checked. But it does not disclose behavior like IPv4/IPv6 coverage, whether the check is live or static, or what the output looks like — gap that an output schema only partially fills.

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?

Three sentences with zero filler: purpose, detailed scope, and real-world significance. The core action is front-loaded in the first sentence, and each subsequent sentence adds distinct 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?

For a single-parameter tool with an output schema present, the description covers the essential ground: what counts as a bogon, which ranges are included, and why the result matters. It is only slightly incomplete in not explicitly addressing edge cases like IPv6 input or invalid formats, which the schema examples partially mitigate.

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 100% and the schema already documents the query parameter with format examples ('192.168.1.0/24', '10.0.0.1'). The tool description adds nothing about the parameter beyond what the schema provides, so the baseline of 3 applies.

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 opening sentence states a specific verb and resource: 'Check if an IP address or prefix is a bogon (reserved/non-routable).' It then enumerates the exact RFC ranges tested, making the tool's scope concrete. No sibling tool (rpki_validate, ip_contains, prefix_overlap) covers bogon classification, so it is clearly differentiated.

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?

Usage context is implied rather than explicit: the third sentence explains that a bogon in the global routing table indicates misconfiguration or hijack, which hints at when an agent would run this. However, it never names alternative tools or states when NOT to use it (e.g., for route validity checking, rpki_validate or bgp_route_lookup 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.