Skip to main content
Glama

Daily Price History

GetStockPrices
Read-only

Fetch daily OHLCV stock price history for technical analysis, charting, and trend analysis. Provide a ticker and optional date range to receive adjusted close and volume data.

Instructions

Get daily OHLCV (Open, High, Low, Close, Volume) price history for a stock. Useful for technical analysis, charting, and price trend analysis. A US listing is quoted in USD; a listing on another exchange (MIC:TICKER) is quoted in its own trading currency, which the output names. An Adj Close column shows the provider's split- and cash-dividend-adjusted close when it differs from Close. Captured corporate-action changes trigger a full-history refresh of the exact listed series, but the stored rows do not certify which split basis the provider returned. Do not treat reconciliation status alone as proof that a window is a consistent total-return series. Zero-volume carry-forward candles are excluded because they do not establish a traded market price.

Input Schema

NameRequiredDescriptionDefault
tickerYesStock ticker symbol (e.g., AAPL, MSFT, TSLA). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. A listing on another exchange is MIC:TICKER (XPAR:AIR, XLON:BP, XHKG:00005).
endDateNoEnd date in YYYY-MM-DD format (defaults to latest available)
startDateNoStart date in YYYY-MM-DD format (defaults to 1 year ago)
maxResultsNoMaximum number of records to return (default: 260, max: 500). When the range holds more rows the newest are kept; rows are always listed oldest to newest.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior5/5

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

With only readOnlyHint provided by annotations, the description adds substantial behavioral context: currency of foreign listings, the Adj Close adjustment basis, that corporate actions trigger a full-history refresh, the caveat that stored rows don't certify split basis, the warning not to treat reconciliation status as total-return proof, and that zero-volume carry-forward candles are excluded. This is well beyond what annotations supply.

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 purpose is front-loaded in the first sentence, followed by progressively deeper caveats about currency, adjustment, and refresh behavior. It is dense and somewhat long, but each sentence carries distinct information; only the reconciliation-status sentence borders on jargon-heavy filler.

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?

No output schema exists, so the description must carry return-value context, and it does: it names the OHLCV columns, the Adj Close column, output currency naming, and excluded zero-volume candles. It could go further on pagination/truncation interaction with maxResults, but the key behavioral surface is covered.

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?

Schema description coverage is 100%, so all four parameters (ticker, startDate, endDate, maxResults) are already documented in the schema, including MIC:TICKER conventions and the newest-rows-kept truncation rule. The description adds no parameter-level detail beyond what the schema provides, so the baseline of 3 applies.

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 specific verb and resource with scope: 'Get daily OHLCV (Open, High, Low, Close, Volume) price history for a stock.' This clearly distinguishes it from sibling tools such as GetLatestClosingPrices (latest snapshot) and indicator tools like GetBollingerBands, since it returns the raw daily series rather than a derived metric.

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 offers 'Useful for technical analysis, charting, and price trend analysis,' which implies intended use but never states when to choose this over alternatives like GetLatestClosingPrices or indicator endpoints, and gives no exclusions or prerequisites. Usage is 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.