Skip to main content
Glama

quant-brain-mcp

Server Details

Stock analysis MCP: 38 indicators, 7 optimizers, 8 backtests, US + India sectors.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
paarths-collab/quant-brain-mcp
GitHub Stars
4

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsC

Average 3.4/5 across 25 of 25 tools scored. Lowest: 2/5.

Server CoherenceB
Disambiguation2/5

Several tools overlap significantly: plot_charts is an explicit alias for generate_charts, generate_chart_pack and generate_charts have similar purposes, and backtesting tools like backtest_macd_momentum vs backtest_macd_trend_follower or backtest_mean_reversion_rsi_bb vs backtest_rsi_mean_reversion are easily confused. The sector tools also have fuzzy boundaries.

Naming Consistency4/5

Most tools follow a clear verb_noun pattern (analyze_*, backtest_*, get_*, generate_*). However, two tools use a 'tool' suffix (analyze_sector_intelligence_tool, find_sector_stock_pipeline_tool) which deviates from the otherwise consistent naming style.

Tool Count3/5

At 25 tools, the server is at the heavy end of the acceptable range. The scope is broad (analysis, backtesting, charting, portfolio optimization, alerts), but redundant chart tools and overlapping backtest strategies inflate the count and hurt focus.

Completeness4/5

The toolset covers the core domain well: technical analysis, backtesting, trade planning, portfolio optimization, quotes, news, and alerts. Minor gaps exist, such as no watchlist management tool (scanning only) and no direct historical data fetch, but these are workable around the existing tools.

Available Tools

25 tools
analyze_momentumAInspect

Momentum indicators: rsi, macd, roc, cci, stoch, stochrsi, tsi, willr.

Runs all momentum indicators for the ticker, or only the subset named in
`indicators` (e.g. ["rsi", "macd"]). `period` sets the history window:
"1d","5d","1mo","3mo","6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior3/5

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

With no annotations, the description carries the full burden. It explains that it runs all indicators or a subset, and that `period` sets the history window. However, it does not disclose the response format, read-only nature, or any limitations.

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?

The description is concise and front-loaded with the indicator list, followed by parameter behavior. It uses only two short paragraphs with no unnecessary verbiage.

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 covers the purpose and key parameters well, but lacks an explicit explanation of the return value or output structure, which is notable given there is no output schema. Still, for a simple analysis tool, the main behaviors are sufficiently described.

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?

The schema has 0% description coverage, but the description compensates by explaining the `indicators` parameter with an example and listing all valid `period` values with a default. This adds meaning beyond the bare enum and types.

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 it runs momentum indicators (RSI, MACD, ROC, etc.) for a ticker, optionally filtered by the `indicators` parameter. This distinguishes it from sibling tools like analyze_trend or analyze_volatility.

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

Usage Guidelines3/5

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

The description explains what the tool does but does not explicitly mention when to use it over alternatives. Usage is implied by the indicator list, but no exclusions or alternative tools are named.

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

analyze_sector_intelligence_toolBInspect

Analyze sector return, risk, momentum, drawdown and correlation; select best sector.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketNoindia
timeframeNo1y
Behavior2/5

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

Without annotations, the description carries the full burden of behavioral disclosure. It does not state whether the tool is read-only, what data source it uses, how 'best sector' is determined, or what the return format is. This is a significant gap for an analysis tool.

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?

The description is a single sentence that front-loads the key metrics and ends with a clear action. Every word is necessary; there is no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations and output schema, and the presence of many sibling analysis tools, this description is too sparse. It does not explain input constraints, output structure, or how it differs from alternatives, leaving the agent under-informed for reliable 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%, and the description does not explain the 'market' or 'timeframe' parameters. The default values give some hints, but the agent is left to guess valid values such as country codes or timeframe formats. The description adds no semantic meaning beyond the parameter names.

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 analyzes sector-level metrics (return, risk, momentum, drawdown, correlation) and selects the best sector. It distinguishes itself from single-metric siblings like analyze_momentum and analyze_statistics by covering multiple dimensions plus a selection action.

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

Usage Guidelines2/5

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

No explicit guidance is provided about when to use this tool versus sibling analyzers (e.g., analyze_momentum, analyze_trend). There are no exclusions, prerequisites, or alternative suggestions, leaving the agent to infer usage solely from the purpose.

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

analyze_statisticsAInspect

Statistical behavior: log_return, zscore, skew, kurtosis, entropy.

Runs all statistical indicators for the ticker, or only the subset named in
`indicators`. `period` sets the history window: "1d","5d","1mo","3mo",
"6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses behavioral traits: it runs all indicators by default, the period parameter restricts the lookback window, and the allowed period values are enumerated. It does not explicitly state that the operation is read-only or describe the output format, but the nature of 'statistical behavior' implies computation without side effects. The description provides enough behavioral context for an agent to understand what the tool does and how to scope it.

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?

