get_fundamentals
Returns XBRL-tagged financial fundamentals from public-company 10-K and 10-Q filings, sourced from SEC EDGAR's company-facts API. Each record is one observation of one concept at one period end. Use this when the user asks about: revenue, profit, margins, cash position, debt, shareholder equity, EPS, share count, operating vs. financing cash flow, or any line-item-level financial state of a public company. Coverage: any company in SEC's ticker list. The S&P 500 is refreshed three times a week; another company is read live from SEC on its first request (US-dollar units only; coverage_warning says so) and stored for later calls. An empty result's coverage_warning says which kind of empty it is. Concepts: a curated 40-concept watchlist covering: - income_statement: Revenues / RevenueFromContractWithCustomer / CostOfRevenue / GrossProfit / OperatingExpenses / R&D / SG&A / OperatingIncomeLoss / InterestExpense / IncomeTaxExpenseBenefit / NetIncomeLoss - balance_sheet: Assets / AssetsCurrent / Cash / AccountsReceivable / Inventory / PP&E / Goodwill / Liabilities / LongTermDebt / StockholdersEquity / CommonStockSharesOutstanding - cash_flow: NetCash{Operating/Investing/Financing}Activities / PaymentsToAcquirePPE (capex) / PaymentsForRepurchaseOfCommonStock / PaymentsOfDividends / DepreciationDepletionAndAmortization - metrics: EarningsPerShareBasic/Diluted, weighted-avg share counts - entity: EntityCommonStockSharesOutstanding (dei taxonomy) Key cautions on the data: - The same concept can appear in multiple units (e.g., 'USD' and 'USD/shares' for EPS). Filter by unit if you need a specific shape. - Many concepts have BOTH year-to-date cumulative observations AND quarterly-period observations on 10-Q filings. The frame field (e.g., 'CY2025Q3') marks the per-quarter point-period observation; rows with empty frame are typically cumulative YTD. - Older filings may use deprecated concept names; KeyVex catalog includes both modern and legacy names where companies migrated (e.g., Revenues AND RevenueFromContractWithCustomerExcludingAssessedTax). - scale_note: on a handful of 2009–2014 share counts that look like the issuer's own scale error (about 1,000× or 1,000,000× its neighbouring filings), a note names the factor and a neighbouring value; value is still as filed. null on every other row. Set latest_only=true to get one record per (ticker × concept) — the most-recent observation. Useful for 'current state' snapshots. Pure-publisher posture: values are AS FILED. We do NOT compute derived ratios (P/E, ROE, ROIC), YoY/QoQ deltas, or 'real' vs nominal versions. Agents calculate those on top.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "get_fundamentals"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| form | No | Filter to one filing form. | |
| limit | No | Default 50, max 500. | |
| since | No | ISO date YYYY-MM-DD. Applied to sort_by field. | |
| until | No | ISO date YYYY-MM-DD. | |
| ticker | No | Stock symbol filter, e.g. 'AAPL'. Case-insensitive. | |
| concept | No | Exact XBRL tag name (e.g., 'NetIncomeLoss', 'Revenues', 'Assets', 'CashAndCashEquivalentsAtCarryingValue'). Case-sensitive. | |
| sort_by | No | Default period_end. | |
| category | No | Bucket filter when you don't know the exact concept name. | |
| sort_order | No | Default desc. | |
| company_cik | No | SEC CIK number. Alternative to ticker. | |
| fiscal_year | No | Filter to one fiscal year — the year the financials DESCRIBE (the company's own fiscal-year label, derived from the original filing), NOT the filing year. Handles non-December fiscal years: e.g. NVDA's year ending 2024-01-28 is fiscal_year 2024, Apple's ending 2024-09-28 is 2024. For point-in-time period filtering, period_end / since / until and frame are also available. | |
| latest_only | No | When true, return only the most-recent observation per (ticker × concept). Default false. | |
| fiscal_period | No | Filter to one fiscal period. |