Skip to main content
Glama

Earnings results and calendar

earnings
Read-only

Reported earnings with EPS and revenue against the consensus estimate, the beat/miss outcome, guidance direction and, where measured, the price reaction to the release; plus who reports next. Use for 'did NVDA beat', 'how did the stock react to earnings' or 'who reports this week'.

Input Schema

NameRequiredDescriptionDefault
hoursNoResults look-back in hours (1-336, default 72).
limitNoMax rows per list (1-50, default 20).
screenNoCompare EPS surprises with the issuer's own price response, or opposite EPS/revenue surprises. Screens inspect up to 200 recent earnings; missing prices cannot match a price screen. Default all.
tickerNoRestrict to one ticker, e.g. NKE.
end_utcNoExclusive end timestamp with timezone. Overrides the relative look-back window.
start_utcNoInclusive start timestamp with timezone, e.g. 2026-10-14T00:00:00-04:00.
days_aheadNoUpcoming reports window in days (0-14, default 7; 0 skips it).

Output Schema

NameRequiredDescriptionDefault
scanNo
errorNo
screenNo
resultsYes
upcomingYes
as_of_utcNo
data_noteNo
days_aheadNo
data_statusNo
query_windowNo
withheld_rowsNo
returned_countsNo
newest_result_utcNo
results_window_hoursNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedOutput schema / properties / results / items / properties / headline
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / price_response_basis
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / result_type
      Added value: +{
      +  "type": "string"
      +}
  2. Changed9 schema fields changed
    • addedInput schema / properties / end_utc
      Added value: +{
      +  "description": "Exclusive end timestamp with timezone. Overrides the relative look-back window.",
      +  "type": "string"
      +}
    • addedInput schema / properties / screen
      Added value: +{
      +  "description": "Compare EPS surprises with the issuer's own price response, or opposite EPS/revenue surprises. Screens inspect up to 200 recent earnings; missing prices cannot match a price screen. Default all.",
      +  "enum": [
      +    "all",
      +    "beat_then_fell",
      +    "miss_then_rose",
      +    "mixed_results"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / start_utc
      Added value: +{
      +  "description": "Inclusive start timestamp with timezone, e.g. 2026-10-14T00:00:00-04:00.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / error
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / query_window
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / results / items / properties / comparison
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / scan
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / screen
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / withheld_rows
      Added value: +{
      +  "type": "object"
      +}
  3. Changed19 schema fields changed
    • addedOutput schema / properties / as_of_utc
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / data_note
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / data_status
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / newest_result_utc
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / results / items / properties / currency
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / eps_unit
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / baseline_kind
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / baseline_utc
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / currency
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / notes
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / samples
      Added value: +{
      +  "items": {
      +    "properties": {
      +      "change_pct": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "minutes": {
      +        "type": "integer"
      +      },
      +      "price": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "sample_utc": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / session
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / instruments / items / properties / volume
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / market_reaction / properties / interpretation
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / revenue_actual_amount
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / results / items / properties / revenue_estimate_amount
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / results / items / properties / revenue_unit
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / results / items / properties / url
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / returned_counts
      Added value: +{
      +  "type": "object"
      +}
  4. Added

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/destructive=false, so the safety profile is covered. The description adds real content-level disclosure: which metrics are returned and the 'where measured' caveat that price reaction may be absent, which is useful behavioral context beyond the annotations and schema.

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?

Two sentences, front-loaded with the returned payload before the usage examples, with no filler. The first sentence is dense but each clause carries distinct information, so it earns its length.

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?

With 7 well-described optional params, an output schema, and annotations covering safety, the description only needs to convey scope and intent, which it does. Nothing critical to correct invocation is missing, though it could note pagination/limits behavior.

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 seven parameters are already documented in the schema. The description only implicitly touches parameters (the 'who reports next' clause corresponds to days_ahead) and adds no format or interaction detail, so the baseline 3 applies.

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 names a specific resource (reported earnings results) plus the exact payload: EPS and revenue vs consensus, beat/miss, guidance direction, price reaction, and the upcoming calendar. It is unmistakably distinct from macro siblings like economic_data, though it never names an alternative tool explicitly.

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?

It gives three concrete triggering questions ('did NVDA beat', 'how did the stock react to earnings', 'who reports this week'), which clearly maps the tool to intent. There is no explicit when-not guidance or pointer to a competing sibling, so it falls short of a 5.

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.

Resources