Skip to main content
Glama

TILLA - market data on one clock

Bars in a time range

tilla_window
Read-onlyIdempotent

A window of bars. Name exactly what you want, one of: series = comma-separated names (at most 200) from tilla_inventory, or a pattern like 'btc_*' / '*_close'; or markets + fields ('btc,eth' + 'close,volume' -> btc_close, btc_volume, eth_close, eth_volume). layer = raw | derived | node | deep; lane = 1min, 5min, hour, daily, ... start/end = 'YYYY-MM-DD[ HH:MM[:SS]]' UTC inclusive, or period = 30d 2m 6m 1y all; no start = the newest bars. limit <= 50000. When more is true, call again with start = next_start. Needs TILLA_API_KEY.

Input Schema

NameRequiredDescriptionDefault
endNo
laneNo1min
layerNoraw
limitNo
startNo
fieldsNo
periodNo
seriesNo
marketsNo

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, idempotent, non-destructive and open-world, and the description adds materially new operational facts: an API key requirement ('Needs TILLA_API_KEY'), a hard cap ('limit <= 50000'), UTC-only timestamps, inclusive bounds, and a continuation mechanism via `more`/`next_start`. It does not describe what an individual bar looks like or how deep/node layers differ behaviorally, which is the remaining transparency gap for a no-output-schema tool.

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?

Purpose and payload-shape are front-loaded, and nearly every clause carries a fact an agent needs (formats, caps, pagination, auth). The dense bullet-in-prose formatting and mid-sentence line breaks make it slightly harder to scan than a cleanly segmented list would be, but there is no filler.

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?

For a 9-parameter, zero-required tool with no output schema, the description covers query modes, formats, limits, auth and continuation, which is what a caller needs to avoid malformed calls. The residual gap is the response shape itself — no output schema exists and the description never states what a returned bar contains or how `layer` changes it, leaving the caller to discover the payload structure after the call.

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

Parameters5/5

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

Schema coverage is 0% and the description compensates almost entirely: it enumerates layer values (raw|derived|node|deep), lane values (1min, 5min, hour, daily, ...), the accepted timestamp format ('YYYY-MM-DD[ HH:MM[:SS]]' UTC inclusive), period syntax (30d, 2m, 6m, 1y, all), series wildcard patterns and the 200-name cap, the markets+fields cross-product with a worked example, and the limit ceiling. This is far beyond what the bare JSON schema conveys and resolves the mutual exclusivity of the two selection modes.

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 concrete resource ('a window of bars') with the selectable axes (layer, lane, time range, series/markets+fields), so the agent knows exactly what a call yields. It does not name or contrast any of the close siblings (tilla_latest, tilla_tick, tilla_sample, tilla_market), so the agent must infer the boundary between a window query and a single-point/latest query.

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 operative selection rules: 'Name exactly what you want, one of: series ... or markets + fields', start/end versus period, and 'no start = the newest bars'. It also documents the pagination loop ('When `more` is true, call again with start = `next_start`'). What it lacks is any exclusion guidance against the sibling tools, so a caller choosing between tilla_window and tilla_latest gets no explicit steer.

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.