Skip to main content
Glama

check_order

Read-onlyIdempotent

Verify a proposed order against the operator's stated intent, live market conditions, and guardrails. Receive ok, caution, or block with per-check evidence before placement.

Instructions

CHECK BEFORE YOU PLACE: deterministic verification of a proposed order against the operator's intent, the live market and the guardrails. Pass the operator's own words as intent. Returns ok / caution / block with the evidence per check (market exists and is open, intent matches the market and the YES/NO side, price is sane vs the book, size and $1 minimum, guardrails, liquidity, resolution source) plus a one-line read-back. No model judges anything; nothing is sent.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sideYes
sizeYes
priceYes
venueYes
intentNo
outcomeNo
market_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.18.1

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds valuable disclosure beyond that: it states the check is deterministic, that 'No model judges anything', and that 'nothing is sent'. It also describes the ok/caution/block result and per-check evidence, giving the agent a clear behavioral model.

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 description is front-loaded with the purpose and usage context, and every sentence contributes. The long parenthetical list of checks is dense but informative, with no filler. It could be improved with bullets, but the structure is still effective.

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?

With 7 parameters and no output schema, the description carries substantial burden, and it largely delivers: it enumerates the return verdicts, the evidence checks, the role of intent, and the no-side-effects guarantee. The main gaps are the semantics of `venue` and `outcome`, and how an agent should source `market_id`, though sibling market tools likely fill that need.

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 0%, so the description must compensate. It explicitly explains `intent` and indirectly gives meaning to `side` ('YES/NO side'), `price` ('sane vs the book'), `size` ('$1 minimum'), and `market_id` ('market exists and is open'). However, `venue` and `outcome` are never defined, and no exact value constraints or formats are provided.

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 description leads with 'CHECK BEFORE YOU PLACE: deterministic verification of a proposed order against the operator's intent, the live market and the guardrails.' This names a specific verb and resource, and clearly distinguishes the tool from order placement or market lookup. It also states the return verdicts, making its role unmistakable.

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

Usage Guidelines4/5

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

'CHECK BEFORE YOU PLACE' explicitly signals when the tool should be used, and 'Pass the operator's own words as intent' gives a concrete invocation instruction. It does not explicitly list sibling alternatives or exclusions, but the before-placing context is clear enough to guide selection.

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