Tool Reference
Every tool exposed by the Fintel Discovery MCP server, with parameter definitions,
types, defaults, and copy-paste call examples. All tools use structured JSON input
and return List[Dict].
* FRED tools require a free FRED API key. All others are keyless.
Call Format
All tools accept a single params object. Every field is optional unless
marked required. Common base fields (question_asked,
source_resource_id) are inherited by all tools but omitted from individual tables for brevity.
{
"tool": "ToolName",
"params": {
"question_asked": "What the user asked — include full text for best results",
"field1": "value1",
"field2": "value2"
}
}
FINRA BrokerCheck & SEC IAPD / EDGAR
Public regulatory databases. No API key required.
Search FINRA BrokerCheck for registered individual brokers and financial representatives by name. Returns CRD number, current firm, registration status, and whether the individual has any disclosures on record. Use GetBrokerCheckDetail to fetch the full profile once you have a CRD.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| name | string | opt | — | Full or partial name of the broker. E.g. 'Andrew Burish', 'John Smith'. |
| state | string | opt | — | Two-letter US state code to narrow results. E.g. 'WI', 'NY'. |
| include_previous | boolean | opt | true | Include brokers whose registration has lapsed. |
| start | integer | opt | 0 | Pagination offset (0-based). |
| rows | integer | opt | 12 | Results per page. Max 12 (BrokerCheck API limit). |
{
"tool": "SearchBrokerCheck",
"params": {
"name": "Peter Chieco",
"state": "NY",
"question_asked": "Find broker Peter Chieco in New York"
}
}
Search FINRA BrokerCheck for broker-dealer firms by name. Returns firm CRD, registration status, city, state, and disclosure flag. Useful for finding firm CRDs before calling GetBrokerCheckDetail.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| name | string | opt | — | Full or partial firm name. E.g. 'UBS Financial Services', 'LPL Financial'. |
| state | string | opt | — | Two-letter state code to narrow. E.g. 'CA'. |
| start | integer | opt | 0 | Pagination offset. |
| rows | integer | opt | 12 | Results per page. Max 12. |
{
"tool": "SearchBrokerCheckFirm",
"params": {
"name": "Raymond James",
"question_asked": "Find Raymond James broker-dealer CRD"
}
}
Retrieve the full FINRA BrokerCheck profile for one individual using their CRD number. Returns complete employment history, exam qualifications, licenses held, and all disclosure details.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| crd | string | opt | — | CRD number of the individual. Obtain from SearchBrokerCheck. E.g. '2144241'. |
{
"tool": "GetBrokerCheckDetail",
"params": {
"crd": "2144241",
"question_asked": "Full BrokerCheck profile for CRD 2144241"
}
}
Search the SEC Investment Adviser Public Disclosure (IAPD) database for registered investment advisor (RIA) firms by name. Returns firm CRD, AUM, employee count, state, and office city. Use for RIA firms; use SearchBrokerCheckFirm for broker-dealers.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| name | string | opt | — | Full or partial RIA firm name. E.g. 'Vanguard', 'Edward Jones'. |
{
"tool": "SearchIAPDFirm",
"params": {
"name": "Fidelity Investments",
"question_asked": "Find Fidelity RIA firm CRD and AUM"
}
}
Retrieve the full Form ADV filing detail for one RIA firm by CRD number. Returns all Form ADV Part 1 fields: client types, advisory activities, fee arrangements, custody information, office locations, and affiliated entities.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| crd | string | opt | — | CRD number of the RIA firm. Obtain from SearchIAPDFirm. E.g. '106288'. |
{
"tool": "GetIAPDFirmDetail",
"params": {
"crd": "106288",
"question_asked": "Full Form ADV for Vanguard RIA"
}
}
Search SEC IAPD for individual investment advisor representatives (IARs) by name. Returns CRD number, current employer, registration states, and exam history. For broker/dealer individuals use SearchBrokerCheck instead.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| name | string | opt | — | Full or partial advisor name. E.g. 'Anthony Feeney'. |
| state | string | opt | — | Two-letter state code. E.g. 'CA'. |
| rows | integer | opt | 12 | Number of results to return. |
{
"tool": "SearchIAPDIndividual",
"params": {
"name": "Anthony Feeney",
"state": "MA",
"question_asked": "Find IAR Anthony Feeney in Massachusetts"
}
}
Retrieve the full SEC IAPD profile for one individual investment advisor representative using their CRD number. Returns complete registration history, exam qualifications, employment history, and any disclosures.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| crd | string | opt | — | CRD number. Obtain from SearchIAPDIndividual. E.g. '6753609'. |
{
"tool": "GetIAPDIndividualDetail",
"params": {
"crd": "6753609",
"question_asked": "Full IAPD profile for CRD 6753609"
}
}
Search SEC EDGAR for 13F-HR institutional holdings filings by institution name. Any institution managing >$100M in US equities must file quarterly — this reveals fund strategies and equity positions. Feed the returned CIK + accession number into Get13FHoldings for the full position table.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| query | string | opt | — | Institution name to search. E.g. 'BlackRock', 'Vanguard Group'. |
| start_date | string | opt | — | Filter from date. Format: YYYY-MM-DD. E.g. '2024-01-01'. |
| end_date | string | opt | — | Filter to date. Format: YYYY-MM-DD. E.g. '2024-12-31'. |
{
"tool": "SearchEdgar13F",
"params": {
"query": "Bridgewater Associates",
"start_date": "2024-07-01",
"end_date": "2024-09-30",
"question_asked": "Find Bridgewater's Q3 2024 13F filing"
}
}
Retrieve all SEC filings for a company or institution using its CIK (Central Index Key). Returns every filing on record: form type, date, accession number, and description.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| cik | string | opt | — | SEC Central Index Key. Zero-padding handled automatically. E.g. '1350694'. |
{
"tool": "GetEdgarCompanyFilings",
"params": {
"cik": "1350694",
"question_asked": "All SEC filings for Bridgewater Associates"
}
}
Retrieve US Census ACS income and wealth proxy data for a ZIP code or state. Returns median household income, median home value, total households, and count/share of households earning $100k+. Useful for scoring advisor territories.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| zip_code | string | opt | — | 5-digit US ZIP code. E.g. '90210'. If provided, state is ignored. |
| state | string | opt | — | Two-letter state code for state-level profile. E.g. 'CA'. |
| census_api_key | string | opt | — | Free Census API key (api.census.gov/data/key_signup.html). Falls back to rate-limited access if omitted. |
{
"tool": "GetTerritoryWealthProfile",
"params": {
"zip_code": "10022",
"question_asked": "Wealth profile for ZIP 10022 (Upper East Side)"
}
}
Securities & Market Research
Yahoo Finance via yfinance. No API key required.
Search for a Yahoo Finance ticker symbol by company name, fund name, or keyword. Use this when you have a name but need the ticker.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| query | string | opt | — | Company or fund name. E.g. 'Apple Inc', 'Vanguard 500', 'Bitcoin'. |
| asset_type | string | opt | 'stock' | Options: 'stock', 'etf', 'mutualfund', 'index', 'cryptocurrency', 'currency', 'future', 'all'. |
| max_results | integer | opt | 10 | Maximum results to return. |
{
"tool": "LookupTicker",
"params": {
"query": "Vanguard Total Stock Market",
"asset_type": "etf",
"question_asked": "What is the ticker for Vanguard Total Stock Market ETF?"
}
}
Fetch the full Yahoo Finance profile for a stock, ETF, mutual fund, crypto, or index. Returns name, sector, industry, market cap, P/E, 52-week range, beta, dividend yield, description, and 60+ metadata fields.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Yahoo Finance ticker. E.g. 'AAPL', 'SPY', 'BTC-USD', '^GSPC'. |
{
"tool": "GetTickerInfo",
"params": {
"symbol": "NVDA",
"question_asked": "Give me NVDA's sector, market cap, and P/E ratio"
}
}
Fetch OHLCV price history for one ticker. Supports daily, weekly, monthly, or intraday bars over any period.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'AAPL', 'BTC-USD'. |
| period | string | opt | '1y' | Lookback period. Options: '1d' '5d' '1mo' '3mo' '6mo' '1y' '2y' '5y' '10y' 'ytd' 'max'. Ignored if start/end provided. |
| interval | string | opt | '1d' | Bar interval. Options: '1d' '1wk' '1mo' '1h' '5m' '15m' '30m'. |
| start | string | opt | — | Start date YYYY-MM-DD. Overrides period. |
| end | string | opt | — | End date YYYY-MM-DD. Defaults to today if start set. |
| auto_adjust | boolean | opt | true | Adjust OHLC for dividends and splits. Recommended for long-term analysis. |
{
"tool": "GetPriceHistory",
"params": {
"symbol": "SPY",
"period": "6mo",
"interval": "1d",
"question_asked": "SPY daily price history for the last 6 months"
}
}
Fetch OHLCV price history for multiple tickers in a single call. Returns a flattened table with columns like AAPL_Close, SPY_Volume, etc.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbols | string | opt | — | Space- or comma-separated tickers. E.g. 'AAPL MSFT GOOGL' or 'SPY,QQQ,IWM'. |
| period | string | opt | '1y' | Lookback period. Same options as GetPriceHistory. |
| interval | string | opt | '1d' | Bar interval. |
| start | string | opt | — | Start date YYYY-MM-DD. |
| end | string | opt | — | End date YYYY-MM-DD. |
{
"tool": "GetMultiTickerHistory",
"params": {
"symbols": "SPY QQQ IWM",
"period": "1y",
"question_asked": "Compare SPY, QQQ and IWM performance over the last year"
}
}
Fetch income statement, cash flow statement, or balance sheet for a stock. Returns up to 4 years annual or 4 quarters quarterly, transposed so each row is one reporting period.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'AAPL', 'JPM'. |
| statement | string | opt | 'income' | Options: 'income' (P&L), 'cashflow', 'balance'. |
| freq | string | opt | 'yearly' | Options: 'yearly' (last 4 annual), 'quarterly' (last 4 quarters), 'trailing' (TTM, income only). |
{
"tool": "GetFinancials",
"params": {
"symbol": "AAPL",
"statement": "income",
"freq": "yearly",
"question_asked": "Apple annual revenue and net income for last 4 years"
}
}
Fetch earnings history (EPS actual vs estimate, surprise %), upcoming earnings dates, and forward EPS estimates by quarter and fiscal year.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'NVDA'. |
| limit | integer | opt | 12 | Number of upcoming/past earnings dates to return. |
{
"tool": "GetEarningsHistory",
"params": {
"symbol": "NVDA",
"question_asked": "NVDA earnings history and next earnings date"
}
}
Fetch analyst buy/sell/hold consensus, price targets (low, high, mean, median), and the full history of upgrades/downgrades with firm name, fromGrade, toGrade, and action.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'TSLA', 'META'. |
| include_upgrades_downgrades | boolean | opt | true | Include full upgrade/downgrade history with firm names and grade changes. |
{
"tool": "GetAnalystRatings",
"params": {
"symbol": "TSLA",
"question_asked": "What is the Wall Street consensus on Tesla and the price target?"
}
}
Fetch ownership data: top institutional holders, mutual fund holders, and recent insider transactions (buys/sells by executives).
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'AAPL'. |
| holder_type | string | opt | 'institutional' | Options: 'institutional', 'mutualfund', 'insider', 'all'. |
{
"tool": "GetHolders",
"params": {
"symbol": "AAPL",
"holder_type": "institutional",
"question_asked": "Who are the top institutional holders of Apple stock?"
}
}
Fetch the full history of cash dividends, stock splits, and combined corporate actions. Returns date, amount/ratio for each event.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker. E.g. 'KO', 'JNJ'. |
| period | string | opt | 'max' | History window. Options: '1y', '5y', '10y', 'max'. |
{
"tool": "GetDividendsAndSplits",
"params": {
"symbol": "KO",
"period": "10y",
"question_asked": "Coca-Cola dividend history for the last 10 years"
}
}
List all available options expiry dates for a ticker. Call this before GetOptionsChain to get a valid expiry date.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Ticker symbol. E.g. 'AAPL', 'SPY'. |
{
"tool": "GetOptionsExpirations",
"params": {
"symbol": "SPY",
"question_asked": "What options expiry dates are available for SPY?"
}
}
Fetch the full options chain (calls and puts) for one expiry date. Returns strike, bid, ask, last price, implied volatility, open interest, and volume for every contract.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | Underlying ticker. E.g. 'AAPL', 'SPY'. |
| expiry_date | string | opt | nearest | Expiry in YYYY-MM-DD. Use GetOptionsExpirations first. Omit for nearest expiry. |
{
"tool": "GetOptionsChain",
"params": {
"symbol": "AAPL",
"expiry_date": "2025-06-20",
"question_asked": "Show me the AAPL options chain for June 2025 expiry"
}
}
Fetch ETF or mutual fund specific data: top holdings with weight %, sector allocations, expense ratio, bond credit quality, and equity style characteristics. ETFs and mutual funds only — use GetTickerInfo for stocks.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| symbol | string | opt | — | ETF or fund ticker. E.g. 'SPY', 'VFINX', 'QQQ'. |
| section | string | opt | 'overview' | Options: 'overview', 'holdings', 'sectors', 'bond_ratings', 'equity_holdings', 'all'. |
{
"tool": "GetFundProfile",
"params": {
"symbol": "QQQ",
"section": "holdings",
"question_asked": "What are the top holdings in QQQ?"
}
}
Fee Comparison & 13F Holdings
SEC EDGAR XBRL + 13F archive. No API key required.
Search SEC EDGAR for mutual fund and ETF filers by investment category or keyword. Returns entity name and CIK. Feed CIKs into GetFundFees.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| keywords | string | opt | — | Fund strategy keywords. E.g. 'commodity', 'emerging markets equity', 'S&P 500 index'. |
| fund_type | string | opt | 'all' | Options: 'etf', 'mutual', 'closed', 'all'. |
| start_date | string | opt | — | Prospectus filing on or after YYYY-MM-DD. |
| end_date | string | opt | — | Prospectus filing on or before YYYY-MM-DD. |
| max_results | integer | opt | 40 | Max fund filers to return. Increase to 100+ for comprehensive fee comparisons. |
{
"tool": "SearchFundsByCategory",
"params": {
"keywords": "commodity",
"fund_type": "etf",
"max_results": 50,
"question_asked": "Find all commodity ETFs to compare expense ratios"
}
}
Retrieve expense ratios and fee breakdown for a mutual fund or ETF using its SEC CIK. Reads structured XBRL data filed with prospectuses. Returns net/gross expense ratio, management fee, 12b-1 fee, and other expenses. All values expressed as percentages (e.g. 0.03 = 0.03%).
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| cik | string | opt | — | SEC CIK. Obtain from SearchFundsByCategory. E.g. '1064642' (SPDR S&P 500 ETF). |
| include_all_classes | boolean | opt | true | Return all share classes (A, B, C, Institutional). False = most recent single value only. |
{
"tool": "GetFundFees",
"params": {
"cik": "1289419",
"question_asked": "What is the expense ratio for this commodity ETF?"
}
}
Fetch and parse the complete equity holdings table from a specific SEC 13F-HR filing. Returns one row per position with CUSIP, market value, shares, and voting authority. Obtain cik + accession_no from SearchEdgar13F first.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| cik | string | opt | — | CIK of the institutional filer. E.g. '1350694' (Bridgewater). |
| accession_no | string | opt | — | Accession number with dashes. E.g. '0001350694-24-000012'. |
| min_value_thousands | integer | opt | — | Minimum position value in $K. E.g. 1000 = positions ≥ $1M. |
| sort_by | string | opt | 'value_desc' | Options: 'value_desc', 'value_asc', 'name_asc'. |
| limit | integer | opt | 100 | Max holdings to return. Use with offset for pagination (large filers have 3,000+). |
| offset | integer | opt | 0 | Skip N holdings before returning results. |
{
"tool": "Get13FHoldings",
"params": {
"cik": "1350694",
"accession_no": "0001350694-24-000012",
"min_value_thousands": 1000,
"sort_by": "value_desc",
"limit": 20,
"question_asked": "Top 20 Bridgewater positions in Q2 2024 worth at least $1M"
}
}
Federal Reserve Economic Data
Requires a free FRED API key from fred.stlouisfed.org.
Search the Federal Reserve Bank of St. Louis FRED database for economic data series by keyword. Returns series ID, title, frequency, units, and date range. Use to find the right series ID before calling GetFredSeriesData.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| query | string | opt | — | Search keywords. E.g. '10-year treasury', 'CPI', 'unemployment rate'. |
| limit | integer | opt | 20 | Max series to return (max 1000). |
| order_by | string | opt | 'search_rank' | Options: 'search_rank', 'popularity', 'last_updated'. |
{
"tool": "SearchFredSeries",
"params": {
"query": "federal funds rate",
"question_asked": "Find the FRED series for the federal funds rate"
}
}
Fetch time-series observation data from FRED for a specific economic series. Returns date + value pairs with metadata. Use SearchFredSeries first if you don't know the series ID.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| series_id | string | opt | — | FRED series ID. E.g. 'DGS10', 'CPIAUCSL', 'UNRATE'. |
| observation_start | string | opt | — | Start date YYYY-MM-DD. E.g. '2020-01-01'. |
| observation_end | string | opt | — | End date YYYY-MM-DD. |
| frequency | string | opt | native | Aggregation. Options: 'd', 'w', 'm', 'q', 'a'. |
| limit | integer | opt | 100 | Max observations (max 100000). |
{
"tool": "GetFredSeriesData",
"params": {
"series_id": "DGS10",
"observation_start": "2020-01-01",
"frequency": "m",
"limit": 60,
"question_asked": "10-year treasury yield monthly since 2020"
}
}
Instrument IDs & Legal Entities
Bloomberg OpenFIGI & GLEIF. No API key required.
Map financial instrument identifiers between different ID systems (ticker ↔ FIGI ↔ ISIN ↔ CUSIP) using Bloomberg's OpenFIGI service. Useful for normalizing IDs across EDGAR, Yahoo Finance, and other sources.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| mappings | array | opt | — | List of identifier objects, each with idType and idValue. idType options: 'TICKER', 'ID_ISIN', 'ID_CUSIP', 'ID_FIGI'. Optional: exchCode, currency. |
{
"tool": "MapInstrumentIds",
"params": {
"mappings": [
{ "idType": "TICKER", "idValue": "AAPL", "exchCode": "US" },
{ "idType": "ID_ISIN", "idValue": "US5949181045" }
],
"question_asked": "Convert AAPL ticker to ISIN and convert Microsoft ISIN to ticker"
}
}
Search Bloomberg OpenFIGI for financial instruments by name or keyword. Returns FIGI, ticker, exchange, and security type for each match. Use when you know the company name but not the ticker or FIGI.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| query | string | opt | — | Instrument name/keyword. E.g. 'Apple Inc', 'NVIDIA', 'S&P 500 ETF'. |
| security_type | string | opt | — | Filter by type. E.g. 'Common Stock', 'ETF', 'Option'. |
| exchange_code | string | opt | — | Filter by exchange. E.g. 'US', 'LN', 'JP'. |
| limit | integer | opt | 20 | Max results to return. |
{
"tool": "SearchFigiInstruments",
"params": {
"query": "NVIDIA",
"security_type": "Common Stock",
"exchange_code": "US",
"question_asked": "Find NVIDIA FIGI and ticker information"
}
}
Search the Global Legal Entity Identifier Foundation (GLEIF) database for LEIs by entity name. Returns the 20-character LEI code, legal name, registration status, legal address, and jurisdiction. Covers 2M+ entities across 200+ jurisdictions.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| name | string | opt | — | Full or partial entity name. E.g. 'Morgan Stanley', 'BlackRock'. |
| country | string | opt | — | Two-letter ISO country code. E.g. 'US', 'GB'. |
| limit | integer | opt | 10 | Max results to return. |
{
"tool": "SearchLEI",
"params": {
"name": "Vanguard Group",
"country": "US",
"question_asked": "Find the LEI for Vanguard Group"
}
}
Retrieve the full GLEIF LEI record for one entity using its 20-character LEI code. Returns legal name, registration status, legal and headquarters address, managing LOU, and renewal dates.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| lei | string | opt | — | 20-character LEI code. Obtain from SearchLEI. E.g. 'INR2EJN1ERAN0W5ZP974'. |
{
"tool": "GetLEIDetail",
"params": {
"lei": "549300BFL5DRQJHBSZ57",
"question_asked": "Full LEI detail for Vanguard Group"
}
}
Advisor Practice Benchmarks
Static curated reference. No API key required.
Return Kitces Research advisor practice benchmark data for independent and RIA-affiliated financial advisors. Covers median and top-quartile metrics across revenue, fees, technology, staffing, and client metrics. Data is embedded as curated static reference — no external call is made.
| Name | Type | Req | Default | Description |
|---|---|---|---|---|
| category | string | opt | 'all' | Options: 'revenue', 'fees', 'technology', 'staffing', 'clients', 'all'. |
{
"tool": "GetAdvisorBenchmarks",
"params": {
"category": "fees",
"question_asked": "What are typical AUM fee schedules for independent RIAs?"
}
}
All tools inherit the following base parameters (omit them unless needed):
question_askedstring — full user question text for context-aware responsessource_resource_idstring — cache ID from a prior call, for follow-up queries on the same datasetmcp_prompt_idstring — auto-generated UUID for session tracking; do not set manually
Data freshness and availability depend on upstream APIs. All regulatory tools (FINRA, SEC) reflect public disclosure data as filed.