Skip to main content
Glama

Check a prefix against an origin AS

check_route
Read-onlyIdempotent

Check one (prefix, origin AS) pair against the public records: RPKI route origin validation (RFC 6811), the routing registries (IRR route objects) and how many RIPE RIS peers see that origin for the prefix.

Use it to answer whether an AS is authorised to originate a prefix, why a route may be dropped by networks that filter on RPKI, or whether a registry object matches an announcement. For everything about one prefix or AS use lookup_target instead.

Behavior: offline, answered from local snapshots; the result lists only the datasets this instance has loaded. RPKI "invalid" can be a stale ROA and an IRR object is a claim, so neither is proof of a hijack or of authorisation. A prefix RIS does not see may still be announced to peers it does not have.

Input Schema

NameRequiredDescriptionDefault
originYesthe origin AS number to check the prefix against, written AS13335; a bare number is not an ASN
prefixYesone announced or planned prefix in CIDR form, IPv4 or IPv6, e.g. 1.1.1.0/24 or 2606:4700::/32; host bits are ignored. A bare address or a range is not accepted

Output Schema

NameRequiredDescriptionDefault
irrNorouting registry check: match, less_specific, mismatch or none; absent without an IRR dataset. A registry object is a claim, not an authorisation
rpkiNoroute origin validation of (prefix, origin): valid, invalid or not_found; absent without a VRP set. Informational
originYes
prefixYesthe prefix with host bits cleared
seen_byNonumber of RIPE RIS peers that see this origin for the prefix
summaryYesthe human-readable result, the same text as the text content
announcedNowhether the routing table lists this exact prefix with this origin; absent without a routing table
details_urlNothe result page of the prefix

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent/closed-world, but the description adds information they cannot carry: the tool is answered from local offline snapshots whose dataset coverage varies by instance, and the result only lists datasets actually loaded. It also pre-empts two classic misinterpretations — RPKI invalid may be a stale ROA and an IRR object is only a claim, neither proving hijack or authorisation, and absent RIS visibility does not mean the prefix is unannounced.

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?

Front-loaded with what is checked and why it matters, then a clearly labelled Behavior section. The caveat paragraph is longer than typical but each clause prevents a specific real-world misreading; only minor trimming would be possible.

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?

Output schema exists, so return values need no explanation; the description instead supplies the interpretive context an agent needs — offline snapshot provenance, variable dataset coverage, and the limits of each signal. Nothing required to call or interpret the result is missing.

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 100%, so the baseline is 3, but the description reinforces the key constraint that this is exactly one pair at a time rather than a batch, which shapes how an agent should call it. It does not restate formats (AS13335, CIDR) since the schema already does that thoroughly.

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?

Names the exact input (one prefix, origin AS pair) and the three concrete datasets consulted (RPKI ROA validation per RFC 6811, IRR route objects, RIPE RIS peer visibility). It explicitly contrasts with lookup_target, so an agent can distinguish it from siblings without opening the schema.

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

Usage Guidelines5/5

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

Gives three concrete question shapes this answers (is an AS authorised to originate, why a route is dropped by RPKI filtering, does a registry object match an announcement) and explicitly routes all prefix-wide or AS-wide questions to lookup_target. Both when-to-use and when-to-use-something-else are stated.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources