MCP App Store
Finance
FinancialReports icon

FinancialReports

by FINANCIALREPORTS PTE. LTD.

Overview

FinancialReports gives ChatGPT access to regulatory filings, normalized financial statements, and corporate reference data for listed companies worldwide, sourced from official regulators like the SEC and ESMA. Ask for a company's latest annual report, pull a specific financial line item with its currency and fiscal period, search the full text of a filing, or compare metrics across peers. Sign in with your free FinancialReports account using OAuth, no API key needed. Built on the open Model Context Protocol.

Tools

companies_financials_retrieve

ChatGPT
Experimental endpoint — the response schema may change without an API version bump. Returns standardized financial KPIs for a company as a structured document: a company envelope containing periods, each holding its Income Statement, Balance Sheet and Cash Flow statements, each holding line_items. When several filings report the same period, the most recently published filing is selected; every contributing filing is listed in the statement's sources array. source_filing and sources are returned only for accounts with source unmasking enabled (sources_masked reports which applies). Use as_of=YYYY-MM-DD for a point-in-time view. Use the depth and parent_code fields on each line item to render the Capital IQ-style statement hierarchy. When to use this tool: Use to get standardized financial line items (income statement, balance sheet, cash flow) for a company. Data is deduplicated across filings — the most recently published filing wins. SOURCING: attribute every figure to its fiscal period + period_end_date and reporting currency. GROUNDEDNESS (critical): report ONLY values present in the periods this call returns. If period_count is 0 or periods is empty, FinancialReports has no structured financials for this company yet (common for US/SEC issuers — structured data is currently ESEF/EU-derived and being expanded). Do NOT stop and do NOT estimate — FALL BACK to the filing: call filings_list for this id filtered to an annual-report filing_type_code (e.g. 10-K, 20-F, or the local annual type), take the most recently released one, retrieve it with filings_markdown_retrieve, and read the figures directly from the filing body — citing the filing type, date, and fiscal period. Never estimate, recall a figure from training knowledge, or attach a citation to a number you did not read from a tool result this session. When NOT to use this tool: Don't use for filing documents or markdown content — use filings_list + filings_markdown_retrieve. Don't use without resolving the company ID first via companies_list. Examples: - Munich Re 2024 income statement -> id=<id>, fiscal_year=2024, statement_type='IS' (Use depth + parent_code to render Capital IQ-style hierarchy) - Compare EBITDA across 3 companies -> id=<id>, statement_type='IS', line_items='ebitda' (Call in parallel for each company. Always show currency.) [Server current date: 2026-06-16 — treat this as today.]

companies_financials_retrieve

ChatGPT
Experimental endpoint — the response schema may change without an API version bump. Returns standardized financial KPIs for a company as a structured document: a company envelope containing periods, each holding its Income Statement, Balance Sheet and Cash Flow statements, each holding line_items. When several filings report the same period, the most recently published filing is selected; every contributing filing is listed in the statement's sources array. source_filing and sources are returned only for accounts with source unmasking enabled (sources_masked reports which applies). Use as_of=YYYY-MM-DD for a point-in-time view. Use the depth and parent_code fields on each line item to render the Capital IQ-style statement hierarchy. When to use this tool: Use to get standardized financial line items (income statement, balance sheet, cash flow) for a company. Data is deduplicated across filings — the most recently published filing wins. SOURCING: attribute every figure to its fiscal period + period_end_date and reporting currency. GROUNDEDNESS (critical): report ONLY values present in the periods this call returns. If period_count is 0 or periods is empty, FinancialReports has no structured financials for this company yet (common for US/SEC issuers — structured data is currently ESEF/EU-derived and being expanded). Do NOT stop and do NOT estimate — FALL BACK to the filing: call filings_list for this id filtered to an annual-report filing_type_code (e.g. 10-K, 20-F, or the local annual type), take the most recently released one, retrieve it with filings_markdown_retrieve, and read the figures directly from the filing body — citing the filing type, date, and fiscal period. Never estimate, recall a figure from training knowledge, or attach a citation to a number you did not read from a tool result this session. When NOT to use this tool: Don't use for filing documents or markdown content — use filings_list + filings_markdown_retrieve. Don't use without resolving the company ID first via companies_list. Examples: - Munich Re 2024 income statement -> id=<id>, fiscal_year=2024, statement_type='IS' (Use depth + parent_code to render Capital IQ-style hierarchy) - Compare EBITDA across 3 companies -> id=<id>, statement_type='IS', line_items='ebitda' (Call in parallel for each company. Always show currency.) [Server current date: 2026-06-26 — treat this as today.]

