Skip to main content
Glama

Statements and notes

akkru_statements
Read-onlyIdempotent

Whole statements and notes of one filing, as filed: every row with its value, period, unit and source.

  • get: one statement or note, named by exactly one of statement_type, role_label or block_index. statement_type takes the five main statements by name, for US filings. role_label takes any statement or note by the name the filer gave it, in any filing. block_index takes the position that list shows. 28 credits; 48 when role_label is matched to a differently worded name.

  • list: every statement and note block of the filing with its block_index, statement_type and role_label. 10 credits. Name the filing with filing_id, or with ticker and fiscal_year.

Input Schema

NameRequiredDescriptionDefault
actionYesWhat to do; each action is described in the tool description.
detailNoResponse detail, same price at every level: "full" (default) returns everything; "light" leaves out the bulkiest fields, such as breakdown lists; "minimal" returns only the values and what identifies them, without sources or calculation details. Every action takes it; a call without detail levels ignores it. Try "light" or "minimal" for shorter replies that use less context and fewer tokens.
tickerNo(get, list) Company ticker, e.g. "AAPL" (US), "000100" (Korea), "1332" (Japan), "VIRI_F" (Europe), "600519_CN" (China A-share); any symbol the company has traded under.
quarterNo(get, list) "FY", "Q1", "Q2", "Q3" or "Q4". Needed only when the fiscal year has several filings of the form; the error then lists the quarters on file.
filing_idNo(get, list) Filing id from akkru_filings action "list". Name the filing with filing_id, or with ticker and fiscal_year, not both.
form_typeNo(get, list) Form, default "10-K": "10-K" or "10-Q" for US filers, "20-F" or "40-F" for foreign issuers filing with the SEC. Korean, Japanese, Chinese and European filings use "10-K" for annual and "10-Q" for interim reports.
role_labelNo(get) The statement or note name as the filer gave it, e.g. "CONSOLIDATED STATEMENTS OF OPERATIONS" or "Revenue Recognition"; a name that differs from the filing's is matched for 20 more credits. Give one of statement_type, role_label, block_index.
block_indexNo(get) The block's position as list returns it. Give one of statement_type, role_label, block_index.
fiscal_yearNo(get, list) Fiscal year of the filing (1990-2100).
statement_typeNo(get) "Income Statement", "Balance Sheet", "Cash Flow Statement", "Comprehensive Income" or "Stockholders Equity" (US filings only). Give one of statement_type, role_label, block_index.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare this read-only, idempotent and closed-world, so the safety profile is covered. The description adds real value with pricing (28 credits, 10 for list) and the 48-credit surcharge when role_label is matched to a differently worded name, which is a behavioral trait not in any structured field. It does not cover response size limits, pagination, or what happens for non-US filings on statement_type beyond saying it is US-only.

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 summary sentence, then dash-delimited per-action blocks, then a one-line filing-identification rule. Every sentence carries information, though the mutual-exclusivity instruction is repeated from the schema and costs a little space.

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?

There is no output schema, so the description must characterize returns, and it does: get yields every row with value, period, unit and source; list yields block_index, statement_type and role_label per block. It also explains that detail tiers trade fields for tokens, which the schema covers. Inputs are fully covered at 10 parameters; only extreme cases (non-US statement naming, very large statements) are left unaddressed.

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 coverage is 100%, so the schema carries the field definitions and the baseline would be 3. The description goes further by explaining the practical semantics: statement_type only resolves the five main statements and only for US filings, role_label accepts any filer-given name and costs more when fuzzy-matched, block_index mirrors what list returns, and quarter is only needed for ambiguous fiscal years. That is meaning beyond 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?

The opening sentence names the exact resource and scope: whole statements and notes of one filing, as filed, with rows carrying value, period, unit and source. The two actions are then given concrete verbs (return one block vs. enumerate all blocks). It does not say how it differs from akkru_facts, which an agent might reach for when it wants numbers instead of full statements.

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 states explicitly how to select a block — exactly one of statement_type, role_label or block_index — and explains what each selector is for and where block_index comes from. It also says a filing is named either by filing_id or by ticker plus fiscal_year, not both, and when quarter is needed. No guidance on when to prefer this tool over sibling fact/metric tools.

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