Skip to main content
Glama
datavidence

datavidence-financials

Official

Get financial statements

get_financials
Read-onlyIdempotent

Retrieve normalized US-GAAP income statement, balance sheet, and cash flow from SEC EDGAR for a company and fiscal year, identified by ticker or CIK, with optional as-of dates and source URLs.

Instructions

Retrieve normalized US-GAAP financial statements (income statement, balance sheet, cash flow) for one company and fiscal year, from SEC EDGAR XBRL.

Identify the company by ticker OR cik. Use as_of (ISO YYYY-MM-DD) to get the figures as originally reported on that date — no look-ahead bias — for backtests. Set include_provenance=true to attach, for every value, the SEC accession, filed date, and a direct EDGAR source URL for citation. Set include_ratios=true for margins, ROA/ROE, and leverage derived from the same statements. Returns the normalized data object.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cikNoSEC Central Index Key, e.g. "0000320193". Give this or `ticker`.
yearYesFiscal year, e.g. 2023.
as_ofNoISO date YYYY-MM-DD. Return figures as originally reported on that date (no look-ahead). Omit for the latest reported figures.
tickerNoStock ticker, e.g. "AAPL". Give this or `cik`.
include_ratiosNoAdd margins, ROA/ROE and leverage computed from the same statements.
include_provenanceNoAttach the SEC accession, filed date and EDGAR URL behind every value.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • addedInput schema / properties / as_of / description
      Added value: +"ISO date YYYY-MM-DD. Return figures as originally reported on that date (no look-ahead). Omit for the latest reported figures."
    • addedInput schema / properties / cik / description
      Added value: +"SEC Central Index Key, e.g. \"0000320193\". Give this or `ticker`."
    • addedInput schema / properties / include_provenance / description
      Added value: +"Attach the SEC accession, filed date and EDGAR URL behind every value."
    • addedInput schema / properties / include_ratios / description
      Added value: +"Add margins, ROA/ROE and leverage computed from the same statements."
    • addedInput schema / properties / ticker / description
      Added value: +"Stock ticker, e.g. \"AAPL\". Give this or `cik`."
    • addedInput schema / properties / year / description
      Added value: +"Fiscal year, e.g. 2023."
  2. First observedv0.1.2

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds valuable behavioral context beyond those: 'no look-ahead bias' for as_of, the exact provenance details (accession, filed date, URL), and the fact that ratios are 'derived from the same statements'. This gives agents a deeper understanding of the tool's behavior without contradicting the annotations.

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 description is a single, well-structured paragraph that front-loads the core purpose before diving into parameter guidance. It covers all necessary details in about four sentences without redundancy. It is concise for a tool with six parameters, though slightly longer than minimal; still, every sentence earns its place.

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?

Given the tool's moderate complexity (6 parameters, no output schema) and the annotations covering safety, the description is quite complete. It explains the return object type ('normalized data object') and lists the included statements (income statement, balance sheet, cash flow), which gives agents a sense of the output structure. It doesn't detail every possible return field, but with no output schema, this is acceptable. The absence of error conditions or rate limits is a minor gap, but not critical for a read-only tool.

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 description coverage is 100%, so the baseline is 3. The description adds significant meaning beyond the schema: it clarifies that ticker and cik are alternatives ('OR'), explains as_of as 'no look-ahead bias' for backtests, and specifies what include_provenance attaches (SEC accession, filed date, EDGAR URL). These enrich the parameter semantics beyond the schema's brief 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 states a specific verb ('Retrieve'), a clear resource ('normalized US-GAAP financial statements'), and a precise scope ('for one company and fiscal year'). This clearly distinguishes it from siblings like get_financials_batch (which implies batch/multiple) and get_revisions (which implies changes over time). The mention of SEC EDGAR XBRL adds a definitive source context, leaving no ambiguity about what this tool does.

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?

The description gives clear contextual guidance: as_of is recommended for backtests (explicit use case) and include_provenance for citation. It also states 'Identify the company by ticker OR cik', clarifying the identifier options. However, it does not explicitly mention when to use alternatives like get_financials_batch or get_revisions, though the single-company/year scope implies those. The lack of explicit exclusions keeps it from a 5.

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