Skip to main content
Glama

TunnelMind Data API

attributes_lookup

P73 fast attributes endpoint (PIP-PLAN P3): a full POST /v1/verify resolve fans out across four lenses (~2s) — fine for preflight, fatal inside a per-request authorization loop. This endpoint serves the last-known signed bundle from a single KV read, with the P69 freshness contract deciding how much to trust it.

Use this tool when:

  • A policy decision point (OPA, Cerbos, Cedar) needs node attributes on its hot path and can tolerate valid_until-bounded staleness.

  • An agent re-checks a node it (or anyone) verified recently.

Inputs:

  • node (path, required): IPv4/IPv6 address, domain, ASN (AS64500), or entity_slug — same grammar as /v1/verify.

Returns:

  • The exact verify bundle last cached for the node (lens blocks, cross_lens verdict, coverage with valid_until / stale_if_error, signed receipt), plus attributes_meta: cached_at and freshness — fresh (inside valid_until) or stale (past it, still inside the stale_if_error window; the contract says a consumer may use it rather than fail closed).

  • 404 when nothing is cached — the node was never verified, or its bundle aged past stale_if_error. POST /v1/verify to (re)observe.

  • The short-lived sigil_token from the original verify is never included: bearer capabilities are not re-served.

Cost:

  • Counts as one request against the daily rate limit.

Latency:

  • Typical: <100ms (one KV read, no lens fan-out).

Input Schema

NameRequiredDescriptionDefault
nodeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: it discloses the staleness contract (fresh vs stale within stale_if_error), what is deliberately omitted (the sigil_token is never re-served), 404 semantics, rate-limit cost, and sub-100ms latency. These are exactly the traits an agent needs to decide whether a cached read is safe for this decision.

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 labeled sections (Use this tool when / Inputs / Returns / Cost / Latency) make it scannable and every block earns its place. It is verbose, though: the codename-heavy preamble and the escalation-path framing take several sentences before the actual behavior is stated, so the key fact is not fully front-loaded.

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?

There is no output schema, and the description compensates by enumerating return contents (lens blocks, cross_lens verdict, coverage with valid_until/stale_if_error, signed receipt, attributes_meta with cached_at and freshness) plus the error case. Nothing needed to invoke or interpret a result is 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?

Schema coverage is 0% and the single parameter has no schema description, so the description must compensate — and it does, enumerating the accepted grammar (IPv4/IPv6 address, domain, ASN like AS64500, entity_slug) and pointing to /v1/verify for identical semantics.

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 the mechanism and payload: it 'serves the last-known signed bundle from a single KV read,' and contrasts this with the ~2s four-lens fan-out of POST /v1/verify. An agent can tell it is a cached/fast read of verify bundles. It loses a point because the opening is loaded with internal codenames (P73, PIP-PLAN P3, P69) and it never names a specific sibling tool (e.g. verdict_lookup, cross_lens_lookup, get_freshness) as the alternative.

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?

Two explicit when-to-use conditions are given: a policy decision point on a hot path that tolerates valid_until-bounded staleness, and an agent re-checking a recently verified node. The when-not is equally explicit — the fan-out verify is 'fatal inside a per-request authorization loop' — and the 404 branch tells the agent to fall back to POST /v1/verify.

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