Skip to main content
Glama

Get stock metrics

get_stock_metrics
Read-only

Fetch a consolidated metrics snapshot for one stock by ticker, including company identity, latest price, valuation, reported financials and a short description.

Instructions

Fetch a consolidated metrics snapshot for a single stock by ticker: identity (company, exchange, currency, sector, industry, country, ISIN), latest daily price (OHLCV), latest valuation (market cap, P/E, dividend yield, annual dividend per share), the most recent reported financials (revenue, gross/operating income, EBITDA, net income, diluted EPS, free & operating cash flow, total debt, cash, total assets, equity) and a short company description. Prices are in the listing's trading currency; financials in their own sourceCurrency. Use the listing ticker returned by search_stocks. US/European examples: AAPL, BMW, NESN. Most Asian listings keep their exchange suffix (6324.T, 0700.HK); some use bare codes (005930). Native or suffixed forms resolve only when one listing matches; search by company name or ISIN if unsure. Read-only.

Input Schema

NameRequiredDescriptionDefault
tickerYesThe stock ticker as Bullrun lists it, e.g. "AAPL", "BMW", "NESN", "6324.T", "0700.HK" or "005930". A bare numeric code is resolved when exactly one listing matches.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.7.0
    • changedInput schema / properties / ticker / description
      Previous value: -"The stock ticker exactly as listed on Bullrun, e.g. \"AAPL\", \"ABBN.SW\", \"BMW.DE\"."New value: +"The stock ticker as Bullrun lists it, e.g. \"AAPL\", \"BMW\", \"NESN\", \"6324.T\", \"0700.HK\" or \"005930\". A bare numeric code is resolved when exactly one listing matches."
  2. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the trailing 'Read-only.' is redundant. Beyond that, the description adds real behavioral context: prices are in the listing's trading currency while financials are in their own sourceCurrency, and native vs. suffixed tickers only resolve when exactly one listing matches. It stops short of mentioning data freshness/delay or the failure mode when a ticker is ambiguous.

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 the payload definition, then currency semantics, then ticker resolution rules — a sensible information order. The mid-sentence enumeration of a dozen financial line items is dense but each item is genuinely part of the contract, so it earns its space; the redundant 'Read-only.' is the only clear waste.

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?

There is no output schema, so the description must carry the return contract itself, and it does: identity fields, OHLCV, valuation ratios, the full financial statement subset, plus units/currency for each group. Combined with the ticker-resolution guidance, an agent has everything needed to call it and interpret the response.

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?

With 100% schema description coverage the baseline is 3, and the description earns an increment by elaborating the resolution semantics around the single ticker parameter — suffix retention for Asian listings (6324.T, 0700.HK) versus bare codes (005930) and the one-listing-match rule. This meaningfully reduces the chance of a malformed ticker even though it partly restates the schema text.

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?

It uses a specific verb ('Fetch a consolidated metrics snapshot') plus a clearly scoped resource (single stock by ticker) and enumerates the exact payload groups: identity, latest OHLCV, valuation, reported financials, description. This is far more specific than a name restatement, though it never explicitly contrasts itself with overlapping siblings such as get_stock_price_history, get_financial_history, or get_valuation_model, so an agent must infer that 'consolidated' means the one-shot bundle.

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?

Strong operational guidance on the input: 'Use the listing ticker returned by search_stocks', concrete US/EU/Asia examples, the exchange-suffix convention, and a fallback ('search by company name or ISIN if unsure'). What it lacks is guidance on when to prefer this snapshot over the sibling history/valuation tools, so the usage half is covered but the alternative-selection half is not.

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