The description is exactly two sentences. The first sentence front-loads the core purpose by listing the indicators, and the second sentence explains the key parameters. Every word earns its place; there is no redundancy or fluff.

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 tool has 3 parameters, no annotations, and no output schema. The description covers the parameters and default behavior, which is sufficient for basic usage. However, since there is no output schema, the description would benefit from stating what the return value looks like (e.g., a dict mapping indicator names to values). This minor gap prevents a perfect score.

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 description coverage is 0%, so the description must compensate. It does so effectively: it explains `indicators` (subset of named indicators, default all) and `period` (with enum values and default '2y'). The `ticker` parameter is self-explanatory as the required stock symbol. The description adds meaning to all parameters beyond the raw schema.

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 computes statistical indicators (log_return, zscore, skew, kurtosis, entropy) and explicitly says it 'runs all statistical indicators for the ticker'. It uses a specific verb ('runs') and resource ('statistical indicators'), and distinguishes itself from sibling tools like analyze_momentum or analyze_volatility by naming distinct statistical metrics.

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 how to use the tool: run all indicators by default or specify a subset via `indicators`, and set the `period` for the history window. It implies this tool is for statistical behavior analysis, which separates it from momentum/trend/volatility tools, but it does not explicitly state when not to use it or mention alternatives.

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

analyze_technical_levelsAInspect

Moving averages and price levels: sma, ema, hma, kama, ichimoku, supertrend, vwap, vwma.

Runs all level indicators for the ticker, or only the subset named in
`indicators`. `period` sets the history window: "1d","5d","1mo","3mo",
"6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the default behavior of running all indicators, the ability to run a subset, and the valid `period` values with default '2y'. This adds meaningful context beyond the raw schema.

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?

The description is compact and efficient: one sentence listing the indicators and a second explaining the behavior and parameter defaults. No unnecessary words or repetition.

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 covers purpose, parameters, and defaults, which is sufficient for a simple analysis tool. While it doesn't specify the output format, the absence of an output schema and the straightforward indicator-calculation nature make this acceptable.

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 0%, so the description compensates by explaining `period` as a history window with enumerated values and `indicators` as a subset filter for the listed indicators. `ticker` is self-explanatory, so all parameters are effectively clarified.

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 runs moving averages and price level indicators (sma, ema, hma, kama, etc.) for a ticker. This specific enumeration distinguishes it from sibling tools like analyze_momentum or analyze_volatility.

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 implies when to use the tool (for technical levels) and explains how to limit scope via the `indicators` parameter. However, it does not explicitly mention alternatives or when not to use it, slightly limiting guidance.

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

analyze_trendAInspect

Trend strength and direction: adx, aroon, chop, psar, vortex, zigzag.

Runs all trend indicators for the ticker, or only the subset named in
`indicators`. `period` sets the history window: "1d","5d","1mo","3mo",
"6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses key behaviors: it runs either all trend indicators or a subset named in 'indicators', and the 'period' parameter controls the history window with a clear default. It does not specify output format or error handling, but for a read-only analysis tool this is adequate.

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?

The description is concise and front-loaded: the first sentence states purpose and lists indicators, the second explains mechanics. Every sentence adds value, with no fluff or repetition of schema fields.

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?

For a simple 3-parameter tool with no output schema, the description covers the essential usage details: which indicators, how to select a subset, and valid period values. It omits explicit return-value information, but the tool's nature as an analysis function makes the output inferable. Slight gap in not stating output shape prevents a 5.

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 description coverage is 0%, so the description must compensate. It explains the 'indicators' parameter by listing valid indicator names and explains the 'period' parameter by listing all enum values and the default. It adds significant meaning beyond the bare schema, though 'ticker' is self-explanatory.

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's purpose: 'Trend strength and direction' and lists the specific indicators (adx, aroon, chop, psar, vortex, zigzag). It uses a specific verb ('Runs') and resource ('ticker'), distinguishing it from sibling tools like analyze_momentum and analyze_volatility by focusing on trend indicators.

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 provides clear context for when to use this tool, implying trend analysis, and shows how to customize via the 'indicators' and 'period' parameters. However, it does not explicitly mention alternatives or exclusions, such as 'for momentum, use analyze_momentum', so it stops short of full when-to-use/not-to-use guidance.

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

analyze_volatilityAInspect

Volatility and bands: atr, bbands, donchian, kc, stdev, ui.

Runs all volatility indicators for the ticker, or only the subset named in
`indicators`. `period` sets the history window: "1d","5d","1mo","3mo",
"6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior3/5

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

With no annotations, the description carries the full burden. It explains that the tool runs either all listed indicators or the subset specified, and that `period` selects the history window. However, it does not mention output format, error handling, or explicitly state that the operation is read-only (though it is implied). This is adequate but lacks some behavioral context.

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?

The description is only two sentences long, front-loaded with the indicator list. It is concise, with every sentence providing necessary information: what the tool does and how the parameters behave. No wasted words or redundancy.

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 covers the core purpose and all parameters, making it usable for a straightforward analysis tool. However, it does not describe the output structure or any edge cases, and there is no explicit comparison to sibling tools. Given the simplicity of the tool and lack of an output schema, this is reasonably complete but not exhaustive.

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 0%, so the description must compensate. It explains the `period` values and default, the `indicators` parameter as an optional subset selector, and the ticker via context ('for the ticker'). This adds meaningful semantics beyond the raw schema, which only lists types and enums.

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 'Runs all volatility indicators for the ticker, or only the subset named in `indicators`.' It names specific indicators (atr, bbands, donchian, kc, stdev, ui) and distinguishes itself from sibling tools like analyze_trend and analyze_momentum through the explicit focus on volatility and bands.

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