companies_list

ChatGPT
Retrieve a paginated list of companies. When to use this tool: Use as the first step to resolve a company name, ticker, or partial match to a FinancialReports internal ID. Required before calling any per-company tool (financials, filings, watchlist). CONFIRM the match — state the resolved company's full name and country before reporting data ("Apple" can surface "Apple Hospitality REIT"). PEER / SCREENING LISTS: include ONLY companies whose requested data you actually retrieved this session; if a candidate's data comes back empty, mark it "no data available" or drop it — never invent a figure to complete the list. A short honest list beats a long fabricated one. When NOT to use this tool: Don't use if you already have a company ID from a previous call. Don't use for ISIN lookups — use isins_retrieve instead. Examples: - Find Apple -> search="Apple" (Inspect results — 'Apple Inc.' vs 'Apple Hospitality REIT') - German automotive companies -> countries="DE", sector="C" (ISIC Section C = Manufacturing) [Server current date: 2026-06-16 — treat this as today.]

companies_list

ChatGPT
Retrieve a paginated list of companies. When to use this tool: Use as the first step to resolve a company name, ticker, or partial match to a FinancialReports internal ID. Required before calling any per-company tool (financials, filings, watchlist). CONFIRM the match — state the resolved company's full name and country before reporting data ("Apple" can surface "Apple Hospitality REIT"). PEER / SCREENING LISTS: include ONLY companies whose requested data you actually retrieved this session; if a candidate's data comes back empty, mark it "no data available" or drop it — never invent a figure to complete the list. A short honest list beats a long fabricated one. When NOT to use this tool: Don't use if you already have a company ID from a previous call. Don't use for ISIN lookups — use isins_retrieve instead. Examples: - Find Apple -> search="Apple" (Inspect results — 'Apple Inc.' vs 'Apple Hospitality REIT') - German automotive companies -> countries="DE", sector="C" (ISIC Section C = Manufacturing) [Server current date: 2026-06-26 — treat this as today.]

companies_next_annual_report_retrieve

ChatGPT
Calculates the expected release window for the next annual report based on historical filing patterns. [Server current date: 2026-06-16 — treat this as today.]

companies_next_annual_report_retrieve

ChatGPT
Calculates the expected release window for the next annual report based on historical filing patterns. [Server current date: 2026-06-26 — treat this as today.]

companies_retrieve

ChatGPT
Retrieve detailed information for a single company by its internal ID. When to use this tool: Use to get full company metadata (LEI, description, headquarters, social links, stock exchanges, indices) after resolving the ID via companies_list. When NOT to use this tool: Don't use for financial data — use companies_financials_retrieve. Don't use just to confirm a company exists — companies_list already returns enough for identification. Examples: - What's the LEI for ASML? -> id=<company_id from companies_list> (Returns lei field) [Server current date: 2026-06-16 — treat this as today.]

companies_retrieve

ChatGPT
Retrieve detailed information for a single company by its internal ID. When to use this tool: Use to get full company metadata (LEI, description, headquarters, social links, stock exchanges, indices) after resolving the ID via companies_list. When NOT to use this tool: Don't use for financial data — use companies_financials_retrieve. Don't use just to confirm a company exists — companies_list already returns enough for identification. Examples: - What's the LEI for ASML? -> id=<company_id from companies_list> (Returns lei field) [Server current date: 2026-06-26 — treat this as today.]

filing_categories_list

