Fundamental Data Tools
FinanceDataAPI exposes seven fundamental-data MCP tools on top of the symbol, signal, and backtest tools. Four are free and sourced from SEC EDGAR; three read cached Financial Modeling Prep (FMP) data and require a Starter plan or higher.
Every tool call bills one quota unit and runs through the same per-key rate limit and monthly quota as the REST API. Authenticate with
X-API-Key(orAuthorization: Bearer).
The difference between these tools and raw REST is the product's key differentiator:
every number carries its source. EDGAR responses include citation fields (form,
filing_date, period, fiscal_year, filed_as_reported) and a data_source of SEC EDGAR;
vendor responses carry a data_source of Financial Modeling Prep plus a stale flag. Your agent
can answer a question and tell you exactly where each number came from — no hallucinated figures.
Free tools (SEC EDGAR)
get_company_profile
Return the SEC company profile for a ticker or numeric CIK.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker (case-insensitive) or numeric CIK" }
}
}- Outputs: company name, CIK, exchange, SIC code/description, and whether it is an ETF or fund, plus
data_source: "SEC EDGAR". - Agent use case: resolve a symbol to its canonical company identity before querying financials or filings.
- Plan: Free.
get_financial_statements
Return curated (or raw XBRL) financial statements for a ticker or CIK.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" },
"statement": { "type": "string", "enum": ["income", "balance", "cash_flow"], "default": "income" },
"period": { "type": "string", "enum": ["annual", "quarterly"], "default": "annual" },
"raw": { "type": "boolean", "default": false, "description": "Return raw xbrl_facts rows instead of curated rows" }
}
}- Outputs: curated rows (
items) each carrying SEC citation fields, or raw XBRL facts whenraw=true. Wrapped withdata_source: "SEC EDGAR". - Agent use case: pull a company's revenue, net income, or balance-sheet line items with the exact filing that backs each figure.
- Plan: Free.
get_sec_filings
Return the SEC filing history for a ticker or CIK, newest first.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" },
"limit": { "type": "integer", "default": 10, "description": "Max rows, clamped to 1-500" }
}
}- Outputs:
itemswith one row per filing, each carrying SEC citation fields (form,filing_date,period,fiscal_year,filed_as_reported). - Agent use case: list a company's recent 10-K and 10-Q filings to confirm when figures were reported.
- Plan: Free.
get_fund_holdings
Return fund holdings for the most recent reporting period, largest positions first.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" },
"limit": { "type": "integer", "default": 10, "description": "Max rows, clamped to 1-500" }
}
}- Outputs:
itemswith holdings rows carrying citation fields (form,period,filed_as_reported). - Agent use case: inspect what an ETF or mutual fund actually holds as of its latest filing.
- Plan: Free.
Vendor tools (Starter+)
These three tools read only the database cache and never proxy a live request to FMP. A cache miss returns an empty
itemslist withstale: false. On a free-tier key they return an upgrade message instead of data.
get_key_metrics
Return cached FMP key metrics (valuation and profitability ratios) for a ticker or CIK, newest period first.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" }
}
}- Outputs:
itemswith valuation/profitability ratios,data_source: "Financial Modeling Prep", and astaleflag. - Agent use case: enrich a profile with P/E, margins, and other ratio snapshots from vendor data.
- Plan: Starter+.
get_analyst_estimates
Return cached FMP analyst estimates (with price targets) for a ticker or CIK, newest period first.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" }
}
}- Outputs:
itemswith revenue/EPS estimates and price targets,data_source: "Financial Modeling Prep", and astaleflag. - Agent use case: answer "what are analysts expecting for AAPL next quarter?" with cached consensus figures.
- Plan: Starter+.
get_company_news
Return cached FMP company news headlines for a ticker or CIK, newest first.
{
"type": "object",
"required": ["identifier"],
"properties": {
"identifier": { "type": "string", "description": "Ticker or numeric CIK" },
"limit": { "type": "integer", "default": 10, "description": "Max rows, clamped to 1-100" }
}
}- Outputs:
itemswith news headlines,data_source: "Financial Modeling Prep", and astaleflag. - Agent use case: surface the latest company headlines alongside fundamental figures.
- Plan: Starter+.
Worked example: AAPL's latest annual revenue, with source
In Claude Desktop, connect the server as usual, then ask:
What was AAPL's latest annual revenue, and cite the SEC filing it came from?The client turns that into two tool calls — first get_company_profile to resolve AAPL, then
get_financial_statements with statement: "income" and period: "annual". The second call
returns curated rows that carry the citation inline, so the agent can answer with the source
instead of guessing:
AAPL's latest annual revenue is $383,285,000,000, reported on the
10-K filed 2025-10-31 for fiscal year 2025 (period 2025-09-30).Because the response included form, filing_date, period, and fiscal_year, the agent can
attribute the number precisely. That citation — not just the figure — is what makes the
FinanceDataAPI MCP surface useful for financial work.
Citations — why it matters
- Free tools attach SEC citation fields to every curated row, so answers are traceable to a specific filing.
- Vendor tools flag
staleso the agent can warn you when cached data may be out of date. - Every response includes a
data_source(SEC EDGARorFinancial Modeling Prep) so you always know the provenance of a number.
Next steps
- Available Tools for the symbol, signal, and backtest tools
- Authentication for header and lifecycle details
- Company financials example for the REST equivalent