Skip to main content
Glama
Johnhyeon

StockLens

by Johnhyeon

get_multi_chart_stats

Read-onlyIdempotent

Fetch aggregate stats for up to 100 stocks in one parallel call, including current price, high/low, drawdown, and period return, to screen for conditions like 52-week drawdown.

Instructions

차트통계벌크 — 여러 종목의 기간 집계 통계(현재가/최고가/최저가/낙폭/기간수익률)를 한 번에 병렬 조회.

⚠️ 시계열 아님 — 집계값만 반환(캔들·OHLCV는 get_chart). 개별 get_chart N번 대신 이걸로. ⭐ 스크리닝 필수: "52주 고점 대비 -30% 종목" 등 drawdown_pct·period_return_pct 필터에 사용.

Args: codes: 종목코드 리스트 (최대 100개) days: 과거 조회 일수 (기본 260 = 52주)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNo
codesYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.1.3
    • removedInput schema / properties / days / default
      Removed value: -260
  2. First observedv0.4.0

TDQS

A4.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds behaviorally meaningful context beyond the annotations: parallel lookup, aggregate-only returns (no time series), a 100-code cap, and the screening-oriented filter semantics. It stops short of discussing partial-failure or invalid-code behavior for a batch call, so a 4 is appropriate.

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 front-loaded: purpose first, then a warning with sibling routing, then a concrete screening use case, then parameter definitions. Every line earns its place, and the formatting (⚠️ for exclusions, ⭐ for key use case) makes the structure scannable.

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 two-parameter tool with an output schema and strong annotations, the description is complete: it explains what it returns and does not return, when to use it versus get_chart, the screening scenario, parameter defaults, and the 100-item limit. No information an agent needs to invoke it correctly is missing.

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 carries the full burden for parameter meaning, and it delivers: codes is explained as a stock-code list with a 100-item maximum, and days is explained as lookback period with a default of 260 (= 52 weeks). Both parameters are fully clarified despite having no schema-level 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 names a specific verb and resource (bulk chart stats) and enumerates the exact aggregate fields returned: current price, high, low, drawdown, and period return. It explicitly differentiates itself from get_chart by stating it is not time-series and returns aggregates only, so an agent can distinguish it from siblings without opening schemas.

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 gives explicit when-to-use guidance: use it instead of N individual get_chart calls, and it is essential for screening filters like drawdown_pct/period_return_pct (with a concrete example '52-week high -30%'). It also states the exclusion condition — candles/OHLCV belong to get_chart. Nothing is left to inference.

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