Skip to main content
Glama

Price Series

price_series
Read-only

A SMALL, bounded price SERIES for drawing a chart (a device screen, a sparkline) plus headline numbers — the counterpart of stock_prices, which is a digested read with no series. Returns ticker, name, metric_kind (yield = a bond yield / rate: levels in %, moves in bps via period_change_bps / change_bps_by_period), currency, range, interval (day|week|month), period_start_date / period_end_date, last_close, period_change_pct, period_high / period_low (+ their dates), last_volume, average_daily_volume, change_pct_by_period {1w, 1mo, 3mo, ytd, 1y}, and series {dates, closes[, volumes]} as parallel arrays (≤ 65 points). EOD daily data, split/dividend-adjusted closes — the last point is the LAST CLOSE, not an intraday quote. Weekly/monthly points are each period's last close. Use this when a chart or a few chart numbers are needed; for "is it cheap / extended / why is it moving" use stock_prices or pulse(kind='asset').

Tool call template

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

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

Input Schema

NameRequiredDescriptionDefault
rangeNoChart window. `1w`|`1mo`|`3mo` → daily points; `6mo`|`1y` → weekly; `3y`|`5y` → monthly; `10y` → 2-month; `max` = full history (1–12-month points). Default `1mo`. Never more than 65 points.
tickerYesA Ava Advisor ticker OR a company/asset NAME — the SERVER resolves it (no lookup step). A COMPANY/proper NAME passes AS-IS in any language (茅台/トヨタ/삼성 resolve natively — never translate a name); a generic COMMODITY/SECTOR concept must be ENGLISH (黄金→'gold', 原油→'crude oil'). Pass the user's full request in `context` to disambiguate ('apple' company vs fruit); if still ambiguous you get a `needs_confirmation` with candidates — resolve from conversation or ask, then re-call. Exact tickers pass through (Ava Advisor suffixes: Korea .KO, Taiwan .TW, commodity .COMM, crypto .CC, FX .FOREX, bond .GB, rate .MM).
contextNoOPTIONAL but RECOMMENDED — paste the user's FULL request VERBATIM (any language: 'ขอราคาผลไม้ apple', 'compare Apple and Microsoft stock'). The server uses it to disambiguate which candidate each `ticker` entity means (the apple COMPANY vs the fruit COMMODITY; which Samsung). One context per call, shared by all tickers here.
countryNoOPTIONAL market disambiguator — pass ONLY when `ticker` is a plain NAME that collides across markets (the Thai vs Korean 'KBANK'); omit for a distinctive name or an exact ticker (an unneeded country silently 0-matches). A country NAME or ISO-2 code ('South Korea'/'KR'); the server normalizes, so pass the NAME when unsure — never GUESS a 2-letter code ('CH' = Switzerland, not China).
include_volumeNoAdd `series.volumes` (summed per week/month). Default false — closes only.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only supply readOnlyHint=true, but the description adds substantial behavioral context: EOD daily data, split/dividend-adjusted closes, the last point is a last close rather than an intraday quote, weekly/monthly points are each period's last close, and a hard ≤65-point cap. It also discloses the disambiguation flow (server-side ticker resolution, `needs_confirmation` with candidates), which an agent must know to handle a response correctly.

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?

Front-loaded with purpose and the sibling contrast before the long field enumeration, so the agent gets the decision-relevant content first. It is dense and the returned-field list is long, but each item carries information the agent does not get from an output schema (none exists here), so little is truly wasted.

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?

With no output schema, the description fully carries the burden of describing the return shape (parallel-array `series`, headline numbers, volume opt-in). For a read-only series tool with 5 parameters, nothing an agent needs to call it or interpret the result is missing.

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 100%, so the schema establishes the baseline, but the description adds interpretation the schema does not: the daily/weekly/monthly/2-month point cadence tied to `range`, the meaning of `metric_kind=yield` (levels in %, moves in bps), and the keys inside `change_pct_by_period` {1w,1mo,3mo,ytd,1y}. It stops short of adding syntax detail for `context` and `country` beyond what the schema already says.

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?

States a concrete verb+resource (a small, bounded price series for charting) and immediately contrasts it with the sibling `stock_prices` as a 'digested read with no series'. An agent can distinguish it from stock_prices, stock_prices_batch, fred_series, and wb_series without opening a schema.

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?

Gives an explicit positive condition ('when a chart or a few chart numbers are needed') and explicit negative routing ('for is it cheap / extended / why is it moving use `stock_prices` or `pulse(kind=\'asset\')`). Both alternatives and the condition that selects them are named, leaving nothing to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.