Skip to main content
Glama

SMI Aware Assistant

Check Order Complete

smi_check_order_complete
Read-onlyIdempotent

Checks the status of a deep report or export record (by its record id, e.g. from smi_create_deep_report draftIds). Returns state = ready | in_progress | draft | failed | unknown and a terminal flag. Poll with bounded attempts and backoff while in_progress; stop as soon as terminal is true (ready or failed) — a failed record will never become ready. Also stop when state is draft: the record was never submitted, so it will not progress until smi_submit_deep_reports or smi_submit_exports is called on it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
orderIdYesDeep-report or export record id — the same id returned as draftIds by smi_create_deep_report and accepted by fetch. There is no separate order-level id. Product-prefixed ids are accepted and stripped: RB = Research Bundle, DR = Deep Report (both orderType "deep_report"), EX = Export (orderType "export").
orderTypeYesWhether the order is a deep report or an export

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
readyYes
stateYes
statusYes
orderIdYes
terminalYes
orderTypeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark the call as safe read/idempotent, and the description adds valuable behavior beyond them: the state machine, the terminal flag, the guarantee that failed never becomes ready, and the draft non-progression rule. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence earns its place: it defines the result, the polling loop, the stopping conditions, and the sibling actions. The core purpose is front-loaded and no filler is present.

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 status/polling tool with two fully described parameters and an output schema, the description includes all operational context an agent needs: valid states, terminal semantics, draft handling, and the related submit tools. Nothing important appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description goes beyond the schema by explaining where orderId comes from (draftIds), that there is no separate order-level id, and how product-prefixed ids are normalized. This materially helps an agent construct the parameter correctly.

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?

Description uses a specific verb ('checks the status') and names the exact resources ('deep report or export record') plus the id source ('smi_create_deep_report draftIds'), which differentiates it from fetch or smi_get_deep_report. The scope is unambiguous and not a restatement of the title.

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?

It gives an explicit polling protocol: poll while in_progress with bounded attempts/backoff, stop when terminal is true, and stop on draft because it will not progress. It also names the alternatives to call for draft records (smi_submit_deep_reports / smi_submit_exports), so an agent knows exactly when this tool is and is not useful.

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