Usage Guidelines3/5

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

Usage is implied by the name and indicator list, but there is no explicit guidance on when to use this tool versus alternatives such as analyze_trend or analyze_statistics. The description does not provide 'use this when...' or 'instead of...' guidance, so it falls into implied usage rather than clear context.

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

analyze_volumeAInspect

Volume confirmation: obv, cmf, mfi, ad, pvt.

Runs all volume indicators for the ticker, or only the subset named in
`indicators`. `period` sets the history window: "1d","5d","1mo","3mo",
"6mo","1y","2y","5y","10y","ytd","max" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
indicatorsNo
Behavior3/5

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

No annotations are provided, so the description must carry the transparency burden. It explains that the tool runs all volume indicators or a named subset, and that period defaults to '2y' with enumerated values. However, it does not disclose output format, data frequency, ticker validation, or error behavior.

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?

The description is concise and front-loaded, with the purpose stated in the first line and parameter semantics in two clear sentences. No unnecessary words.

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?

The description covers the tool's action and parameters well for a 3-parameter tool, but with no output schema and no annotations, it omits what the return value looks like and any underlying assumptions (e.g., daily bars, adjusted prices). This leaves notable gaps for a tool in an analysis family.

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 description coverage is 0%, so the description compensates well: it enumerates the valid indicator names (obv, cmf, mfi, ad, pvt) and restates the period enum with default, adding meaning beyond the bare arrays and strings in the schema.

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 clearly states the tool runs volume confirmation indicators (obv, cmf, mfi, ad, pvt) for a ticker, distinguishing it from sibling analysis tools by its volume focus. The verb 'runs' and resource 'volume indicators' are specific, though the opening phrase is telegraphic.

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

Usage Guidelines3/5

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

The description implies a use case via 'Volume confirmation' but does not explicitly say when to use this tool over alternatives like analyze_momentum or analyze_trend. There are no exclusions or alternative tool references, so guidance is only implicit.

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

backtest_macd_momentumCInspect

Run MACD momentum strategy backtest for one ticker.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
Behavior2/5

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

The description lacks any behavioral disclosure beyond the basic action. It does not state what the backtest returns, whether it is read-only, if it requires authentication, or any limitations. With no annotations available, the description carries the full burden and fails to inform the agent about outputs or side effects.

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 concise with two short sentences, front-loading the core purpose. The second sentence about period is somewhat redundant with the schema, but it does add a clarifying example. There is no fluff, though it could be better structured with separate parameter sections.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and many sibling tools, the description is incomplete. It tells what the tool does but not what the agent should expect in return, how long it runs, or how it differs from similar backtest tools. This leaves the agent under-informed for selection and result interpretation.

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 coverage is 0%, so the description must explain both parameters. It explains 'period' (history window with examples and default), but it omits 'ticker' entirely, which is required. The period information mostly duplicates the schema's enum and default, adding only the phrase 'history window' for context.

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 ('Run') and resource ('MACD momentum strategy backtest') plus scope ('for one ticker'). This clearly distinguishes it from sibling backtest tools like backtest_sma_crossover or backtest_rsi_mean_reversion.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus the many sibling backtest and analysis tools. There is no mention of alternatives, prerequisites, or scenarios where another tool would be more appropriate.

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

backtest_macd_trend_followerBInspect

Run MACD trend follower strategy backtest for one ticker.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
fastNo
slowNo
periodNo2y
signalNo
tickerYes
Behavior2/5

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

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only repeats the action 'Run ... backtest' without explaining side effects, output format, data requirements, or whether this is a read-only operation. The single-ticker scope is mentioned, but behavior beyond the basic command is opaque.

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?

The description is extremely concise: one sentence for purpose and one for the period parameter. It is front-loaded with the core action and adds only a minimal, useful parameter note. No filler or redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no output schema, and no annotations, the description is too thin. It omits return value expectations, how to interpret backtest results, data source behavior, or limitations of the strategy. An agent would not know what output to expect or how to set fast/slow/signal parameters confidently.

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%, yet the description only documents the `period` parameter with examples and a default. The fast, slow, signal, and ticker parameters are completely unaddressed. While their names are somewhat self-explanatory, the description does not explain how they affect the MACD calculation or that ticker is required, so it fails to compensate 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 opens with a specific verb and resource: 'Run MACD trend follower strategy backtest for one ticker.' This clearly identifies the tool's function and scope, and distinguishes it from sibling backtest tools by naming the exact strategy variant (e.g., trend follower vs. MACD momentum).

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives such as backtest_macd_momentum or other strategy backtests. It does not state conditions like 'use for trending markets' or mention any exclusions or sibling tools, leaving the agent without decision criteria.

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

backtest_mean_reversion_rsi_bbCInspect

Run RSI + Bollinger Band mean-reversion strategy backtest.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo2y
tickerYes
rsi_lowerNo
rsi_upperNo
Behavior2/5

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

With no annotations, the description must disclose behavioral traits, but it only adds that `period` is a history window. It omits any mention of output format, data access, side effects, or operational constraints, leaving the agent without critical execution context.

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 extremely concise: two sentences with no filler. The structure front-loads the purpose and then details a key parameter, which is efficient, though it is too sparse to fully inform an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 parameters and no output schema, this description is a skeleton. It fails to describe return values, how RSI and Bollinger Band inputs interact, or common usage scenarios, making it incomplete for reliable tool 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%, so the description must compensate—it explains `period` with examples and a default but says nothing about `ticker`, `rsi_lower`, or `rsi_upper`. The RSI/Bollinger thresholds are left to inference from parameter names, which is insufficient.

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's action ('Run') and specific strategy ('RSI + Bollinger Band mean-reversion backtest'), which distinguishes it from sibling backtest tools like backtest_rsi_mean_reversion (RSI only) and backtest_macd_momentum. The resource (backtest) and scope are explicit.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus similar backtest strategies in the sibling set. It neither mentions alternative tools nor provides context like 'use this for ranging markets'—only an imperative statement.

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

backtest_rsi_mean_reversionCInspect

Run RSI mean-reversion strategy backtest.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
lowerNo
upperNo
lengthNo
periodNo2y
tickerYes
Behavior2/5

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

No annotations are provided, and the description only states the action without disclosing side effects, return format, or input validation. It does not explain what output the backtest produces or whether any data is mutated, leaving the agent with little behavioral understanding.

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 two sentences with no fluff, front-loading the purpose and then providing a parameter detail. It is appropriately short, though the brevity borders on under-specification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters, no annotations, and no output schema, this description is severely lacking. It does not describe required parameters, output, or behavior, making it difficult for an agent to invoke correctly.

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?

The description explains only the `period` parameter with examples, but leaves `lower`, `upper`, `length`, and `ticker` undefined. With schema description coverage at 0%, the description fails to compensate for the missing property descriptions.

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 clearly states the tool runs an RSI mean-reversion strategy backtest, with a specific verb and resource. It is distinguishable from sibling tools like backtest_macd_momentum by the strategy name, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. The strategy name implies a context, but the agent is left to infer when this backtest is appropriate.

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

backtest_sma_crossoverCInspect

Run SMA crossover strategy backtest.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
fastNo
slowNo
periodNo2y
tickerYes
Behavior1/5

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

There are no annotations, and the description offers no behavioral details such as data source, output format, or side effects. It merely states 'run backtest' without disclosing what the agent should expect or any limitations.

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 concise and front-loaded with the core purpose. The period note is useful and directly relevant. No extraneous content; however, it is so brief that it sacrifices completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no annotations, and 4 parameters but only one explained, the description is materially incomplete. It fails to describe fast/slow parameters or return value expectations, making it insufficient for a strategy backtest tool.

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%, so the description must compensate. It explains only `period` (history window with examples and default), but omits fast, slow, and ticker. This leaves the core SMA parameters undefined, adding only partial value.

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's function: 'Run SMA crossover strategy backtest.' This uses a specific verb (Run) and resource (SMA crossover strategy backtest), distinguishing it from sibling tools like backtest_macd_momentum or backtest_rsi_mean_reversion.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description does not mention any context, prerequisites, or exclusions, leaving the agent to infer usage solely from the name.

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

backtest_trend_crossoverCInspect

Run trend crossover strategy backtest.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
fastNo
slowNo
periodNo2y
tickerYes
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the action and a parameter note, without describing output, side effects, or safety profile. 'Backtest' implies read-only, but that's not explicitly stated, and no details about default behavior or limitations are given.

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

Conciseness3/5

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

The description is short and front-loaded, with no wasted words. However, it is under-specified for a tool with four parameters and no output schema, trading completeness for brevity. It earns a median score because it is appropriately concise but not sufficiently informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has four parameters, no annotations, and no output schema, the description is notably incomplete. It explains only one parameter, omits output expectations, and provides no context about the strategy logic or how results are presented. This leaves significant gaps for an agent trying to select and invoke the tool correctly.

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%, so the description must compensate. It only adds meaning for `period` (calling it a 'history window' with examples), but leaves `fast`, `slow`, and `ticker` unexplained. The schema already provides enums and defaults for period, so the added value is marginal, and the core parameters remain undocumented.

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 clearly states the tool runs a 'trend crossover strategy backtest' with a specific verb and resource. It distinguishes itself from other backtest tools by naming the strategy type, though it doesn't explicitly differentiate from sibling tools like backtest_sma_crossover.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. No mention of exclusions, prerequisites, or preferred scenarios. Sibling tools include many other backtest strategies, so the lack of usage guidance leaves the agent to guess.

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

backtest_volatility_breakoutCInspect

Run volatility breakout strategy backtest.

`period`: history window, e.g. "1y","2y","5y","10y" (default "2y").
ParametersJSON Schema
NameRequiredDescriptionDefault
lengthNo
periodNo2y
tickerYes
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It only says 'Run volatility breakout strategy backtest' and documents the period parameter, offering no details on output, side effects, permissions, or edge cases. It does not contradict annotations (none exist), but it reveals almost nothing about the tool's runtime behavior.

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 concise and front-loaded, consisting of a clear purpose line followed by a parameter note. While it is economical, it lacks substantive content, making it efficient but not fully informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and a non-trivial parameter like 'length' (likely a lookback period), the description is incomplete. It does not mention what the backtest returns or how parameters influence results, leaving significant gaps for an agent to select and invoke the tool correctly.

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?