ChatGPT
Retrieve the 11 standardized disclosure types (categories) defined by the FRCF. [Server current date: 2026-06-16 — treat this as today.]

filing_categories_list

ChatGPT
Retrieve the 11 standardized disclosure types (categories) defined by the FRCF. [Server current date: 2026-06-26 — treat this as today.]

filing_types_list

ChatGPT
Retrieve a paginated list of all available filing types. [Server current date: 2026-06-16 — treat this as today.]

filing_types_list

ChatGPT
Retrieve a paginated list of all available filing types. [Server current date: 2026-06-26 — treat this as today.]

filings_list

ChatGPT
Retrieve a paginated list of regulatory filings. When to use this tool: Use to search and filter regulatory filings across companies. Supports filtering by company, filing type, category, country, date range. Returns metadata — not filing content. When NOT to use this tool: Don't use to get filing content — use filings_markdown_retrieve after getting the filing ID. Don't use for financial KPIs — use companies_financials_retrieve. Examples: - Apple's most recent 10-K -> company=<id>, filing_type='10-K', ordering='-release_datetime', page_size=1 (filing_type is jurisdiction-specific. Use filing_category for cross-jurisdiction queries.) - All insider transactions at Tesla in the last 30 days -> company=<id>, filing_category='insider_transaction', from_date='2026-04-16' [Server current date: 2026-06-16 — treat this as today.]

filings_list

ChatGPT
Retrieve a paginated list of regulatory filings. When to use this tool: Use to search and filter regulatory filings across companies. Supports filtering by company, filing type, category, country, date range. Returns metadata — not filing content. When NOT to use this tool: Don't use to get filing content — use filings_markdown_retrieve after getting the filing ID. Don't use for financial KPIs — use companies_financials_retrieve. Examples: - Apple's most recent 10-K -> company=<id>, filing_type='10-K', ordering='-release_datetime', page_size=1 (filing_type is jurisdiction-specific. Use filing_category for cross-jurisdiction queries.) - All insider transactions at Tesla in the last 30 days -> company=<id>, filing_category='insider_transaction', from_date='2026-04-16' [Server current date: 2026-06-26 — treat this as today.]

filings_markdown_retrieve

ChatGPT
Retrieve the raw processed content of a single filing in Markdown format. When to use this tool: Use to get the full text of a filing as Markdown. Supports pagination via offset/limit for long documents. Start with offset=0 and repeat with increasing offsets until no truncation marker appears. When NOT to use this tool: Don't use to search for filings — use filings_list first. Not every filing has Markdown content; check filings_retrieve for the markdown_url field first. Examples: - Show me Apple's 10-K risk factors -> filing_id=<id>, offset=0, limit=50000 (Summarize specific sections — don't dump the whole document) Returns the full processed Markdown content of a filing in pageable chunks. For long filings, call this tool repeatedly with increasing offset values until the response no longer contains the truncation marker. Use a limit of 50000 chars (default) for most LLM context windows; the per-call cap is 150000 chars (Claude.ai's documented tool-result ceiling). [Server current date: 2026-06-16 — treat this as today.]

filings_markdown_retrieve

ChatGPT
Retrieve the raw processed content of a single filing in Markdown format. When to use this tool: Use to get the full text of a filing as Markdown. Supports pagination via offset/limit for long documents. Start with offset=0 and repeat with increasing offsets until no truncation marker appears. When NOT to use this tool: Don't use to search for filings — use filings_list first. Not every filing has Markdown content; check filings_retrieve for the markdown_url field first. Examples: - Show me Apple's 10-K risk factors -> filing_id=<id>, offset=0, limit=50000 (Summarize specific sections — don't dump the whole document) Returns the full processed Markdown content of a filing in pageable chunks. For long filings, call this tool repeatedly with increasing offset values until the response no longer contains the truncation marker. Use a limit of 50000 chars (default) for most LLM context windows; the per-call cap is 150000 chars (Claude.ai's documented tool-result ceiling). [Server current date: 2026-06-26 — treat this as today.]

filings_retrieve

