Skip to main content
Glama
FindDataTechnology

fd-cn-report

Official

get_financial_statements

Extract the three major Chinese financial statements—income statement, balance sheet, and cash flow—as text from a company's filing PDF by ticker, year, and form.

Instructions

Extract the three major financial statements (三大报表) as text.

Resolves the company's filing PDF for (ticker, year, form) via the report cache (no re-download on repeat), parses the table of contents, and returns each statement's body text:

  • statements.income_statement (利润表) — prefers 合并利润表

  • statements.balance_sheet (资产负债表) — prefers 合并资产负债表

  • statements.cashflow (现金流量表) — prefers 合并现金流量表

Returns section text only — never PDF bytes. Statements not located in the TOC are listed in missing (with the full available title list so the caller can fall back to get_section with a custom selector).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formNoform name; defaults to "年度报告".年度报告
yearYesfiscal year.
ticker_or_nameYesticker or name (see get_company).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.4

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden well: it discloses the report-cache resolution (no re-download on repeat), the TOC parsing step, that output is section text only and never PDF bytes, and how unresolved statements are reported. It omits permission/auth prerequisites and rate-limit behavior, but covers the important traits for a read-style extraction.

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 line, and the following sentences are organized around resolution, output fields, and failure handling. It is somewhat long and uses pseudo-code formatting, but nearly every clause carries information.

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 an output schema exists and no annotations are present, the description covers the essentials: what is returned, the text-only constraint, and how missing statements are signaled. It is slightly light on operational prerequisites but otherwise complete for the tool's complexity.

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 three params are already documented; baseline is 3. The description adds only the conceptual framing of the ``(ticker, year, form)`` triple used for PDF resolution, which is minor value over the schema.

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 states a precise verb and resource: extract the three major financial statements (三大报表) as text, and names the exact output fields (income_statement/利润表, balance_sheet/资产负债表, cashflow/现金流量表). However, it never distinguishes itself from the very close sibling get_financials (or get_hk_financials), leaving the agent to infer which one to pick.

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?

It provides a real fallback route: statements missing from the TOC are surfaced in ``missing`` with the ``available`` list so the caller can fall back to ``get_section`` with a custom selector. That is useful implied guidance, but there is no explicit when-to-use statement and no exclusion or comparison against get_financials, so usage is only inferred.

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