The description only explains 'period' with examples and default, but omits semantic meaning for 'length' and 'ticker' beyond what the schema already provides (e.g., integer, string). With schema description coverage at 0%, the description fails to compensate for the undocumented parameters.

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 'Run volatility breakout strategy backtest', which is a specific verb ('Run') and resource (volatility breakout backtest). It clearly identifies the tool's function, though it does not explicitly differentiate it from sibling backtest tools beyond the strategy name.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus the many sibling backtest tools (e.g., backtest_sma_crossover). The description does not mention alternatives or when-not-to-use, leaving the agent to infer usage solely from the name.

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

build_trade_planAInspect

Build a sized trade plan: entry, stop, share count, R targets, invalidation.

The answer to "what do I do?": given account equity and the percent of it
you are willing to risk, returns an entry reference (last close), a
structural stop (tighter of recent swing level or 2x ATR, never inside
daily noise), the exact number of shares so a stop-out loses only the
risk budget, 1R/2R/3R targets, a liquidity check (order as % of 20-day
turnover), and a one-line invalidation. Educational analysis, not
investment advice.
ParametersJSON Schema
NameRequiredDescriptionDefault
equityYes
periodNo1y
tickerYes
risk_pctNo
directionNolong
Behavior4/5

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

With no annotations provided, the description carries the full burden, and it delivers a detailed account of the tool's behavior: it returns entry, structural stop logic, exact share count, R targets, liquidity check, and invalidation. It also includes the educational disclaimer. While it doesn't mention side effects like rate limits or auth, those may be irrelevant, and the algorithm transparency is commendable.

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?

The description is concise and front-loaded: the first sentence gives a crisp summary, and the second expands with valuable specifics. Every sentence earns its place without fluff or repetition.

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 thoroughly explains what the tool returns and the core logic, making it complete enough given the absence of an output schema and annotations. It could mention data sources or edge cases, but the essentials are well covered, and the disclaimer adds context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has no parameter descriptions (0% coverage), so the description must compensate. It clearly explains 'equity' as account equity and 'risk_pct' as the percent of equity willing to be risked. However, it does not describe 'ticker', 'period', or 'direction', leaving these parameters with only their names and types to guide the agent. Partial compensation only.

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: 'Build a sized trade plan', clearly stating the tool's purpose. It enumerates the key outputs (entry, stop, share count, R targets, invalidation), distinguishing it from sibling tools that perform analysis or backtesting rather than generating actionable trade plans.

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

Usage Guidelines3/5

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

The description positions the tool as 'the answer to what do I do?', which implies usage when a user wants an actionable plan based on equity and risk. However, it does not explicitly state when to use this over alternatives or when not to use it, so the guidance is implied rather than direct.

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

find_sector_stock_pipeline_toolCInspect

Run a multi-step pipeline: sector performance -> stock ranking -> strategy selection.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketNoindia
top_n_stocksNo
top_n_sectorsNo
Behavior2/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 of disclosing behavioral traits. It does not state whether the tool performs read-only analysis, requires authentication, has side effects, or returns intermediate/final results. It only lists the pipeline steps without any information about execution behavior, runtime, or data persistence, leaving the agent in the dark about important operational aspects.

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?

The description is a single, front-loaded sentence that efficiently conveys the pipeline's flow using an arrow notation. Every word contributes: it names the action, the resource, and the three stages in order. There is no redundancy, filler, or unnecessary detail, making it a model of conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a non-trivial multi-step pipeline tool with no annotations, no output schema, and no parameter descriptions in either the schema or the description. The description gives only the pipeline's steps, omitting critical operational details such as expected inputs, output format, failure modes, and how the steps interact with the parameters. For an agent to select and invoke this tool correctly, far more contextual information is needed, so the description is severely incomplete.

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?

The schema has zero description coverage for its three parameters, and the description does not mention any of them or explain how market, top_n_stocks, and top_n_sectors relate to the pipeline steps. The parameter names and the step names provide some implicit mapping, but the description itself adds no direct semantic meaning, so it fails to compensate for the lack of schema descriptions.

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 clearly identifies the tool as a multi-step pipeline with a specific sequence (sector performance, stock ranking, strategy selection), which distinguishes it from single-purpose sibling tools like analyze_momentum or analyze_statistics. It uses a specific verb ('Run') and names a resource (the pipeline) with its stages, though it doesn't clarify what 'strategy selection' entails or what the output looks like, preventing a perfect score.

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

Usage Guidelines2/5

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

The description gives no explicit guidance on when to use this tool versus the many sibling analysis tools. It merely states the pipeline's existence and steps; there are no scenarios, prerequisites, or exclusions mentioned. The agent is left to infer usage solely from the high-level steps, so this is minimally useful.

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

generate_chart_packCInspect

Generate the full institutional chart suite for dashboard rendering.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountNo
marketNous
tickersYes
timeframeNo2y
company_tickerNo
Behavior2/5

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