ChatGPT
Retrieve detailed information for a single filing by its ID. When to use this tool: Use to get full metadata for a single filing — source URL, PDF link, viewer URL, classification confidence, fiscal period. Call after filings_list when you need details beyond the list view. When NOT to use this tool: Don't use for the actual filing content — use filings_markdown_retrieve. Don't use to search for filings — use filings_list. Examples: - Show me the source PDF for this filing -> id=<filing_id> (Returns document (raw PDF/ZIP URL) and proxy_url (rendered)) [Server current date: 2026-06-16 — treat this as today.]

filings_retrieve

ChatGPT
Retrieve detailed information for a single filing by its ID. When to use this tool: Use to get full metadata for a single filing — source URL, PDF link, viewer URL, classification confidence, fiscal period. Call after filings_list when you need details beyond the list view. When NOT to use this tool: Don't use for the actual filing content — use filings_markdown_retrieve. Don't use to search for filings — use filings_list. Examples: - Show me the source PDF for this filing -> id=<filing_id> (Returns document (raw PDF/ZIP URL) and proxy_url (rendered)) [Server current date: 2026-06-26 — treat this as today.]

get_fr_filing_type_taxonomy

ChatGPT
The full 31-code filing-type taxonomy (codes + categories). Read before filtering filings by type — especially for ESG, governance, M&A, dividends, transcripts, or any type beyond 10-K / IR / ER / MDA / DIRS. [Server current date: 2026-06-16 — treat this as today.]

get_fr_filing_type_taxonomy

ChatGPT
The full 31-code filing-type taxonomy (codes + categories). Read before filtering filings by type — especially for ESG, governance, M&A, dividends, transcripts, or any type beyond 10-K / IR / ER / MDA / DIRS. [Server current date: 2026-06-26 — treat this as today.]

get_fr_industry_classification_isic

ChatGPT
The ISIC industry hierarchy (sections/divisions/groups/classes) and how to screen peers. Read for any sector, industry, or peer-comparison query, then screen with companies_list(sector=...). [Server current date: 2026-06-16 — treat this as today.]

get_fr_industry_classification_isic

ChatGPT
The ISIC industry hierarchy (sections/divisions/groups/classes) and how to screen peers. Read for any sector, industry, or peer-comparison query, then screen with companies_list(sector=...). [Server current date: 2026-06-26 — treat this as today.]

get_fr_markdown_fetch_strategy

ChatGPT
When and how to fall back to filings_markdown_retrieve for values the normalized financials dataset doesn't carry, including processing_status gating and pagination. [Server current date: 2026-06-16 — treat this as today.]

get_fr_markdown_fetch_strategy

ChatGPT
When and how to fall back to filings_markdown_retrieve for values the normalized financials dataset doesn't carry, including processing_status gating and pagination. [Server current date: 2026-06-26 — treat this as today.]

isins_list

ChatGPT
Search and resolve ISINs (International Securities Identification Numbers) to companies. [Server current date: 2026-06-16 — treat this as today.]

isins_list

ChatGPT
Search and resolve ISINs (International Securities Identification Numbers) to companies. [Server current date: 2026-06-26 — treat this as today.]

isins_retrieve

ChatGPT
Retrieve details for a specific ISIN. When to use this tool: Use to resolve an ISIN (12-character code like US0378331005) to a company. Fastest path when the user provides an ISIN directly. When NOT to use this tool: Don't use for name or ticker lookups — use companies_list with the search parameter instead. Examples: - Look up US0378331005 -> id='US0378331005' (Returns the company associated with this ISIN) [Server current date: 2026-06-16 — treat this as today.]

isins_retrieve

ChatGPT
Retrieve details for a specific ISIN. When to use this tool: Use to resolve an ISIN (12-character code like US0378331005) to a company. Fastest path when the user provides an ISIN directly. When NOT to use this tool: Don't use for name or ticker lookups — use companies_list with the search parameter instead. Examples: - Look up US0378331005 -> id='US0378331005' (Returns the company associated with this ISIN) [Server current date: 2026-06-26 — treat this as today.]

App Stats

30

Tools

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily