Skip to main content
Glama

Factor board: what followed days like today across recorded metrics

get_factor_board
Read-only

Retrieve every recorded metric with its historical band and the median 7-day BTC move that followed, gated at n >= 30. Use it to spot unusual bands and check whether current levels historically preceded BTC moves.

Instructions

Call this when the user asks which indicators currently sit in an unusual band, whether a metric's current level historically preceded BTC moves, or for a cross-metric conditional overview. Returns every recorded metric in its historical band with the median 7-day BTC move that followed versus the base rate, with an n >= 30 gate; distributions, not forecasts. Without limit the first 40 rows in the board's own order (rows_total counts every row, trimmed names the cut); pass limit up to 400 for the whole board. Pass detail "compact" for a shorter page or "full" for the whole answer.

Input Schema

NameRequiredDescriptionDefault
limitNoOptional. Rows to return, 1..400 (default 40)
detailNoOptional. "compact": a shorter page than the default (fewer rows, newest points kept, rounded figures, long text cut, grids left out; every cut named in trimmed). "full" or true: the whole route answer, still under the 100,000 character ceiling (the largest boards answer the ceiling note then: narrow them with symbol, limit or days instead). Omitted or false: the default first page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.1.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • addedInput schema / properties / detail
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "enum": [
      +        "compact",
      +        "full"
      +      ],
      +      "type": "string"
      +    }
      +  ],
      +  "description": "Optional. \"compact\": a shorter page than the default (fewer rows, newest points kept, rounded figures, long text cut, grids left out; every cut named in trimmed). \"full\" or true: the whole route answer, still under the 100,000 character ceiling (the largest boards answer the ceiling note then: narrow them with symbol, limit or days instead). Omitted or false: the default first page."
      +}
  2. Changed1 schema field changedv0.36.1
    • addedInput schema / properties / limit
      Added value: +{
      +  "description": "Optional. Rows to return, 1..400 (default 40)",
      +  "maximum": 400,
      +  "minimum": 1,
      +  "type": "integer"
      +}
  3. Addedv0.9.0

TDQS

A4.3/5.0
Behavior5/5

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

Annotations only cover read-only/open-world, and the description adds real behavioral substance the annotations lack: the n >= 30 significance gate, the 'distributions, not forecasts' caveat, the default 40-row page in board order, rows_total and trimmed reporting, and the 100,000-character ceiling on full answers.

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?

The trigger condition is front-loaded in the first clause, followed by return shape and then paging rules, which is the right order. It is dense but nearly every clause carries distinct information; the default/limit point is slightly restated from the schema.

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?

With no output schema, the description carries the return-value burden and does so: it names the per-row fields (band, median 7-day follow-through vs base rate), the envelope fields (rows_total, trimmed), and the char ceiling. An agent could call this correctly without further information.

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% and already documents both parameters, so the baseline is 3. The description still adds meaning beyond the schema by explaining that trimmed names every cut, that rows_total counts all rows, and that the default ordering is the board's own.

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?

The description states a concrete resource and payload: every recorded metric in its historical band plus the median 7-day BTC move versus base rate, explicitly framed as distributions not forecasts. That is far more than a restatement of the name, though it never names the nearest sibling (e.g. get_metric_context) to say how it differs.

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?

It gives three explicit triggering user questions ('unusual band', 'historically preceded BTC moves', 'cross-metric conditional overview'), which is unusually actionable. It stops short of exclusions or naming an alternative tool for the single-metric case.

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