Skip to main content
Glama

plot_impulse_response

Generates plots of orthogonalised impulse responses from the last estimated model, showing response-shock panels, horizons, seasonal grid, and optional Monte-Carlo confidence bands.

Instructions

FIGURE — The orthogonalised impulse responses of the last estimated model.

Drawn as what an impulse response is, a function of the lag like an ACF: one panel per (response, shock), thick impulses at h = 0..H, the seasonal grid, and the 95 % Monte-Carlo band dashed (it follows h). Cholesky in the order of the files, as impulse_response. The numbers are impulse_response's. On a VEC: the level responses (drvec), with the bootstrap's 90 % band from irf_bands when it has run.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "name": "<name>"
    },
    "name": "plot_impulse_response"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameYes
pathNo
bandsNo
ndrawsNo
horizonNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well: it discloses the panel layout, lag horizon, seasonal grid, 95% Monte-Carlo band, Cholesky ordering, and VEC-specific level responses using 90% bootstrap bands when available. It does not explain output/file behavior or how path, ndraws, and bands options affect the produced figure.

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 purpose is front-loaded in the first sentence, and the remaining sentences add useful visual/statistical detail rather than filler. The phrasing is somewhat stylized and verbose, but still appropriately sized for a tool with no annotations or parameter descriptions.

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 five-parameter plotting tool with no annotations, no output schema, and 0% schema description coverage, the description explains the plotted content but omits key call semantics for name, path, ndraws, and output behavior. It is adequate for understanding what the figure looks like, but incomplete for correct invocation.

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 0% for five parameters. The description gives meaning to horizon via 'h = 0..H' and implies band behavior, but it does not explain name, path, or ndraws, leaving most parameters undocumented in both schema and description.

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?

The description opens with a specific figure/plot resource: orthogonalised impulse responses of the last estimated model. It also distinguishes the plot from the numeric sibling by stating that 'the numbers are impulse_response's,' so an agent can identify what this tool produces.

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 implicitly routes agents to impulse_response for numerical IRFs and to irf_bands for bootstrap VEC bands, giving clear context for when this plotting tool applies. It does not explicitly state when not to use it or list all alternatives, so it falls short of full when/when-not guidance.

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