With no annotations, the description carries the full burden. It hints that the output is a suite of charts intended for dashboards, but it does not disclose return structure, whether the operation has side effects, required permissions, or any limitations. This is minimal beyond what the tool name implies.

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

Conciseness3/5

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

The description is a single sentence with no wasted words, but it is under-specified for a tool with five parameters. While concise in length, it lacks the necessary detail to be considered well-structured for its purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no annotations, no output schema), the description is severely incomplete. It does not explain what the chart suite contains, what the parameters do, how return values are presented, or how it relates to sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description mentions none of the five parameters (tickers, amount, market, timeframe, company_ticker). It does not compensate for the lack of schema descriptions, leaving parameter meanings completely unexplained.

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 uses a specific verb ('Generate') and identifies the resource ('full institutional chart suite for dashboard rendering'), making the core action clear. However, it does not differentiate from sibling tools like generate_charts or plot_charts, which likely serve similar purposes.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The phrase 'for dashboard rendering' suggests a context, but there is no explicit mention of when to prefer this over generate_charts or other chart-related tools, nor any exclusions or prerequisites.

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

generate_chartsCInspect

Generate charts for portfolio, strategy, quant, fundamentals, and sector pipeline.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountNo
marketNous
tickersYes
timeframeNo2y
company_tickerNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

With no annotations provided, the description must disclose behavioral traits, but it does not. It only states the action without mentioning side effects, whether the operation is read-only, or any limitations or prerequisites. The agent cannot infer safety or side effects from this description alone.

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?

The description is a single, front-loaded sentence that clearly communicates the core purpose in only 12 words. It avoids unnecessary details and is well-structured, with the verb and resource first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, 0% schema coverage, and no annotations, the description is far too minimal. It does not explain how parameters relate to chart categories, what values are valid, or the expected behavior. The presence of an output schema does not compensate for the missing input semantics.

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?

The schema has 0% description coverage, and the tool description says nothing about the parameters. Field names like 'amount', 'timeframe', 'market', and 'company_ticker' are ambiguous without further explanation. The description fails to compensate for the lack of schema documentation, leaving the agent to guess parameter formats and meanings.

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 clearly states the action 'Generate charts' and specifies scope via 'portfolio, strategy, quant, fundamentals, and sector pipeline.' It is not tautological and provides concrete context. However, it does not distinguish itself from sibling tools like generate_chart_pack or plot_charts, which likely overlap in functionality.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention any exclusions, prerequisites, or situations where another tool would be more appropriate. Given overlapping sibling tools, the lack of usage guidance is a significant gap.

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

generate_optimized_verdictAInspect

Optimize a portfolio and return backtest metrics plus a final verdict.

Args:
    tickers: List of ticker symbols (e.g. ["AAPL", "RELIANCE.NS"])
    amount: Investment amount used for allocation context
    optimize_type: Optimization mode. Supported values are:
        "mvo", "hrp", "max_sharpe", "min_volatility",
        "black_litterman", "cvar", "semivariance".
    period: History window for price data, e.g. "1y", "2y", "5y", "10y"
        (default "2y"). Longer windows give the optimizer and backtest
        more data at the cost of a slower fetch.
ParametersJSON Schema
NameRequiredDescriptionDefault
amountNo
periodNo2y
tickersYes
optimize_typeNomvo
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses that longer periods slow the fetch, indicating external data retrieval. However, it doesn't explain that the tool is read-only, what a 'final verdict' entails, or any rate limits. The behavior is partially transparent.

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?

The description is concise and well-structured: a one-sentence summary followed by an Args list. Each line adds value, with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should explain return values. It only says 'backtest metrics plus a final verdict' without specifying metrics or verdict structure. For a complex optimization tool with multiple output possibilities, this is a gap; the agent may not know what to expect.

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?

Despite 0% schema coverage in the description, the Args section thoroughly explains each parameter: tickers with an example, amount for allocation context, optimize_type with supported values, and period with defaults and a trade-off. This adds meaning beyond the schema's enum/default definitions.

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 clearly states the tool's function: 'Optimize a portfolio and return backtest metrics plus a final verdict.' This uses specific verbs and resources, distinguishing it from sibling backtest/analysis tools that focus on single indicators or charts rather than portfolio optimization with a verdict.

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

Usage Guidelines3/5

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

The description provides parameter guidance but no explicit when-to-use vs alternatives. It implies use for portfolio optimization tasks and notes the period trade-off, but doesn't mention that for single-stock analysis one should use analyze_* or backtest_* tools.

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

get_company_profileAInspect

Return a full company snapshot with business, valuation, and market metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYes
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states the tool returns a snapshot, but doesn't disclose side effects, data freshness, or permissions. It's not misleading but lacks behavioral depth.

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?

The description is a single sentence of 12 words, front-loaded with the main action. Every word earns its place, avoiding unnecessary detail or repetition of schema information.

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?

The tool is simple (1 param, no output schema), but the description only lists three broad categories without specifying expected response structure or edge cases. It provides a reasonable overview but is not fully complete for an agent to know exactly what will be returned.

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 coverage is 0%, and the description does not mention the 'ticker' parameter or its role. Although ticker is self-explanatory for a financial tool, the description fails to explicitly link it to the snapshot, adding no semantic value beyond the schema field name.

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 uses a specific verb ('Return') and resource ('full company snapshot'), and specifies content categories (business, valuation, market metadata). This clearly distinguishes it from sibling tools like get_quote (price quote) and analyze_* tools (technical analysis).

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

Usage Guidelines3/5

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

The description implies usage when a comprehensive company overview is needed, but does not explicitly state when to use this tool over alternatives or mention any exclusions. No alternatives or when-not conditions are provided.

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

get_newsAInspect

Recent news headlines for a ticker via Yahoo Finance's news feed.

Returns structured articles (title, publisher, url, published_at,
summary) for you to read and synthesize. Not a scraper -- uses Yahoo's
aggregated feed, so coverage is strongest for large-cap US and Indian
names.
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
tickerYes
Behavior4/5

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

With no annotations, the description carries full transparency burden. It discloses the data source (Yahoo's aggregated feed), coverage limitations (strongest for large-cap US and Indian names), and the non-scraper nature. This is valuable context beyond the tool name. It does not mention rate limits or pagination, but for a news read tool, it is reasonably transparent.

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?

The description is two sentences, front-loaded with the core purpose, followed by return format and a caveat. Every sentence adds value with no fluff, making it highly efficient and well-structured.

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?

For a simple 2-parameter tool with no output schema, the description covers the purpose, how to use it (read and synthesize), the return fields, and a coverage limitation. It lacks explicit mention of sorting/ordering or handling of edge cases, but given the tool's simplicity, it is quite complete for an agent to invoke correctly.

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%, so the description must compensate. The description clarifies the 'ticker' parameter implicitly by saying 'for a ticker', but the 'limit' parameter is entirely undocumented. Without any schema descriptions, the agent gets no help on parameter meaning, formats, or examples, leaving a significant gap.

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 returns recent news headlines for a ticker via Yahoo Finance's news feed, with a specific verb and resource. It also distinguishes itself from a scraper, which adds precision. While no sibling news tool exists, this is a complete and specific purpose statement.

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

Usage Guidelines3/5

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

The description implies usage in the context of reading and synthesizing news, but it does not explicitly state when to use this tool versus alternatives. The 'not a scraper' note hints at a constraint but does not name an alternative for full news scraping. Usage guidance is present but implied rather than explicit.

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

get_quoteAInspect

Current price snapshot for one or more tickers (US and Indian).

Returns last price, day change %, day and 52-week ranges, position within
the 52-week range, and volume vs 3-month average, with an `as_of`
timestamp. US quotes are near-real-time; NSE/BSE quotes are ~15 minutes
delayed (disclosed in the response). For to-the-second Indian prices
during market hours, supplement with a live web search.
ParametersJSON Schema
NameRequiredDescriptionDefault
tickersYes
Behavior4/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It honestly discloses the delay for Indian quotes ('NSE/BSE quotes are ~15 minutes delayed') and notes that this is 'disclosed in the response.' It also specifies the return fields (last price, day change, ranges, volume context) and the `as_of` timestamp, providing useful behavioral context beyond a simple 'get quote.'

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?

The description is extremely concise: two short paragraphs, front-loaded with the core purpose, followed by a compact list of return fields and a note on data latency. No sentence is wasted, and the most important information appears first. It is an excellent example of efficient description writing.

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?

For a tool with a single array parameter and no output schema, this description is remarkably complete. It explains exactly what data is returned, the staleness characteristics for different markets, and the timestamp field. It also gives a practical tip for getting fresher Indian data. The tool's behavior is fully contextualized without needing an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides zero description for the 'tickers' parameter, so the description must compensate. It states 'one or more tickers' and mentions 'US and Indian' markets, adding some meaning beyond the bare schema. However, it does not specify the expected ticker format (e.g., exchange prefixes like 'NSE:RELIANCE'), leaving ambiguity about how to represent Indian securities.

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 'Current price snapshot for one or more tickers (US and Indian)' – a clear, specific verb-resource pairing that immediately communicates the tool's function. It also distinguishes itself from sibling analysis tools (momentum, technical levels, etc.) by focusing on snapshot data rather than derived analytics.

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 clearly states when to use the tool (getting current price snapshots) and provides an explicit supplement: 'For to-the-second Indian prices during market hours, supplement with a live web search.' It does not explicitly name alternative tools for analysis, but the context of the sibling list makes the distinction obvious.

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

plot_chartsCInspect

Alias for chart generation; kept for natural plotting language in clients.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountNo
marketNous
tickersYes
timeframeNo2y
company_tickerNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

The description discloses that the tool is an alias, which is a behavioral trait, but it reveals nothing about return format, side effects, or requirements. With no annotations provided, the description carries the full burden and fails to provide meaningful behavioral context.

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

Conciseness2/5

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

The description is a single short sentence, but it is under-specified rather than concise. It does not provide enough value to earn its place, offering only a vague alias statement without useful details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, no annotations, no schema descriptions), the description is far too minimal. It fails to explain what the tool does with the tickers, how the parameters influence output, or what the output schema represents. This is inadequate for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides no information about the five parameters (tickers, amount, market, timeframe, company_ticker). Since schema description coverage is 0%, the schema itself also lacks descriptions, so the description does not compensate at all.

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

