Skip to main content
Glama

construct_limits

Read-onlyIdempotent

Reads mode, tier, or research settings from a request and returns enforced limits with any overrides, so hosts can stop at the first limit.

Instructions

The limits of a mode (fast, masterpiece, timeboxed, unbounded) or tier (wall clock, check and review rounds, research counts) with any overrides applied, for the host to enforce: aim for genuinely good, stop at the first limit. Overrides can raise a limit, never remove it. Also reads 'mode:'/'tier:'/'research:' from a request.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "construct_limits"
  }
}

Input Schema

NameRequiredDescriptionDefault
tierNo
requestNo
overridesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.3.1

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, closed-world, non-destructive behavior, so the description's job is to add beyond that, which it does: 'Overrides can raise a limit, never remove it' is a concrete invariant an agent could otherwise get wrong, and 'stop at the first limit' describes enforcement semantics. It stops short of describing the return shape or the precedence between a parsed request and explicit overrides.

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 sentences, no filler, with the override invariant and request-parsing behavior front-loaded. The opening nominal construction ('The limits of a mode ... or tier ... with any overrides applied') is harder to parse than a simple verb-first sentence, but nothing is redundant.

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?

With no output schema, the description must convey what comes back; it names the limit categories (wall clock, check and review rounds, research counts) but not the response structure or whether limits are per-category objects. It also leaves undefined the all-defaults case implied by 0 required parameters. Adequate for a small lookup tool, but with visible gaps.

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 coverage is 0%, so the description must compensate; it partially does by explaining override semantics (raise-only, never remove) and that `request` is scanned for 'mode:'/'tier:'/'research:' directives. However, the nested override fields (wall_clock_s, check_rounds, review_rounds, searches, sources, images) get no explanation of units or interaction, and it never clarifies that the `tier` parameter accepts both mode-like and tier-like values despite the description treating modes and tiers as separate concepts.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource as limits for a mode or tier, but it is written as a noun phrase with no verb, so the agent must infer that the tool returns/computes limits rather than enforces them itself. The parenthetical lists of modes and limit kinds help, but the mode-vs-tier distinction is muddled relative to the single `tier` enum that contains both. It is distinguishable from compile/diagnose siblings, but the action is only implied.

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?

'For the host to enforce: aim for genuinely good, stop at the first limit' gives downstream usage intent, and 'Also reads mode:/tier:/research: from a request' hints at when to pass free text. There is no explicit guidance on choosing among tier, request, and overrides, and no statement of what happens when all inputs are omitted (0 required parameters). Usage is implied rather than specified.

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