Skip to main content
Glama

One order

get_order
Read-onlyIdempotent

One resting order by its id: market, side, price, size left. An order that is not resting now (it filled or was cancelled) is reported as gone. Ask: "What is the state of order 8840974?"

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "order_id": "<order_id>"
    },
    "name": "get_order"
  }
}

Input Schema

NameRequiredDescriptionDefault
addressNothe account (default: the server's configured owner)
order_idYesthe chain's order id, as get_orders lists it

Output Schema

NameRequiredDescriptionDefault
foundNo
orderNo
addressNo
networkYestestnet or mainnet
summaryYesone plain sentence
order_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds genuinely non-obvious behavior: only resting orders are returned, and filled or cancelled orders are reported as gone, which prevents an agent from misreading a miss as an error. It does not discuss auth or rate limits, but those are minor here.

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 short sentences: the first front-loads what it does, the second covers the edge case, the third illustrates usage. The example question is slightly decorative but earns its place by anchoring the invocation pattern, so nothing is wasteful.

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?

For a two-parameter read tool with full schema coverage, rich annotations, and an existing output schema, the description covers the only real ambiguity: what happens to non-resting orders. Nothing an agent needs to select or call it correctly is missing, and return values are rightly left to the output schema.

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 100%, so both parameters (order_id and the optional address with its server-default note) are fully documented in the schema already. The description only reiterates that lookup is by id and adds no format, range, or fallback detail beyond that, so the baseline 3 applies.

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?

"One resting order by its id" gives a specific verb, resource, and cardinality, immediately distinguishing it from the sibling get_orders list tool. It also names the fields returned (market, side, price, size left), so an agent knows exactly what it gets back.

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?

The description makes the triggering situation concrete with the example "What is the state of order 8840974?", and the note that non-resting orders come back as gone tells the agent when this tool will not find what it expects. It stops short of explicitly routing list-shaped questions to get_orders, but the singular framing strongly implies that split.

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.