Skip to main content
Glama

sandbox_get_messages

Read-onlyIdempotent

The FIX message log for a sandbox session, oldest first: logons, heartbeats, orders in, execution reports out, rejects. Each message has seq, timeUtc, inbound (true = user's engine sent it), msgType, raw FIX, and parsed tag/value fields. Pass afterSeq (the last seq you saw) to fetch only new messages. Use this to explain what happened on the wire.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
afterSeqNoReturn only messages with seq greater than this
sessionIdYes

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 cover read-only and idempotent safety, so the bar is low; the description nonetheless adds ordering (oldest first), incremental-fetch semantics via afterSeq, and the inbound flag's meaning (true = user's engine sent it). These are real behavioral details beyond the annotations, though auth/rate limits are not addressed (likely unnecessary here).

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?

Three tight sentences, front-loaded with the resource and its contents, then usage, then the polling parameter. No filler and every clause carries information.

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?

There is no output schema, so the description does the heavy lifting by listing the returned fields (seq, timeUtc, inbound, msgType, raw FIX, parsed tag/value) and their semantics. Combined with the annotations, an agent has everything needed to call and interpret the result.

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 50%; the schema documents afterSeq but leaves sessionId bare, and the description compensates by clarifying afterSeq's intended value ("the last seq you saw") in a polling workflow. It does not add anything for sessionId, so it only partially fills the coverage gap.

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 specific resource (the raw FIX message log for a sandbox session) and enumerates its contents (logons, heartbeats, orders in, execution reports out, rejects). It is clearly distinct from sandbox_get_orders/list_executions siblings by being the wire-level log rather than parsed order or execution entities, though it does not name an alternative explicitly.

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?

Gives a clear use case ("explain what happened on the wire") and polling guidance ("Pass afterSeq (the last seq you saw) to fetch only new messages"). No explicit when-not or named alternative, but the context of use is unambiguous.

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.