Skip to main content
Glama

TheStrat for agents

signals_in_force

Technical signals in force across a basket: every TheStrat actionable signal whose trigger is taken while its bar is open, grouped by direction and pattern, with % of basket and the trigger, target and level of reclaim per symbol.

Input Schema

NameRequiredDescriptionDefault
nowNoCurrent time, ISO 8601. Decides if the last bar is still open. Default: the server clock.
as_ofNoOptional ISO time. Use only bars that start at or before this time (replay a past bar).
basketYesBars per symbol on ONE timeframe, oldest first: {"XLE": [...], "XOM": [...], ...}. Same bar format as find_signals. Limits: 60 symbols, 500 bars per symbol (10 to 50 are enough). Swing: a sector ETF + its holdings on W. Intraday: SPY QQQ DIA IWM on 30 or 60.
timeframeNoTimeframe of the bars: 5, 15, 30, 60, D, W, M, Q or Y.D

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior3/5

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

No annotations exist, so the description carries the full burden. It does disclose the return shape (grouped by direction and pattern, % of basket, trigger/target/level of reclaim per symbol), which is real value. It omits what happens with symbols lacking open bars, invalid baskets, or symbols with insufficient bars — leaving the failure profile opaque for a computation 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?

A single dense sentence with no filler, front-loaded on the core concept ('technical signals in force across a basket') before enumerating grouping and per-symbol fields. It is somewhat jargon-heavy ('level of reclaim', 'trigger is taken') without gloss, which slightly impairs first-pass parsing.

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

Completeness3/5

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

For a compute tool with no output schema and a nested basket parameter, the description does cover the conceptual return contents, which is the most important gap. However it says nothing about edge cases, partial results, or per-symbol failure handling, all of which an agent needs before committing a 60-symbol basket.

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 coverage is 100%, so now, as_of, basket and timeframe are all documented in the schema, including limits (60 symbols, 500 bars) and the 'decides if the last bar is still open' semantics. The description adds nothing beyond the schema on any of the four parameters, so the baseline 3 applies.

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 and verb: returns every TheStrat actionable signal whose trigger is taken while its bar is open, across a basket, grouped by direction and pattern. The 'in force / bar still open' framing implicitly separates it from find_signals (historical) and potential_signals_next_bar, though it never names those siblings explicitly.

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

Usage Guidelines3/5

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

Usage is implied by 'whose trigger is taken while its bar is open' and by the schema's guidance on basket composition, but the description itself gives no explicit when-to-use, when-not-to-use, or alternative tool to pick instead of find_signals / potential_signals_next_bar / open_decisions. An agent must infer routing.

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