Skip to main content
Glama
davidesg

ART MCP Server

by davidesg

ar_factorization

Factor the estimated AR operators of a fitted model and identify candidate seasonal AR factors.

Instructions

Factorize the estimated AR operator(s) of a fitted model and identify candidate seasonal AR_f factors.

Each regular AR factor P(B) = 1 - c1 B - ... - cp B^p is factored (via numpy.roots) and characterized in the original Root format: the roots table and the real factors (1 - a[1] B) and complex factors (1 - a[1] B - a[2] B^2), each complex factor given its damping factor d, its frequency freq (cycles/obs) and its period per (obs/cycle). For a directly-estimated AR(2) factor (both coefficients free), d and per carry delta-method standard errors (d ± SE, per ± SE) from the factor's 2x2 coefficient covariance — matching ABTreadway-Dperar2.xls / caracterizar_operadores.py.

INTERPRETATION IS LEFT TO THE ASSISTANT: a complex factor whose period matches a seasonal cycle (per = s/k for an integer harmonic k) and whose damping d is near 1 is a candidate seasonal AR_f operator -- a stochastic-seasonal factor hidden inside an un-factored AR(p) -- to feed the MEG (DCD_f) and the dual Shin-Fuller AR_f test (paper SF_MEG, confirmatory pair). Because fue can estimate the AR operator factored or un-factored, factoring a freely estimated AR(p) exposes such factors.

Parameters

inp_path : path to .inp or .pre file (fitted model) sper : seasonal period; 0 (default) uses the series frequency

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sperNo
inp_pathYes
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It thoroughly discloses the algorithm (numpy.roots), the output structure (roots table, real/complex factors, damping, frequency, period, standard errors), and explicitly states that 'INTERPRETATION IS LEFT TO THE ASSISTANT.' It also references external matching tools (ABTreadway-Dperar2.xls / caracterizar_operadores.py), giving confidence in behavior. It is transparent about both the mechanics and the intended use of results.

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 description is dense but well-structured, starting with a one-sentence purpose followed by clear technical and interpretation paragraphs, then parameters. It front-loads the main verb and resource. While longer than strictly necessary, every sentence adds value and no content is redundant. The structure aids scanning.

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?

The description explains the purpose, algorithm, output details, and parameter semantics. It does not specify the exact return format (e.g., JSON structure) or potential error cases, but since no output schema is provided, it describes the results sufficiently. The interpretation guidance and context of feeding into MEG/Shin-Fuller tests complete the picture, making it robust for a complex analytical tool.

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%, so the description fully compensates. It explains both parameters: 'inp_path : path to .inp or .pre file (fitted model)' and 'sper : seasonal period; 0 (default) uses the series frequency.' This adds meaning beyond the bare schema types and gives concrete guidance on what each parameter does.

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 verb and resource: 'Factorize the estimated AR operator(s) of a fitted model and identify candidate seasonal AR_f factors.' This clearly distinguishes the tool from siblings like seasonal_analysis or unit_root_analysis by focusing on AR factorization and detecting hidden seasonal factors. It fully answers what the tool does.

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?

The description explains the intended context: 'a complex factor whose period matches a seasonal cycle ... is a candidate seasonal AR_f operator ... to feed the MEG (DCD_f) and the dual Shin-Fuller AR_f test.' This tells the assistant when to use the tool (when a fitted model might contain hidden seasonal factors). It does not explicitly name alternatives or when not to use it, but the context is sufficiently clear.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidesg/art-python'

If you have feedback or need assistance with the MCP directory API, please join our Discord server