Skip to main content
Glama

maritime_vessels_bbox

Query vessel positions within a geographic bounding box, returning AIS fixes ordered by recency with fix age and reporting sources; get the true count even when results are trimmed.

Instructions

Vessels in a box from the freshness-wins AIS store, freshest first, each with its fix age and every source that reported it. bbox = lon0,lat0,lon1,lat1 (lon0 > lon1 crosses the antimeridian). count is the true number in the box even when the list is trimmed.

Input Schema

NameRequiredDescriptionDefault
bboxYes
limitNo
detailNoshort
max_age_sNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

B3.2/5.0
Behavior4/5

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

With no annotations at all, the description usefully discloses ordering (freshest first), per-record enrichment (fix age, every reporting source), and the crucial trimming behavior: 'count' is the true number in the box even when the list is trimmed. It omits freshness filtering semantics (max_age_s) and anything about result size ceilings, so the safety/limits picture is incomplete but the core behavior is well explained.

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?

Three tight sentences with the core scope front-loaded, then the bbox encoding, then the count caveat. No filler; the only slight misallocation is spending a sentence on an output field while three input parameters go undocumented.

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?

An output schema exists, so return values need not be explained, and the mutation/authorization surface is nil for a read tool. But with 0% schema coverage on attributes like max_age_s and detail, and no sibling differentiation among a large vessel-oriented tool family, the definition leaves real gaps an agent would hit on first call.

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% across 4 parameters, so the description must carry the load. It does a genuinely good job on bbox (order lon0,lat0,lon1,lat1 and antimeridian crossing when lon0 > lon1), but says nothing about limit, detail, or max_age_s — notably the non-obvious meaning of max_age_s and the valid values for detail.

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?

States a concrete verb+resource+scope: vessels within a geographic box, from the 'freshness-wins AIS store', returned freshest-first with fix age and source attribution. That is far more specific than a tautology, but it never contrasts itself against the many vessel-adjacent siblings (query_vessels, vessel_dossier, maritime_satellite_positions, maritime_coverage), so an agent must infer the split.

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?

There is no explicit when-to-use or when-not-to-use guidance and no named alternative. The phrase 'freshness-wins AIS store' hints at a dedup/policy choice rather than routing advice, leaving the agent to guess whether query_vessels or vessel_dossier is the right call for a non-spatial or per-vessel lookup.

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