Skip to main content
Glama
nazmiefearmutcu

Crocodile

collect-market

Resolve and subscribe to a venue's market slice without listing symbols, selecting the top liquid or all matching symbols for crypto or US equity data collection.

Instructions

Subscribe to a whole slice of a venue's market, resolved from its universe.

Input Schema

NameRequiredDescriptionDefault
topNo
kindsNo
quoteNo
use_wsNo
sourcesYes
channelsYes
book_depthNo
all_symbolsNo
asset_classYesWhich market answers. Required: this tool has an implementation for each of these and no symbol parameter to infer one from.
max_symbolsNo
poll_intervalNo
max_reconnectsNo
dlq_report_pathNo
duration_secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.2

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. "Subscribe" hints at a long-running stream, but nothing is said about that being a blocking/persistent job, how it terminates (duration_seconds), reconnect behavior, rate limits, or the DLQ reporting the parameters imply. The agent is left to infer operationally significant behavior from parameter names.

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

Conciseness3/5

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

A single front-loaded sentence with no filler, but for a 14-parameter long-running subscription tool this is under-specification rather than concision — the brevity is achieved by omitting, not by compressing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No annotations, no output schema, 14 parameters at 7% coverage, and a subscription lifecycle to explain — the description is far short of what an agent needs. Partial credit only because the schema's embedded description covers the top/all_symbols rule and the collect relationship.

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

Parameters2/5

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

Schema description coverage is 7% across 14 parameters, and the description adds nothing about any of them. The schema's own top-level text explains top/all_symbols mutual exclusivity and asset_class, but kinds, quote, use_ws, book_depth, max_symbols, poll_interval, max_reconnects, dlq_report_path and duration_seconds remain undocumented anywhere.

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?

"Subscribe to a whole slice of a venue's market" gives a verb (subscribe) and a resource, but "slice of a venue's market" is undefined jargon — an agent cannot tell what a "slice" contains without reading the schema's $defs description. It also never names its closest sibling, collect, so the distinction is only discoverable inside the schema.

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

Usage Guidelines2/5

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

There is no guidance on when to use this instead of collect, universe, resolve-symbols, or markets. The one genuinely differentiating fact — that symbols come from the venue's live universe rather than being named by the caller — appears only in the schema description, not here.

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