Skip to main content
Glama
Backtest360

backtest360-mcp

Official
by Backtest360

validate_strategy

Validate a strategy document structure, indicators, and condition tree before running a backtest. Returns valid status, warmup bars, or detailed errors to fix.

Instructions

Validate a strategy document without running a backtest.

A cheap quota separate from backtest runs, so validate freely and ALWAYS before run_backtest.

Args: strategy: The strategy document — name, indicators[], and condition_tree (see get_strategy_schema for the exact shape). injected_indicators: Names of custom time-series columns the caller will supply via data_inputs at run time, so conditions referencing them validate.

Returns: On success: {"valid": true, "warmup_bars": ..., referenced indicators/columns}. On failure: {"valid": false, "errors": [...]} where each error carries a machine code, the location in the document, a message, and context (e.g. the list of valid column names). A failed validation is a NORMAL result, not an error — read the errors, fix the document, and validate again before running.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
strategyYes
injected_indicatorsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

With no annotations, the description fully discloses behavior: it's a cheap, separate-quota validation that returns success/failure without running a backtest. It clarifies failed validation is a normal result, not an error, and details the return structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is well-structured with a one-line summary, usage note, Args, and Returns. Every sentence adds value without redundancy. It's appropriately sized for the complexity.

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?

Given the tool's complexity (validating a strategy with indicators and conditions), the description covers purpose, parameters, return values (including error format), and usage context (cheap quota, reference to schema). No gaps.

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%, but the description adds rich meaning: explains strategy document structure (name, indicators, condition_tree) and injected_indicators purpose (custom columns supplied at runtime). This compensates fully for the schema's lack of descriptions.

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 clearly states the tool validates a strategy document without running a backtest, distinguishing it from the sibling run_backtest. The verb 'validate' and resource 'strategy document' are specific.

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

Usage Guidelines5/5

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

Explicitly says 'validate freely and ALWAYS before run_backtest,' providing clear when-to-use guidance. References get_strategy_schema for shape details, and mentions cheap quota to encourage frequent use.

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/Backtest360/backtest360-mcp'

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