All 27 MCP tools this server advertises, generated from the schema it embeds.
This page is generated from go/mcpserver/tool_schemas.json, the tool schema file the MCP server embeds and advertises over tools/list. Names, parameters, defaults, and required flags stay in sync with what the live server actually accepts, because the table rows come from that file, not from hand-typed notes.
Call any of these over MCP at https://financialdatasets.rip/mcp. See MCP Server for client setup. Only 15 of the 27 tools also have a REST route. See Coverage for the gap between the two.
Implemented and confirmed against production Monid with real paid calls.
Implemented, unverified live
Implemented and unit-tested against mocked provider responses. No paid production call has confirmed it yet.
Not implemented
Registered for interface parity. Every call answers a zero-cost not_implemented error.
get_income_statement, get_balance_sheet, get_cash_flow_statement, and get_financial_metrics default period differently depending on transport. The MCP tool schema default is ttm, as published in the tool schema. The REST route for the same data defaults an omitted period to annual instead. Pass period explicitly on both transports.
Defaults on this page are the MCP tool schema defaults, what a tool call uses when you omit a parameter. The REST facade documented in the API Reference sets its own defaults per route, and they do not always match. get_filings’ MCP default limit is 100. The REST /filings route defaults an omitted limit to 10. Pass parameters explicitly when a default matters to you.
Live, validatedLooks up a US public company by ticker in Monid’s company catalog and returns its ticker and registered name. Cik lookup is declared for schema parity, but any call that sets cik is rejected with a bad_request error. Only the ticker path is routed. The response schema has room for market cap, sector, exchange, SIC codes, and similar attributes, but this server sources ticker and name only; every other field is left out rather than filled with a guess.
Parameter
Type
Required
Default
Description
ticker
string
no
Stock ticker to look up, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’. Required; this server does not support cik-based lookup.
cik
string
no
SEC Central Index Key. Accepted for schema parity, but every call that sets it is rejected with a bad_request error; pass ticker instead.
Live, validatedReturns a company’s balance sheet. Assets, liabilities, and shareholders’ equity as of each report_period, one row per report_period, built from its reported financial statements and joined with filing metadata where this server can source it. As_reported is accepted for schema parity, but any true value is rejected with a bad_request error: this server always returns the standardized fields, never a filer’s raw as-reported line items.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol to fetch the statement for, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
period
string (annual, quarterly, ttm)
no
"ttm"
Reporting cadence: ‘annual’, ‘quarterly’, or ‘ttm’ (trailing twelve months, the default).
limit
integer
no
4
Maximum number of periods to return (default 4, maximum 100).
report_period_gte
string
no
Only include rows whose report_period falls on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Only include rows whose report_period falls on or before this date, given as YYYY-MM-DD.
report_period_gt
string
no
Only include rows whose report_period falls strictly after this date, given as YYYY-MM-DD.
report_period_lt
string
no
Only include rows whose report_period falls strictly before this date, given as YYYY-MM-DD.
report_period
string
no
Only include the row whose report_period exactly equals this date, given as YYYY-MM-DD.
as_reported
boolean
no
false
When true, would return the filer’s raw as-reported line items instead of the standardized fields. This server does not source raw as-reported data, so any true value is rejected with a bad_request error; only the default of false is honored.
Live, validatedReturns a company’s cash flow statement. Operating, investing, and financing cash flows for each report_period, one row per report_period, built from its reported financial statements and joined with filing metadata where this server can source it. As_reported is accepted for schema parity, but any true value is rejected with a bad_request error: this server always returns the standardized fields, never a filer’s raw as-reported line items.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol to fetch the statement for, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
period
string (annual, quarterly, ttm)
no
"ttm"
Reporting cadence: ‘annual’, ‘quarterly’, or ‘ttm’ (trailing twelve months, the default).
limit
integer
no
4
Maximum number of periods to return (default 4, maximum 100).
report_period_gte
string
no
Only include rows whose report_period falls on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Only include rows whose report_period falls on or before this date, given as YYYY-MM-DD.
report_period_gt
string
no
Only include rows whose report_period falls strictly after this date, given as YYYY-MM-DD.
report_period_lt
string
no
Only include rows whose report_period falls strictly before this date, given as YYYY-MM-DD.
report_period
string
no
Only include the row whose report_period exactly equals this date, given as YYYY-MM-DD.
as_reported
boolean
no
false
When true, would return the filer’s raw as-reported line items instead of the standardized fields. This server does not source raw as-reported data, so any true value is rejected with a bad_request error; only the default of false is honored.
Live, validatedReturns a company’s income statement. Revenue, expenses, and net income for each report_period, one row per report_period, built from its reported financial statements and joined with filing metadata where this server can source it. As_reported is accepted for schema parity, but any true value is rejected with a bad_request error: this server always returns the standardized fields, never a filer’s raw as-reported line items.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol to fetch the statement for, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
period
string (annual, quarterly, ttm)
no
"ttm"
Reporting cadence: ‘annual’, ‘quarterly’, or ‘ttm’ (trailing twelve months, the default).
limit
integer
no
4
Maximum number of periods to return (default 4, maximum 100).
report_period_gte
string
no
Only include rows whose report_period falls on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Only include rows whose report_period falls on or before this date, given as YYYY-MM-DD.
report_period_gt
string
no
Only include rows whose report_period falls strictly after this date, given as YYYY-MM-DD.
report_period_lt
string
no
Only include rows whose report_period falls strictly before this date, given as YYYY-MM-DD.
report_period
string
no
Only include the row whose report_period exactly equals this date, given as YYYY-MM-DD.
as_reported
boolean
no
false
When true, would return the filer’s raw as-reported line items instead of the standardized fields. This server does not source raw as-reported data, so any true value is rejected with a bad_request error; only the default of false is honored.
Live, validatedReturns a company’s historical financial-metrics series. Margins, per-share figures, and turnover and leverage ratios computed from its reported financial statements. One row per report_period. Because historical market values (share price, market capitalization) are not sourceable for past periods without inventing numbers, this server omits every metric derived from them: enterprise_value, the price_to_* ratios, EV multiples, free_cash_flow_yield, peg_ratio, return_on_invested_capital, currency, and filing_datetime never appear. Margin, ROE, and ROA figures use each period’s ending balance; turnover ratios use the average of the period’s opening and ending balances. TTM rows additionally omit the filing-identity fields (accession_number, form_type, filing_url, filing_date), since a trailing-twelve-month window spans more than one filing.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol to compute metrics for, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
period
string (annual, quarterly, ttm)
no
"ttm"
Reporting cadence: ‘annual’, ‘quarterly’, or ‘ttm’ (trailing twelve months, the default).
limit
integer
no
4
Maximum number of periods to return (default 4, maximum 100).
report_period_gte
string
no
Only include rows whose report_period falls on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Only include rows whose report_period falls on or before this date, given as YYYY-MM-DD.
report_period_gt
string
no
Only include rows whose report_period falls strictly after this date, given as YYYY-MM-DD.
report_period_lt
string
no
Only include rows whose report_period falls strictly before this date, given as YYYY-MM-DD.
report_period
string
no
Only include the row whose report_period exactly equals this date, given as YYYY-MM-DD.
Live, validatedReturns a single current snapshot of a company’s key financial metrics. Market capitalization, valuation ratios such as P/E, and similar live indicators. Built from the most recent quote and statement data this server can source right now. Use get_financial_metrics instead for a historical series across multiple periods.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol to snapshot, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
Live, validatedReturns a flat list of EarningsRecord objects, each carrying ticker, report_period, fiscal_period, currency, source_type, filing_date, filing_url, accession_number, and a quarterly and/or annual block with revenue, EPS, and surprise-versus-estimate figures. This server composes every record from a company’s 10-K or 10-Q filing only; 8-K earnings releases and 20-F foreign-filer reports are not sourced. Pass ticker to fetch up to 5 of that company’s most recent earnings records, newest filing_date first. Omit ticker to pull the market-wide feed instead: this server walks the Nasdaq earnings calendar, resolves each reporting company’s latest 10-K/10-Q earnings row in parallel, and returns up to 5 rows sorted by filing_date descending, skipping any ticker it cannot resolve rather than failing the whole request.
Parameter
Type
Required
Default
Description
ticker
string
no
Ticker symbol, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’, to fetch one company’s most recent earnings. Leave this out to fetch the market-wide feed of recently filed earnings across every company this server can resolve from the Nasdaq earnings calendar.
Live, validatedReturns the latest live price snapshot for a stock: current price, trading volume, and the day’s open, high, low, and close, sourced from Monid’s real-time summary route.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker to snapshot, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
Live, validatedReturns historical OHLCV price bars for a stock across a date range. This server always sources daily bars and, for interval values other than ‘day’, aggregates them locally into week/month/year bars; ‘second’ and ‘minute’ are declared in the schema for parity but are rejected with a bad_request error, since sub-day granularity is not sourced. Interval_multiplier is accepted for schema parity, but only its default of 1 is honored. Any other value is rejected. Despite the schema’s stated defaults, this server requires both start_date and end_date; omitting either is rejected rather than defaulting to a trailing year or today. Bars come back in ascending time order, and each bar’s time is the bar’s end date in UTC.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker to fetch price history for, for example ‘AAPL’, ‘MSFT’, or ‘TSLA’.
interval
string (second, minute, day, week, month, year)
no
"day"
Bar size. This server sources daily bars and aggregates them locally for ‘week’, ‘month’, and ‘year’ (the default is ‘day’); ‘second’ and ‘minute’ are declared for schema parity but are rejected with a bad_request error.
interval_multiplier
integer
no
1
Multiplier applied to interval. Only the default value of 1 is supported; any other value is rejected with a bad_request error.
start_date
string
no
Start of the date range, given as YYYY-MM-DD. Required by this server; there is no default despite the schema’s stated one.
end_date
string
no
End of the date range, given as YYYY-MM-DD. Required by this server; there is no default despite the schema’s stated one.
Live, validatedFetches recent news articles about a company, matched to its ticker through entity search and sorted newest first. Ticker is required: this server does not route the market-wide, tickerless news feed the wider schema describes, so leaving it out is rejected with a bad_request error.
Parameter
Type
Required
Default
Description
ticker
string
no
Ticker of the company to fetch news for, for example ‘AAPL’ or ‘MSFT’. Required; this server does not source market-wide news, so leaving it out is rejected.
limit
integer
no
5
Maximum number of articles to return (default 5, maximum 10).
Live, validatedFetches one or more sections (“items”) from a company’s 10-K, 10-Q, or 8-K SEC filing. For example Item 1 (Business), Item 1A (Risk Factors), or Item 9.01 (Financial Statements and Exhibits). Supply year to target a specific filing year; for 10-Q filings, quarter narrows further to one quarter. Omit year and this server automatically resolves the ticker’s most recently filed matching filing instead of requiring one. Accession_number narrows the match when several filings of the requested type and year exist, which matters most for 8-K, where a company can file more than once a year. Set item to one or more codes from list_filing_item_types to return only those sections; leave it out to return every section this server can extract from the filing.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker symbol of the filer, for example ‘AAPL’.
filing_type
string (10-K, 10-Q, 8-K)
yes
SEC form to pull sections from: ‘10-K’ (annual report), ‘10-Q’ (quarterly report), or ‘8-K’ (current report).
year
integer
no
Filing year to target. Optional: when it is left out, this server automatically resolves the ticker’s most recently filed matching filing_type instead of requiring a year.
quarter
integer
no
Quarter (1-4) used to disambiguate among a ticker’s 10-Q filings in the given year; ignored for 10-K and 8-K.
accession_number
string
no
SEC accession number that pins down one specific filing among several matching filing_type/year candidates; most useful for 8-K, where a company can file more than once a year.
item
array
no
One or more item codes to return, such as ‘Item-1A’ or ‘Item-9.01’; see list_filing_item_types for the full catalog per filing_type. Omit to return every section this server can extract from the filing.
Live, validatedLists SEC filings for a ticker, including each filing’s accession number, form type, report date, and document URL. Pass ticker to identify the company; cik is accepted for schema parity, but every call that sets it is rejected with a bad_request error. Only the ticker path is routed. Filing_type narrows results to one of ‘10-K’, ‘10-Q’, ‘8-K’, ‘20-F’, or ‘6-K’; limit bounds how many filings come back.
Parameter
Type
Required
Default
Description
ticker
string
no
Ticker of the filer to look up, for example ‘AAPL’. Required; this server does not support cik-based lookup.
cik
string
no
SEC Central Index Key. Accepted for schema parity, but every call that sets it is rejected with a bad_request error; pass ticker instead.
limit
integer
no
100
Maximum number of filings to return (default 100, maximum 1000).
filing_type
string
no
Restricts results to one filing type: ‘10-K’, ‘10-Q’, ‘8-K’, ‘20-F’, or ‘6-K’. Any other value is rejected with a bad_request error.
Live, validatedLists every filing-section code this server recognizes for get_filing_items’ item parameter, grouped by filing_type (10-K, 10-Q, 8-K). Each entry’s description field carries the section’s official SEC title, so this catalog also serves as a lookup table for what each item code covers.No parameters.
Implemented, unverified liveExtracts segment-level breakdowns. Revenue, operating income, and depreciation by product or business segment; assets, goodwill, and long-lived assets by segment; and capital expenditure by segment. From a company’s most recent annual 10-K, through document extraction rather than a segments database. Period only accepts ‘annual’ today; passing ‘quarterly’ is rejected with a bad_request error, since this server extracts from the annual 10-K only. The report_period filters narrow the extracted segment records to a range or an exact date.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company to extract segment data for, for example ‘AAPL’.
period
string (annual, quarterly)
no
"annual"
Reporting cadence. Only ‘annual’ (the default) is supported; ‘quarterly’ is rejected with a bad_request error.
limit
integer
no
4
Maximum number of segment records to return (default 4, maximum 100).
report_period_gte
string
no
Only include segment records whose report_period falls on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Only include segment records whose report_period falls on or before this date, given as YYYY-MM-DD.
report_period_gt
string
no
Only include segment records whose report_period falls strictly after this date, given as YYYY-MM-DD.
report_period_lt
string
no
Only include segment records whose report_period falls strictly before this date, given as YYYY-MM-DD.
report_period
string
no
Only include the segment record whose report_period exactly equals this date, given as YYYY-MM-DD.
Implemented, unverified liveExtracts forward-looking KPI guidance issued by company management from a company’s single most recent matching SEC filing: its latest 10-K for period=‘annual’ or latest 10-Q for period=‘quarterly’. Data comes from document extraction, not an internal guidance database. Metric_name filters the extracted set to one guidance metric. Report_period_gte and report_period_lte check whether that one filing’s report_period falls in the given range: if it does not, this server returns an empty list rather than searching earlier filings. This server applies no per-account gating; every caller with a valid Monid key gets the same access.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company to extract from, for example ‘AAPL’.
period
string (quarterly, annual)
no
"quarterly"
Which filing to extract from: ‘quarterly’ (the latest 10-Q, the default) or ‘annual’ (the latest 10-K).
metric_name
string
no
Restrict the response to one metric name from the extracted set, for example ‘Revenue’ or ‘EPS’. Omit to return every metric this server extracts from the filing.
report_period_gte
string
no
Only return guidance rows if the selected filing’s report_period falls on or after this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
report_period_lte
string
no
Only return guidance rows if the selected filing’s report_period falls on or before this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
limit
integer
no
4
Maximum number of guidance rows to return from the selected filing (default 4, maximum 50).
Implemented, unverified liveExtracts KPI-taxonomy metrics. Subscriber counts, ARPU, units sold, and similar operating metrics. From a company’s single most recent matching SEC filing: its latest 10-K for period=‘annual’ or latest 10-Q for period=‘quarterly’. Data comes from document extraction, not an internal metrics database. Metric_name filters the extracted set to one metric. Report_period_gte and report_period_lte check whether that one filing’s report_period falls in the given range: if it does not, this server returns an empty list rather than searching earlier filings. This server applies no per-account gating; every caller with a valid Monid key gets the same access.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company to extract from, for example ‘AAPL’.
period
string (quarterly, annual)
no
"quarterly"
Which filing to extract from: ‘quarterly’ (the latest 10-Q, the default) or ‘annual’ (the latest 10-K).
metric_name
string
no
Restrict the response to one metric name from the extracted set, for example ‘iPhone units sold’. Omit to return every metric this server extracts from the filing.
report_period_gte
string
no
Only return KPI rows if the selected filing’s report_period falls on or after this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
report_period_lte
string
no
Only return KPI rows if the selected filing’s report_period falls on or before this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
limit
integer
no
4
Maximum number of KPI rows to return from the selected filing (default 4, maximum 50).
Implemented, unverified liveExtracts non-GAAP metrics a company reports about itself. Adjusted EBITDA, company-defined Free Cash Flow, and similar figures. From its single most recent matching SEC filing: the latest 10-K for period=‘annual’ or latest 10-Q for period=‘quarterly’. Data comes from document extraction, not an internal metrics database. Metric_name filters the extracted set to one metric. Report_period_gte and report_period_lte check whether that one filing’s report_period falls in the given range: if it does not, this server returns an empty list rather than searching earlier filings. This server applies no per-account gating; every caller with a valid Monid key gets the same access.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company to extract from, for example ‘AAPL’.
period
string (quarterly, annual)
no
"quarterly"
Which filing to extract from: ‘quarterly’ (the latest 10-Q, the default) or ‘annual’ (the latest 10-K).
metric_name
string
no
Restrict the response to one metric name from the extracted set, for example ‘Adjusted EBITDA’ or ‘Free Cash Flow’. Omit to return every metric this server extracts from the filing.
report_period_gte
string
no
Only return non-GAAP rows if the selected filing’s report_period falls on or after this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
report_period_lte
string
no
Only return non-GAAP rows if the selected filing’s report_period falls on or before this date, given as YYYY-MM-DD; otherwise this server returns an empty list.
limit
integer
no
4
Maximum number of non-GAAP rows to return from the selected filing (default 4, maximum 50).
Implemented, unverified liveReturns the current policy interest rate of the Federal Reserve, the European Central Bank, the Bank of England and the Bank of Japan, each read from the bank’s own publication: the Fed target-range midpoint, the ECB deposit facility rate, the BOE Bank Rate, and the BOJ rate from its newest Statement on Monetary Policy PDF. Each is dated by its decision. No parameters are accepted. A bank whose page cannot be read in a given call is left out; if none can be, the call fails.No parameters.
Implemented, unverified liveReturns an ETF or index fund’s current holdings and each position’s weight (percent of net assets), scraped from the fund’s public holdings fact sheet rather than pulled from an SEC filing feed. The response has a fund header (name, as-of date, total and returned holding counts) followed by holdings sorted by weight descending. As_of narrows to the composition in effect on or before that date; if the routable fact sheet is dated after as_of, this server answers not_found instead of guessing an earlier composition. Asset_class filters holdings to ‘equity’ or ‘bond’ instruments; omit it for everything the fact sheet lists. Limit and offset page through the holdings list.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the fund to fetch, for example ‘SPY’, ‘QQQ’, or ‘VTI’. Required.
as_of
string
no
Return the fund composition in effect on or before this date, given as YYYY-MM-DD. Without it, this server returns whatever the routable fact sheet currently reports.
asset_class
string (equity, bond)
no
Restrict holdings to ‘equity’ or ‘bond’ instruments. Omit to return every holding the fact sheet lists.
limit
integer
no
50
Maximum number of holdings to return in this page (default 50, maximum 1000).
offset
integer
no
0
Number of holdings to skip before this page starts, for paging through a large holdings list (default 0).
Live, validatedLists insider (officer, director, or major-shareholder) buy and sell transactions for a company, sourced from the SEC Form 4 feed. The feed returns at most 15 rows per query, so a larger limit is clamped rather than rejected. Name matches case-insensitively against the feed’s full insider-relationship text (for example ‘Cook’ matches ‘Timothy D Cook - Chief Executive Officer’), not a bare person name.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company whose insider transactions to list, for example ‘AAPL’.
name
string
no
Case-insensitive substring match against the insider’s full relationship text, for example ‘Cook’ or ‘Director’.
filing_date
string
no
Restricts to transactions filed exactly this day, given as YYYY-MM-DD.
filing_date_gte
string
no
Restricts to transactions filed on or after this day, given as YYYY-MM-DD.
filing_date_lte
string
no
Restricts to transactions filed on or before this day, given as YYYY-MM-DD.
limit
integer
no
100
Maximum rows to return. The underlying Form 4 feed returns at most 15 rows per query, so any larger value, including the default, is clamped to 15 rather than rejected.
Not implementedThis server does not yet implement insider-ownership statements: every call returns a typed not-implemented error before any upstream request is made, so it never costs the caller and never returns invented data. Its intended interface mirrors SEC Form 3 (an insider’s day-one ownership statement) and Form 5 (the annual statement): what officers, directors, and 10%+ owners hold. Common shares, options, RSUs. As distinct from get_insider_trades, which is meant to cover the buy/sell events in between.
Parameter
Type
Required
Default
Description
ticker
string
yes
Ticker of the company whose insiders are sought. Accepted for interface parity; has no effect while this tool answers not-implemented.
name
string
no
Case-insensitive substring filter on insider name that would narrow results once this tool is implemented, for example ‘cook’. Accepted for interface parity; has no effect while this tool answers not-implemented.
form_type
string (3, 3/A, 5, 5/A)
no
Would restrict to SEC form ‘3’ (initial ownership statement), ‘5’ (annual statement), or their amendments ‘3/A’/‘5/A’. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date
string
no
Would restrict to filings dated exactly this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_gte
string
no
Would restrict to filings dated on or after this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_lte
string
no
Would restrict to filings dated on or before this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_gt
string
no
Would restrict to filings dated strictly after this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_lt
string
no
Would restrict to filings dated strictly before this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
limit
integer
no
10
Row cap that would bound the response (default 10, maximum 1000). Accepted for interface parity; has no effect while this tool answers not-implemented.
Implemented, unverified liveReturns SEC Form 13F institutional-holdings rows for a security, each carrying the filer’s CIK and name alongside the position, sourced from the SEC Form 4 provider’s institutional-holdings route. Pass ticker to see which institutional filers hold that security. Filer_cik is accepted for schema parity, but every call that sets it is rejected with a bad_request error. This server routes only the ticker path, not a per-filer lookup. Report_period narrows to one quarter-end date; report_period_gte/report_period_lte bound a range. Without a report_period filter, this server returns the most recent quarter the underlying route has on file for the ticker.
Parameter
Type
Required
Default
Description
filer_cik
string
no
SEC CIK of an institutional filer. Accepted for schema parity, but every call that sets it is rejected with a bad_request error; pass ticker instead.
ticker
string
no
Ticker of the held security to look up institutional filers for, for example ‘AAPL’.
report_period
string
no
Restricts to the 13F quarter-end whose report_period exactly equals this date, given as YYYY-MM-DD.
report_period_gte
string
no
Restricts to quarter-ends on or after this date, given as YYYY-MM-DD.
report_period_lte
string
no
Restricts to quarter-ends on or before this date, given as YYYY-MM-DD.
limit
integer
no
10
Maximum number of holdings rows to return (default 10, maximum 200).
Not implementedThis server does not yet implement institutional-filer discovery: every call returns a typed not-implemented error before any upstream request is made, so it never costs the caller and never returns invented data. Once live, it is meant to list SEC 13F filers with their CIK and most recently reported name, with an optional name-prefix filter to help locate the filer_cik that get_institutional_holdings expects.
Parameter
Type
Required
Default
Description
name
string
no
Case-insensitive name prefix that would narrow the filer list once this tool is implemented, for example ‘Berkshire’. Accepted for interface parity; has no effect while this tool answers not-implemented.
Not implementedThis server does not yet implement beneficial-owner discovery: every call returns a typed not-implemented error before any upstream request is made, so it never costs the caller and never returns invented data. Once live, it is meant to list the reporting persons behind SEC Schedule 13D/13G stakes (holders of more than 5% of a company’s shares), pairing each with its SEC filer CIK, and to accept an optional name prefix so callers can locate the filer_cik that get_beneficial_ownership expects.
Parameter
Type
Required
Default
Description
name
string
no
Case-insensitive name prefix that would narrow the beneficial-owner list once this tool is implemented, for example ‘Saba’. Accepted for interface parity; has no effect while this tool answers not-implemented.
limit
integer
no
100
Row cap that would bound how many owners come back once this tool is implemented (default 100, maximum 1000). Accepted for interface parity; has no effect while this tool answers not-implemented.
Not implementedThis server does not yet implement beneficial-ownership lookups: every call returns a typed not-implemented error before any upstream request is made, so it never costs the caller and never returns invented data. Its intended interface mirrors SEC Schedules 13D and 13G, which cover stakes of more than 5% of a share class: 13D signals activist intent (proxy fights, board seats, pushing for a sale), while 13G stakes are passive, typically held by large asset managers. A caller would supply exactly one of ticker (which owners hold this company) or filer_cik (which stakes this owner holds); type would narrow to activist or passive; history, once implemented, would return a stake’s full amendment trail instead of only its latest state. Coverage was scoped to begin January 2025.
Parameter
Type
Required
Default
Description
ticker
string
no
Ticker of the company whose beneficial owners are sought. Supply exactly one of ticker or filer_cik. Accepted for interface parity; has no effect while this tool answers not-implemented.
filer_cik
string
no
SEC CIK of the beneficial owner whose stakes are sought (would be zero-padded to 10 digits). Supply exactly one of ticker or filer_cik; look up a CIK by owner name with get_beneficial_owners. Accepted for interface parity; has no effect while this tool answers not-implemented.
type
string (activist, passive)
no
Would restrict results to ‘activist’ (Schedule 13D) or ‘passive’ (Schedule 13G) stakes; omit for both. Accepted for interface parity; has no effect while this tool answers not-implemented.
history
boolean
no
When true, would return a stake’s full amendment history instead of only its current state. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date
string
no
Would restrict to filings dated exactly this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_gte
string
no
Would restrict to filings dated on or after this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
filing_date_lte
string
no
Would restrict to filings dated on or before this day, given as YYYY-MM-DD. Accepted for interface parity; has no effect while this tool answers not-implemented.
limit
integer
no
10
Row cap that would bound the response (default 10, maximum 1000). Accepted for interface parity; has no effect while this tool answers not-implemented.
Live, validatedLists the exact filter fields, operators, and allowed values screen_stocks currently executes: ‘exchange’ (operator ‘eq’, one of NASDAQ/NYSE/AMEX) and ‘market_cap’ (operator ‘eq’, one of the bucket labels mega/large/mid/small/micro/nano). The screen_stocks parameter schema has room for many more fields across income-statement, balance-sheet, cash-flow, and company-attribute metrics, but this server only ever routes the two fields listed here; the rest are declared for schema parity and are rejected with a bad_request error if used.No parameters.
Live, validatedScreens stocks with the Nasdaq stock screener, but only two fields are wired up in this server: ‘exchange’ (one of ‘NASDAQ’, ‘NYSE’, ‘AMEX’) and ‘market_cap’ (one of the bucket labels ‘mega’, ‘large’, ‘mid’, ‘small’, ‘micro’, ‘nano’. Not a numeric threshold). Supply one or two filter objects, each using operator ‘eq’ with a string value; any other field, operator, numeric value, or repeated field is rejected with a bad_request error before this server spends anything. Call list_stock_screener_filters first to see the exact set this server executes. Currency is accepted for schema parity, but only ‘USD’ (the default) is honored; any other value is rejected.
Parameter
Type
Required
Default
Description
filters
array
yes
One or two filter objects of the form . This server executes only field ‘exchange’ (operator ‘eq’, value one of ‘NASDAQ’/‘NYSE’/‘AMEX’) and field ‘market_cap’ (operator ‘eq’, value one of the bucket labels ‘mega’/‘large’/‘mid’/‘small’/‘micro’/‘nano’); each field may appear at most once. Any other field, operator, or value type is rejected with a bad_request error. Call list_stock_screener_filters to see this exact set.
currency
string
no
"USD"
Currency of the screened financial data. Only ‘USD’ (the default) is supported by this server; any other value is rejected with a bad_request error.
limit
integer
no
10
Maximum number of matching stocks to return (default 10, maximum 100).