Purpose3/5

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

The description states it is an alias for chart generation, which indicates the tool's purpose. However, it does not specify what chart generation entails or how it differs from sibling tools like generate_charts, leaving some ambiguity.

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

Usage Guidelines2/5

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

The phrase 'kept for natural plotting language in clients' vaguely suggests a use case, but it provides no explicit guidance on when to use this tool versus alternatives such as generate_charts or generate_chart_pack. No exclusions or conditions are mentioned.

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

price_alertAInspect

Persistent price alerts stored server-side (survive restarts, one-shot).

Actions:
  set    -- watch a level: price_alert("set", ticker="RELIANCE.NS",
            level=1270, direction="below", note="stop level")
  list   -- show all active alerts
  delete -- remove an alert by alert_id
  check  -- fetch current prices for every active alert and return which
            fired; fired alerts deactivate so they never spam.

A server cannot push messages into Claude, so pair this with a scheduled
task that calls action='check' on a cadence (e.g. every 30 minutes during
market hours) and notifies the user only when 'triggered' is non-empty.
ParametersJSON Schema
NameRequiredDescriptionDefault
noteNo
levelNo
actionYes
tickerNo
alert_idNo
directionNo
Behavior4/5

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

No annotations are provided, so the description must carry the burden of behavioral disclosure. It reveals persistence, one-shot deactivation, and the inability to push messages, which are critical behaviors. It lacks details on error handling or authentication, but the most important traits are covered.

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?

The description is concise (around 100 words) and front-loaded with the core purpose. The action list and scheduling note are efficiently presented with no redundant filler, making every sentence valuable.

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?

Although there is no output schema, the description explains that 'check' returns fired alerts and that they deactivate. It covers the essential workflow for all actions, but could be slightly strengthened by stating what other actions return (e.g., set returns an alert_id). Overall, it is fairly complete for a tool with this complexity.

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?

Given 0% schema description coverage, this description compensates by explaining each action's parameter usage through an example and indicating role of alert_id in delete. It doesn't exhaustively document every parameter, but the provided context is sufficient for correct invocation.

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 defines the tool as managing persistent price alerts, enumerating four specific actions (set, list, delete, check) with examples. It distinguishes this from sibling analysis tools by emphasizing alert storage and retrieval.

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?

The description explicitly states when to use the tool and how to pair it with a scheduled task for checking alerts, addressing the server push limitation. It provides a concrete usage pattern with cadence suggestions and notification guidance, which is strong usage direction.

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

scan_watchlistAInspect

Scan a watchlist and report which names did something actionable.

For each ticker: last close, day change, gap, distance from the
20/50/200-day averages and the 52-week high, ATR%, and volume vs its
20-day average -- plus which rules fired (near_52w_high, volume_spike,
crossed_above/below_200dma, at_20dma, gapped_over_1atr). Sorted
most-actionable first. The Sunday-evening tool: run it over your list,
then feed interesting names into build_trade_plan.
ParametersJSON Schema
NameRequiredDescriptionDefault
periodNo1y
tickersYes
Behavior4/5

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

With no annotations, the description carries full behavioral burden. It discloses output format (metrics, rules fired, sorted by actionability) and implies a read-only scan. It does not mention data freshness, rate limits, or whether any state changes occur, but for a scan tool the behavior is well covered.

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 well-structured and front-loaded: the first sentence states the primary purpose, followed by a detailed enumeration of outputs. The list of rules and metrics is necessary and earns its place, though it is slightly dense.

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?

Without an output schema or annotations, the description provides substantial detail about return values (metrics, rules, sorting). It adds workflow context and names the natural follow-up tool. Missing explanation of the 'period' parameter and the exact threshold for 'actionable' keeps it from being fully complete.

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 coverage is 0%, so description must compensate. It clarifies the 'tickers' parameter ('run it over your list'), but the 'period' parameter with its enum is never mentioned or explained. An agent has no way to know if changing the period affects the metrics or which period to set for a given use case.

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?

Description clearly states the tool scans a watchlist and reports actionable names, listing specific metrics and rules. It distinguishes itself from siblings by naming build_trade_plan as a downstream step, making its niche clear.

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?

Provides explicit usage context ('The Sunday-evening tool') and workflow guidance ('feed interesting names into build_trade_plan'). However, it does not name alternative tools or state when not to use it, leaving some ambiguity.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Public MCP server for Indian stock market analysis covering Nifty 500 stocks with 12 tools (quotes, technical indicators, patterns, screening) across daily, 15-minute, and 5-minute timeframes.
    1
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    MCP server for stock analysis providing 30 tools across technical analysis, Yahoo Finance, IDX/BEI, backtesting, news sentiment, and trade math, with no TradingView Desktop required and VPS compatibility.
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    MCP server for Indian stock market data — search companies, analyze fundamentals, compare stocks, browse sectors and screens.
    11
  • F
    license
    -
    quality
    F
    maintenance
    The MCP Trader Server conducts comprehensive technical analysis on stocks, offering insights into trends, momentum indicators, volatility metrics, and volume analysis to support stock trading decisions.
    273

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.