Skip to main content
Glama

Build and preview a custom scenario

build_scenario
Read-onlyIdempotent

Author custom macro path or shock scenarios, preview the resolved document, fingerprint, and warnings, then pass it to run_stress_scenario; no market runs.

Instructions

Author a custom scenario and see what it resolves to before running it. Give a macro PATH as hold, ramp and step instructions in steps, or explicit INTERVENTIONS as shocks and assumed transmission. Returns the resolved document, its fingerprint and any warnings; pass that document to run_stress_scenario as scenario. Days count from 0, so an event at day 50 needs a run of at least 51 days. Runs no market.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoThe run length you intend, 1 to 60 (up to 252 through start_job). A path's table covers these days, and a scenario whose events all fall after them is refused.
labelNoA name for the scenario, carried into results.
stepsNoA macro PATH, pinned for the whole run. Each step is {"kind": "hold", "fields": {"vix": 30.0}}, {"kind": "ramp", "field": F, "start": X, "end": Y, "over": N, "begin": D} or {"kind": "step", "field": F, "before": X, "after": Y, "at": D}. Fields: vix, federal_funds_rate, corporate_bond_yield, inflation_rate, qe_pe_boost, qe_assets_ratio, fear_greed_index, gdp_growth, unemployment_rate, tariff_rate, oil_price, cycle, epicentre, treasury_yield_2y, treasury_yield_10y.
shocksNoINTERVENTIONS the scenario asserts happened, each {"target": T, "operation": "set|add|multiply", "value": V, "at": D, "duration": N, "shape": "impulse|hold|ramp|permanent"}. list_scenarios gives every target and what it was measured to move.
transmissionNoInterventions the scenario ASSUMES followed, in the same form as shocks. The simulator treats them alike; the split records which effects are assumptions.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, and 'Runs no market' reinforces that this is a pure build step. It adds real behavioral context beyond annotations: the returned artifacts (resolved document, fingerprint, warnings) and the day-counting rule that can cause a scenario to be refused.

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?

Three sentences, front-loaded with purpose then the two input modes then the day-count caveat and the no-market disclaimer. Dense but every clause carries information; slightly packed for a single paragraph.

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?

An output schema exists, so return values need not be detailed, yet the description still notes what comes back. Combined with the day-count caveat and sibling routing, an agent has what it needs to invoke this correctly.

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%, so baseline is 3, but the description adds meaning beyond the schema: the day-0 offset rule ('an event at day 50 needs at least 51 days') and the purpose of the steps/shocks/transmission split. This compensates usefully for what the schema alone conveys.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Author a custom scenario') plus the distinctive capability of previewing the resolution before running it. It explicitly distinguishes itself from run_stress_scenario by naming it as the downstream consumer.

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?

Explains the two authoring modes (steps as a macro PATH, or shocks/transmission as INTERVENTIONS) and that the returned document is passed to run_stress_scenario. It does not explicitly say when to prefer steps over shocks, but the context is clear.

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