equibles
Server Details
US stock-market & financial data: SEC filings, fundamentals, holdings, insider trades, calls, FRED.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- daniel3303/stock-market-mcp-server
- GitHub Stars
- 1
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Score is being calculated. Check back soon.
Available Tools
90 toolsCompareFinancialFactCompare Financials Across CompaniesRead-onlyInspect
Compare one financial concept across several companies for the same fiscal period — peer comparison. Returns one row per ticker with the latest-restated value; tickers with no data for the period are listed separately. Fiscal year/period follow each company's OWN fiscal calendar (e.g. NVDA's fiscal 2025 ended January 2025), so peer rows can cover very different calendar months — check the Period End column.
| Name | Required | Description | Default |
|---|---|---|---|
| concept | Yes | Concept alias, e.g. 'revenue', 'net-income', 'eps-diluted'. Call with an unknown value to list supported aliases. | |
| tickers | Yes | Comma-separated tickers, e.g. 'AAPL,MSFT,GOOGL' (max 25) | |
| fiscalYear | Yes | Fiscal year, e.g. 2023 | |
| fiscalPeriod | No | Fiscal period: 'FY' (default) or 'Q1'..'Q4' | FY |
GetAtmProgramsAt-the-Market Offering ProgramsRead-onlyInspect
Get a company's at-the-market (ATM) equity offering programs — the dilution mirror-image of the buyback picture GetBuybackPrograms returns: establishment date, total capacity the company may sell "up to", cumulative amount sold, remaining availability with per-figure as-of dates, expiry, a derived exhausted/expired status, and source filings. ATM programs have no tagged XBRL equivalent, so figures come from verified extractions of the company's own 10-K, 10-Q and 8-K filings (offering-note prose and disclosure tables); only filings from roughly the last 13 months are scanned, so an empty result means no program was captured there — not proof the company runs no ATM program. Nothing is estimated.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetAverageTrueRangeAverage True Range (ATR)Read-onlyInspect
Average True Range (ATR) for a stock. Wilder's volatility measure built from the True Range (max of high-low, |high-prev_close|, |low-prev_close|) and smoothed recursively. Higher ATR means wider daily moves; commonly used for position sizing and stop placement. ATR is denominated in the stock's price units (USD). The smoothing is warmed up on price history fetched before startDate, so values do not depend on the requested range's left edge.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Smoothing window (default: 14) | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 6 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500); the newest rows are kept and listed newest first. |
GetBollingerBandsBollinger BandsRead-onlyInspect
Bollinger Bands for a stock. A middle band (simple moving average of close) with upper and lower bands set a number of standard deviations above and below it. Bands widen when volatility rises and contract when it falls; price touching the upper/lower band is a common overbought/oversold cue. Includes %B ((close-lower)/(upper-lower)) and bandwidth ((upper-lower)/middle) columns. The moving-average window is warmed up on price history fetched before startDate, so values do not depend on the requested range's left edge.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Moving-average window (default: 20) | |
| stdDev | No | Standard deviations for the upper/lower bands (default: 2) | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 6 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500); the newest rows are kept and listed newest first. |
GetBuybackProgramsShare Repurchase ProgramsRead-onlyInspect
Get a company's share-repurchase (buyback) picture: tracked repurchase programs (announcement date, authorized total, remaining availability, expiry, source filings), the latest program-authorization figures, and the repurchase history — cash spent, shares repurchased, and average price per fiscal year and recent quarters. Figures come from the company's own XBRL facts plus verified extractions of filings' narrative text; nothing is estimated, and figures a company stopped restating carry an explicit staleness label. For the dilution mirror-image — at-the-market (ATM) equity offering programs — use GetAtmPrograms.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetCallInsightsEarnings Call InsightsRead-onlyInspect
Get the AI-scored insights for a company's recent earnings calls — the management-tone read (a net tone score and a hedging score) and the call's key themes with their computed mention counts and per-theme tone. Newest call first. Verifier-approved — only scored and approved calls appear, so quarters can be missing from the sequence (a gap note flags non-consecutive quarters). Use it to gauge how confident or guarded management sounded and what they talked about most.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of scored calls to return, newest first (default 2, max 8; values outside 1-8 are clamped) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| fiscalYear | No | Optional fiscal year, in the company's own fiscal calendar, to fetch a specific period's insights (default: newest first) | |
| fiscalQuarter | No | Optional fiscal quarter, 1-4, to fetch a specific period's insights (default: newest first) |
GetCftcPositioningCFTC Futures Positioning (COT)Read-onlyInspect
Get Commitments of Traders (COT) positioning data for a specific futures contract. Shows commercial and non-commercial positions over time. Values are contract counts from the legacy futures-only COT report (positions as of each Tuesday, published Friday). Use SearchCftcMarkets to find available market codes.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year ago) | |
| marketCode | Yes | CFTC contract market code (e.g., 067651 for Crude Oil, 088691 for Gold, 13874A for E-mini S&P 500) | |
| maxResults | No | Maximum number of reports to return (default: 52, max: 500). When the range holds more reports the newest are kept; rows are always listed oldest to newest. |
GetCompanyKpisCompany KPIsRead-onlyInspect
Get a company's own key performance indicators (KPIs) as extracted from its Item-2.02 8-K earnings releases, earnings-call transcripts, and 10-K/10-Q MD&A sections: the operational metrics and non-GAAP figures XBRL does not carry (subscribers, memberships, stores, units delivered, backlog, ARR, DAU/MAU, adjusted EBITDA, free cash flow, same-store sales %). Each metric is a time series across releases with the latest stated value, its period, the filed date and source (release, earnings call, or 10-K/10-Q filing), the year-over-year change when the prior-year figure is on file, and the verbatim disclosure. Pass metric to get one metric's full period-by-period history instead of the latest-value overview. Values are exactly as the company stated them, on the stated scale; earnings-call rows are transcript-verbatim and can carry transcription artifacts in labels and quotes — prefer release/filing-sourced rows for exact terminology. When the release states a GAAP-to-non-GAAP reconciliation for a metric, a Reconciliation line shows the bridge: the GAAP starting line, each stated adjustment, and the non-GAAP result.
| Name | Required | Description | Default |
|---|---|---|---|
| metric | No | Optional metric name to expand into its full history (e.g., 'subscribers', 'Adjusted EBITDA'). Matches the company's own metric labels case-insensitively; when the name matches several metrics the tool lists those candidates. Omit for the overview of every metric's latest reading. | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetCongressionalTradesCongressional Trades by StockRead-onlyInspect
Get congressional stock trades for a specific ticker (newest first, last year by default). Shows which members of Congress bought or sold shares, with transaction and filing dates; amounts are the disclosed ranges, not exact values. Use GetMemberTrades for one member's trades across all tickers.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT, NVDA) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to today) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year ago) | |
| maxResults | No | Maximum number of trades to return (default: 50, max: 500, newest first) | |
| transactionType | No | Filter by transaction type: Purchase or Sale; the synonyms Buy/Sell are accepted (defaults to all) |
GetConsensusHoldingsConsensus Holdings Across InstitutionsRead-onlyInspect
Get the consensus / combined portfolio of 2-25 institutions for their latest common report date. Returns stocks ranked by how many of the supplied funds hold them (descending), then by combined value. Filter by minFunds to only show stocks held by at least that many funds. Use this to answer 'what do these funds agree on?' or 'show me the top picks across these N investors combined.'
| Name | Required | Description | Default |
|---|---|---|---|
| minFunds | No | Minimum number of funds a stock must be held by to appear (default: 1 — note that 1 also includes stocks held by a single fund; set 2+ for true consensus) | |
| maxResults | No | Maximum number of stocks to return (default: 30, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the latest common quarter; an off-quarter date snaps to the nearest common report on or before it) | |
| institutionNames | Yes | Comma- or semicolon-separated institution names or CIKs (partial names resolve to the largest matching 13F filer). 2-25 names. |
GetCustomerConcentrationCustomer Concentration RiskRead-onlyInspect
Get a company's customer-concentration risk disclosure — statements like "one customer accounted for 31% of revenue": each disclosed figure's basis (revenue or receivables), customer count, percentage, period, and verbatim filing quote, with the source filing. Figures come from verified extractions of the filings' own narrative text and cover only filers who leave the disclosure untagged — issuers that tag it in structured XBRL (e.g. NVDA, AAPL) are skipped by design and answered with a pointer to GetFinancialFact's 'customer-concentration' concept. A miss is never a statement of no risk. Pass maxFilings > 1 to also see earlier filings' disclosures (the concentration trend).
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). | |
| maxFilings | No | How many of the newest disclosing filings to return (default 1 — the latest; cap 10). |
GetEarningsBriefEarnings BriefRead-onlyInspect
Get the AI 'Earnings Brief' for a company's recent earnings calls — a verifier-approved read of each quarter's call: a TL;DR, the bullish and bearish points, and verbatim pull-quotes from the call with their speaker and role. Newest quarter first. Only calls with an approved brief appear, so quarters can be missing from the sequence. This is the same brief the Equibles stock page shows; use it for a fast qualitative read of what management said and how it landed.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of quarterly briefs to return, newest first (default 2, max 8; values outside 1-8 are clamped) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| fiscalYear | No | Optional fiscal year, in the company's own fiscal calendar, to fetch a specific period's brief (default: newest first) | |
| fiscalQuarter | No | Optional fiscal quarter, 1-4, to fetch a specific period's brief (default: newest first) |
GetEarningsCallEventEarnings Call EventRead-onlyInspect
Get the earnings-call event for a company's fiscal quarter — the single record that groups the quarter's call artefacts (audio, transcript, slide deck, and 8-K earnings release) under one event. Returns the event's id (usable with GetInvestorEventSpeakers), title, call date, status, which of the four artefacts are available, and the release's extracted guidance rows when the 8-K carries approved ones. When a transcript is available, read it with GetEarningsCallSpeakers, or get the AI read via GetEarningsBrief / GetCallInsights. Use this to ask "what do we have for AAPL FY2025 Q3?" rather than chasing each artefact separately.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| fiscalYear | Yes | Fiscal year the quarter belongs to, in the company's own fiscal calendar — this can run ahead of the calendar year (e.g., NVDA's May 2025 call is FY2026 Q1) | |
| fiscalQuarter | Yes | Fiscal quarter, 1-4 |
GetEarningsCallSpeakersEarnings Call TranscriptRead-onlyInspect
Get the speaker-labelled transcript of a company's earnings call for a fiscal quarter — every speaker turn in order, attributed to the real person (executive or sell-side analyst) with their role at the time. Identities appear only when the resolution is trusted (auto-resolved or human-reviewed); unverified voices show as a role label (e.g. Operator) or a neutral speaker number. Use GetEarningsCallEvent first to check a transcript exists.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of speaker turns to return (default 50, max 200; values outside 1-200 are clamped) | |
| offset | No | Number of leading speaker turns to skip, for paging through calls longer than the 200-turn cap (default 0) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| fiscalYear | Yes | Fiscal year the quarter belongs to, in the company's own fiscal calendar — this can run ahead of the calendar year (e.g., NVDA's May 2025 call is FY2026 Q1) | |
| fiscalQuarter | Yes | Fiscal quarter, 1-4 |
GetEconomicCalendarEconomic Release CalendarRead-onlyInspect
Get the economic release calendar — scheduled (upcoming) and recent publication dates of US macro data releases, with the FRED series each release updates and an importance tier per release (High = the tier-1 scheduled market movers: CPI, PPI, Employment Situation, GDP, PCE, retail sales; Medium = other genuine scheduled prints; Low = daily rate/market levels like SOFR or VIX). FOMC meetings are NOT included — FRED's release feed has no real FOMC meeting dates; use the Federal Reserve's published meeting calendar for those. Defaults to the next 30 days. Use minImportance=high to see only the market movers, and GetEconomicIndicator to fetch a series' data after it prints.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to 30 days after the start date) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to today, UTC) | |
| maxResults | No | Maximum number of release dates to return (default: 100, max: 500, chronological) | |
| minImportance | No | Minimum importance tier to include: low, medium, or high (defaults to low = everything) |
GetEconomicIndicatorEconomic Indicator HistoryRead-onlyInspect
Get time series data for a FRED economic indicator. Returns historical observations for indicators like FEDFUNDS (fed funds rate), CPIAUCSL (CPI inflation), UNRATE (unemployment), GDP, T10Y2Y (yield spread), VIXCLS (VIX), SP500, MORTGAGE30US, M2SL (money supply), and more. Covers the curated ~40-series set Equibles tracks, not the full FRED catalog — use SearchEconomicIndicators to find available series.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| seriesId | Yes | FRED series ID (e.g., FEDFUNDS, CPIAUCSL, UNRATE, GDP, T10Y2Y, VIXCLS) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year before the end date) | |
| maxResults | No | Maximum number of observations to return (default: 100, max: 500). When the range holds more, the newest maxResults are kept; rows are always listed in ascending date order. |
GetExecutiveChangesExecutive and Board ChangesRead-onlyInspect
Get a company's executive and director changes — CEO/CFO/officer/board appointments, resignations, terminations, and retirements — as disclosed in its 8-K Item 5.02 filings, newest filing first. Each change carries the person's name and role exactly as filed, the action, the effective date when stated, the verbatim disclosure, and the source filing (form + link). Changes are extracted from the filings' narrative text and verified before publication. Coverage is still back-filling: the output names the oldest covered filing date, and an empty answer distinguishes 'covered filings disclose no changes' from 'filings not yet processed'.
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Optional action filter: Appointed, Resigned, Terminated, or Retired. | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). | |
| endDate | No | Optional newest filed date, YYYY-MM-DD. | |
| startDate | No | Optional oldest filed date, YYYY-MM-DD. | |
| maxResults | No | Maximum changes to return (default 25, cap 100). |
GetExecutiveCompensationExecutive CompensationRead-onlyInspect
Get a company's named-executive compensation as disclosed in its DEF 14A proxy statements' Summary Compensation Table — salary, bonus, stock and option awards, non-equity incentive, other compensation, and the company-reported total per executive per fiscal year, newest year first. Figures are exactly as the company disclosed them; Total is the filer's own figure, never a recomputation. Coverage is limited to US DEF 14A filers (foreign private issuers file 20-F and are not covered) and is still back-filling: the output states the newest proxy on file next to the newest imported year, so stale coverage is visible.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). | |
| maxYears | No | Optional cap on how many of the newest fiscal years to return (default 0 = all imported years). |
GetExemptOfferingsExempt Offerings (Form D)Read-onlyInspect
Get recent exempt securities offerings (private placements) for a company from SEC Form D notices. Each Form D reports a Regulation D offering, showing the issuer, the date of first sale, the total offering amount (a dollar figure or "Indefinite"), the amounts sold and remaining, the minimum investment, the number of investors, the claimed exemptions, whether the notice is an amendment (D/A), and its SEC accession number. Ongoing offerings are re-noticed through D/A amendments that RESTATE the same offering — group rows by first-sale date and offering amount and use only the latest notice of each chain, or capital raised will be counted several times over. Use this to track how a company is raising private capital alongside its public filings.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| toDate | No | Optional latest filing date to include, ISO format yyyy-MM-dd (e.g., 2024-12-31) | |
| fromDate | No | Optional earliest filing date to include, ISO format yyyy-MM-dd (e.g., 2024-01-01) | |
| maxResults | No | Maximum number of notices to return (default: 50, max: 500; values outside 1-500 are clamped) |
GetFailsToDeliverFails-to-Deliver DataRead-onlyInspect
Get fails-to-deliver (FTD) data for a stock from the SEC's twice-monthly FTD files. Quantity is the aggregate net fail-to-deliver position OUTSTANDING on each settlement date — a balance, not that day's new fails, so never sum Quantity across dates. Price is the previous trading day's closing price (SEC file convention, not a settlement price) and Value = Quantity × Price. Dates absent from the table had no reported fails; the SEC publishes each half-month batch with roughly a two-week lag, so the newest rows trail today. High or persistent FTD balances may indicate naked short selling or settlement issues.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, GME, AMC) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 3 months ago) | |
| maxResults | No | Maximum number of records to return — keeps the most recent N settlement dates in the range, displayed oldest to newest (default: 90, max: 500) |
GetFdaCatalystsFDA Advisory Committee CalendarRead-onlyInspect
Get scheduled FDA advisory-committee (AdComm) meetings, sourced from the FDA.gov advisory-committee calendar, each with a link to its FDA meeting page. Defaults to meetings in the next 90 days; pass a date range to look further ahead. This is a forward-looking calendar of announced meetings, not a historical archive — coverage starts in late 2025 — and entries are the FDA's own listings, not linked to stock tickers.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to 90 days after the start) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to today) | |
| maxResults | No | Maximum number of meetings to return (default: 60, soonest first) |
GetFinancialFactFinancial Concept LookupRead-onlyInspect
Get a single financial concept (e.g. revenue, net income, diluted EPS, total assets, operating cash flow) over time for a company, sourced from SEC Company Facts (structured XBRL). Returns a time series, one row per fiscal period, using the latest restated value unless asOriginallyReported is set. Fiscal years/quarters follow the company's own fiscal calendar. For a full statement use GetFinancialStatement; to compare peers use CompareFinancialFact.
| Name | Required | Description | Default |
|---|---|---|---|
| form | No | Optional SEC form filter, e.g. '10-K' or '10-Q' | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT) | |
| toDate | No | Optional latest period-end date, YYYY-MM-DD | |
| concept | Yes | Concept alias, e.g. 'revenue', 'net-income', 'eps-diluted', 'total-assets', 'operating-cash-flow'. Call with an unknown value to list supported aliases. | |
| fromDate | No | Optional earliest period-end date, YYYY-MM-DD | |
| maxResults | No | Maximum periods to return, newest first (default 40, max 200) | |
| fiscalPeriod | No | Optional fiscal-period filter: 'FY' (annual only) or 'Q1'..'Q4'. Note that discrete Q4 rows exist only where the filer reported a discrete fourth quarter (most large filers stopped after ~2021). | |
| asOriginallyReported | No | When true, show the value as originally filed (earliest filing) instead of the latest restatement. Default false. |
GetFinancialStatementFinancial StatementsRead-onlyInspect
Get a company's income statement, balance sheet, or cash-flow statement for a given fiscal year and period, sourced from SEC Company Facts (structured XBRL). Returns the standard line items (e.g. revenue, net income, total assets, operating cash flow) with the latest-restated value for the period. Company-specific dimensional facts (e.g. product-segment revenue) are not included — use GetRevenueBreakdown for segment/geographic revenue, and GetFinancialFact or CompareFinancialFact for one line item across periods or across companies.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Fiscal year, e.g. 2023. Defaults to the latest reported year. | |
| period | No | Fiscal period: 'FY' (annual) or 'Q1'..'Q4'. Defaults to the latest reported period. Most filers report no discrete Q4 income/cash-flow facts in XBRL (the fourth quarter is embedded in the full-year figure) — use 'FY' for annual figures. | |
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT, GME) | |
| statement | No | Statement: 'income' (income statement), 'balance' (balance sheet), or 'cashflow' (cash-flow statement); the aliases 'is'/'p&l', 'bs' and 'cf' also work. Defaults to income. | income |
GetFundCloneBacktest13F Portfolio Clone BacktestRead-onlyInspect
Backtest how cloning an institutional filer's reported 13F portfolio would have performed against a market benchmark, either over a trailing window (windowYears) or an explicit fromDate/toDate range. Reconstructs the filer's portfolio at each quarterly 13F snapshot, rebalances on the SEC filing lag (so the simulation uses only information available at the time), and values it forward against the benchmark. Returns total return, annualized return (CAGR), and max drawdown for both the cloned portfolio and the benchmark, plus the alpha between them. Use this to answer 'how would cloning fund X have performed against the market'.
| Name | Required | Description | Default |
|---|---|---|---|
| toDate | No | Optional window end in YYYY-MM-DD format (defaults to today when only fromDate is given) | |
| fromDate | No | Optional window start in YYYY-MM-DD format for an anchored historical backtest (e.g. 2015-01-01); overrides windowYears | |
| benchmark | No | Benchmark ticker to compare against (default: SPY) | SPY |
| institution | Yes | Institution name or SEC CIK (e.g., 'Berkshire Hathaway', '1067983', or zero-padded '0001067983'; ambiguous names resolve to the largest 13F filer) | |
| windowYears | No | Trailing window length in years anchored at today (default: 3, clamped to 1-20; ignored when fromDate/toDate are supplied) |
GetFundHoldingsFund Portfolio HoldingsRead-onlyInspect
Get the portfolio holdings of a registered investment company (mutual fund or ETF) from its most recent SEC Form NPORT-P monthly report. Accepts the fund's own ticker or a fund profile id from SearchFunds, so it also reaches the many fund series that have no ticker of their own. Returns the fund's series, reporting period and net assets, followed by its largest holdings — issuer name, CUSIP, position size, U.S.-dollar value and share of net assets, with the asset category. Use SearchFunds to discover funds, GetFundProfile for the same view with the fund's registrant and total assets, and GetFundsHoldingStock for the inverse question (which funds own a stock). Only registered funds file NPORT-P; operating companies will return no data. Share-class tickers of multi-class mutual funds (e.g. VOO, VFIAX) do not resolve — find those funds by name via SearchFunds.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Fund or ETF ticker symbol (e.g., SPY, IWM) or a fund profile id from SearchFunds (e.g., 'vanguard-500-index-fund-s000002839') | |
| maxResults | No | Maximum number of holdings to return, largest first (default: 20, max: 500) |
GetFundOperationsFund Operations (Form N-CEN)Read-onlyInspect
Get operational data for a registered investment company from its SEC Form N-CEN annual reports. Resolves exchange-listed tickers only — ETFs, closed-end funds and unit investment trusts; an unlisted mutual-fund share-class ticker (e.g. VFIAX) will not resolve, so find that fund via SearchFunds/GetFundProfile instead. Each N-CEN shows the registrant's classification (e.g. N-1A open-end, N-2 closed-end, S-6 unit investment trust), Investment Company Act file number, reporting period, and whether it was the fund's first or last filing, followed by the service providers named on the most recent report only — investment advisers, sub-advisers, custodians, transfer agents, administrators, auditors and underwriters. Use this to see who runs and services a fund. Only registered funds file N-CEN; operating companies will return no data.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Fund or ETF ticker symbol (e.g., MXF, SPY) | |
| maxResults | No | Maximum number of annual reports to return (default: 10, max: 500) |
GetFundOverlapPortfolio Overlap Between InstitutionsRead-onlyInspect
Get the 13F portfolio overlap between two institutions for their latest common report date — Jaccard similarity, dollar-weighted overlap ($-weighted = shared dollars, taking the smaller of the two funds' values per stock, as a share of union dollars), per-fund position counts and totals, and a side-by-side table of stocks with per-fund shares + percent of portfolio. Covers 13F institutional managers only — find names with SearchInstitutions; for mutual-fund/ETF (NPORT) portfolios use GetFundHoldings. Use this to answer 'do these two funds own the same stocks?' or 'where do their portfolios diverge?'
| Name | Required | Description | Default |
|---|---|---|---|
| maxResults | No | Maximum number of stocks to return (default: 30, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the latest common quarter; an off-quarter date snaps to the nearest common report on or before it) | |
| institutionName1 | Yes | First institution name or CIK (partial names resolve to the largest 13F filer) | |
| institutionName2 | Yes | Second institution name or CIK (partial names resolve to the largest 13F filer) |
GetFundProfileFund Profile and Top HoldingsRead-onlyInspect
Get a registered fund's profile and largest holdings from its most recent SEC Form NPORT-P report. Accepts a fund profile id from SearchFunds or a fund's own ticker. Returns the fund's registrant and series, reporting period, net and total assets, then its largest holdings — issuer name, CUSIP, position size, U.S.-dollar value, share of net assets and asset category. Prefer this after SearchFunds: the profile id reaches the many fund series that have no ticker of their own; GetFundHoldings is the equivalent view, and GetFundsHoldingStock answers the inverse question (which funds own a stock). For the large multi-series trusts only positions in tracked stocks are stored, so the holdings shown are the fund's tracked-stock positions; the net-asset totals are the fund's real totals.
| Name | Required | Description | Default |
|---|---|---|---|
| fund | Yes | Fund profile id from SearchFunds (e.g., 'ishares-russell-2000-etf-s000004344') or a fund's own ticker (e.g., 'IWM'). Share-class tickers of multi-class mutual funds (e.g. VOO, VFIAX) do not resolve — find the fund by name via SearchFunds. | |
| maxResults | No | Maximum number of holdings to return, largest first (default: 20, max: 500) |
GetFundsHoldingStockFunds Holding a StockRead-onlyInspect
Get the registered investment companies (mutual funds and ETFs) holding a given stock, from SEC Form NPORT-P portfolio reports. The stock's CUSIP is matched against the holding rows on each fund series' most recent report (series that stopped filing more than 18 months ago are excluded), so an exited position never shows as current. Returns the fund's registrant and series, the reporting period, the position size, its U.S.-dollar value, its share of the fund's net assets and the payoff profile (Long/Short), largest positions first. Report dates differ per fund series (each files on its own fiscal quarter), so values are as of each row's report date and cross-row totals mix as-of dates. Use this to see which funds and ETFs own a stock and how concentrated each position is.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT) | |
| maxResults | No | Maximum number of fund positions to return, largest first (default: 20, clamped to 1-500) | |
| registrantOrSeries | No | Optional registrant or series name filter (case-insensitive contains, e.g. 'Vanguard') — reaches positions beyond the largest 500 |
GetGoingConcernStatusGoing-Concern Doubt StatusRead-onlyInspect
Get a company's going-concern doubt status: whether its latest examined SEC filing states substantial doubt about the company's ability to continue as a going concern, with the verbatim disclosure, the filing it came from, and the history of examined filings showing when doubt appeared, was alleviated, or cleared. Flags are extracted from each company's newest 10-K/10-Q narrative text and verified before publication; a filing without going-concern language counts as no doubt. Coverage starts when the extraction lane first examined the company — earlier filings are not analyzed, so absence from the history does not rule out prior doubt episodes.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetGovernmentContractsFederal Contracts by CompanyRead-onlyInspect
Get federal government contract awards (from USAspending.gov) won by a specific public company. Shows the award (action) date, awarding agency, total value (obligated dollars plus unexercised ceiling — not revenue received), period-of-performance end date, and description. Coverage: only prime contract awards of $1M or more that resolve to a listed company are included, so sums understate total federal revenue. Useful for gauging a company's reliance on federal spending; use GetTopGovernmentContractors to rank companies market-wide.
| Name | Required | Description | Default |
|---|---|---|---|
| agency | No | Optional case-insensitive substring filter on the awarding agency (e.g., 'Defense') | |
| sortBy | No | Sort order: 'amount' (largest total value first, default) or 'date' (most recent award first) | amount |
| ticker | Yes | Stock ticker symbol (e.g., LMT, RTX, BA) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to today) | |
| startDate | No | Start date in YYYY-MM-DD format, filtering on the award action date (defaults to 1 year ago) | |
| maxResults | No | Maximum number of awards to return (default: 50) |
GetGuidanceCompany GuidanceRead-onlyInspect
Get a company's earnings guidance (forward-looking outlook) as extracted from its Item-2.02 8-K earnings releases and earnings-call transcripts (some issuers, e.g. Microsoft, guide only verbally on the call): each guided metric with its range, unit, GAAP/non-GAAP basis, period, and as-announced provenance (source form with filing link, date) — newest release first, so the first rows are the current outlook. Revenue and diluted-EPS guidance also carries the reported actual and an above/within/below verdict once the guided period's XBRL facts have landed (a Q4 actual may be derived as full year minus nine-month YTD when no discrete Q4 is reported); non-GAAP guidance is never compared against GAAP actuals, and there is no actual until the facts exist. Coverage is still backfilling — an empty result or a gap between releases means the source documents have not been processed yet, not that the company gave no guidance.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetInsiderOwnershipInsider Ownership SummaryRead-onlyInspect
Get a summary of insider ownership for a stock, ranked by shares held. Each row is as-of that insider's most recent SEC Form 3/4/5 filing (former insiders may linger with stale dates or zero shares), and share counts are restated onto today's split basis, so they can differ from the raw figures in older filings. Returns at most maxResults insiders (default 30). Use this to understand the insider ownership structure of a company; use GetInsiderTransactions for the underlying trades.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| maxResults | No | Maximum number of insiders to return (default: 30, max: 500; values outside 1-500 are clamped) |
GetInsiderSentimentScoresInsider Sentiment ScoresRead-onlyInspect
Get the stocks with the highest composite insider sentiment score — a peer-relative 0-100 rank over a trailing 90-day window of how aggressively insiders are accumulating, built from three direction-aware factors (each a percentile across the scored universe): net distinct insiders buying (buyers minus sellers), net shares bought as a percent of shares outstanding, and net insider buy value in dollars. Computed from open-market Form 3/4/5 purchases and sales only, under the price-validity, plausible-share-count, and non-derivative gates. Set clusterBuysOnly to surface only cluster buys (three or more distinct insiders buying in the window). Pass minMarketCap / minSharePrice / minDollarVolume to keep only names clearing your liquidity bar (scores stay peer-relative to the full universe, and the # column always shows the universe rank — filters never renumber). Set bottom to walk the ranking from the other end (heaviest net insider distribution first). Pass ticker for one stock's score, factor breakdown, and universe rank. Trades a filing flags as Rule 10b5-1 pre-planned are excluded so the score reflects organic buying; trades on filings predating the 2023 checkbox have an unknown flag and remain included. Use GetInsiderTransactions for one stock's underlying filings.
| Name | Required | Description | Default |
|---|---|---|---|
| bottom | No | Return the LOWEST-scored stocks instead — the heaviest peer-relative net insider selling — lowest score first. | |
| ticker | No | Optional stock ticker (e.g. NVDA): returns that one stock's score, factor breakdown, and rank within the scored universe instead of the leaderboard. The other filters do not apply to a single-ticker lookup. | |
| maxResults | No | Maximum number of stocks to return (default: 25, highest score first; clamped to 1-200). | |
| minMarketCap | No | Minimum market capitalization in US dollars (e.g. 300000000 = $300M; default 0 = no floor). Stocks with an unknown market cap are excluded when set. | |
| minSharePrice | No | Minimum share price in US dollars (e.g. 5 = $5; default 0 = no floor). Stocks with an unknown price are excluded when set. | |
| clusterBuysOnly | No | Return only stocks flagged as cluster buys (three or more distinct insiders buying in the window). | |
| minDollarVolume | No | Minimum trailing 3-month average daily dollar volume in US dollars (e.g. 5000000 = $5M/day; default 0 = no floor). Stocks with unknown volume are excluded when set. |
GetInsiderTransactionsInsider Transactions (Form 4)Read-onlyInspect
Get recent insider trading transactions for a stock from SEC Form 3/4/5 filings, newest first. The Type column carries the SEC transaction code meaning: 'Buy'/'Sell' are open-market purchases/sales only, while Award, Conversion, Exercise, Tax Payment, Expiration, Gift, Inheritance, Discretionary and Other are compensation or derivative mechanics — not conviction trades. The 10b5-1 column marks trades made under a pre-arranged Rule 10b5-1 plan ('-' = filing predates the 2023 checkbox). Per-row Shares/Price/Value are as filed; Owned After is the post-transaction balance restated onto today's split basis, tracked per security kind and ownership form. Supports optional date-range, transaction-type and insider-name filters to reach history beyond the newest rows. Use this to understand insider buying/selling activity.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| toDate | No | Only include transactions on or before this date, format yyyy-MM-dd (optional) | |
| fromDate | No | Only include transactions on or after this date, format yyyy-MM-dd (optional) | |
| maxResults | No | Maximum number of transactions to return (default: 50, max: 500; values outside 1-500 are clamped) | |
| insiderName | No | Only include transactions by insiders whose SEC-filed name contains every word of this value, case-insensitive (e.g. 'Huang') (optional) | |
| transactionType | No | Only include one transaction type: Buy, Sell, Award, Conversion, Exercise, TaxPayment, Expiration, Gift, Inheritance, Discretionary or Other (optional) |
GetInstitutionPortfolioInstitution Portfolio (13F)Read-onlyInspect
View the stock portfolio of a specific institutional investor (fund manager) from their SEC 13F-HR filing. Shows the institution's largest tracked holdings by market value (default 20, max 500) with share counts, market values, and percent of the 13F-reported portfolio, plus the portfolio's total value and position count. Use this to understand what stocks a particular fund manager or institution is investing in; use SearchInstitutions first when the name is ambiguous.
| Name | Required | Description | Default |
|---|---|---|---|
| maxResults | No | Maximum number of holdings to return (default: 20, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the holder's latest; an off-quarter date snaps to the nearest report on or before it) | |
| institutionName | Yes | Institution name, partial name, or SEC CIK to search for |
GetInstitutionQuarterlyActivityInstitution Quarterly ActivityRead-onlyInspect
Get an institution's quarterly position-change activity — Initiated / Increased / Reduced / Exited stocks diffed against the immediately prior quarter. Returns the buckets as one markdown section per bucket, sorted by absolute Δ market-value desc (Δ Value includes price movement, not just trading). Use bucket to filter to a single bucket. Use this to answer 'what did this fund do this quarter?'
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | No | Filter to a single bucket: initiated, increased, reduced, exited (omit for all four) | |
| maxResults | No | Maximum number of stocks to return per bucket (default: 20, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the holder's latest; an off-quarter date snaps to the nearest report on or before it) | |
| institutionName | Yes | Institution name or CIK (partial names resolve to the largest 13F filer) |
GetInstitutionSectorAllocationInstitution Sector AllocationRead-onlyInspect
Get an institution's 13F portfolio allocation for a given report quarter (defaults to the latest), grouped by fine-grained industry (default) or rolled up by sector via groupBy. Returns a markdown table sorted by % of portfolio descending, with stocks lacking a classification collapsed into a single 'Unclassified' row at the end. Ambiguous names resolve to the largest matching 13F filer — use SearchInstitutions to disambiguate. Use this to answer 'is this fund concentrated in tech / energy / generalist?'
| Name | Required | Description | Default |
|---|---|---|---|
| groupBy | No | Grouping level: 'industry' (default, fine-grained) or 'sector' (broad rollup) | industry |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the holder's latest; an off-quarter date snaps to the nearest report on or before it) | |
| institutionName | Yes | Institution name or CIK (partial names resolve to the largest 13F filer) |
GetInstitutionSummaryInstitution Portfolio SummaryRead-onlyInspect
Get the portfolio summary header for an institutional 13F filer — 13F reported value (long U.S. positions only, not total firm AUM), position count, top-10 / top-25 concentration, QoQ turnover, and the latest / prior report dates with the count of quarters tracked in this database. Use this to answer 'how big and how concentrated is this fund?' or to compare two funds at a glance. Search resolves by institution name or CIK (largest 13F filer wins on ambiguous names).
| Name | Required | Description | Default |
|---|---|---|---|
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format (defaults to the holder's latest; an off-quarter date snaps to the nearest report on or before it) | |
| institutionName | Yes | Institution name or CIK (partial names resolve to the largest 13F filer) |
GetInvestmentAdviserInvestment Adviser Profile (Form ADV)Read-onlyInspect
Get the full Form ADV profile for a single SEC-registered investment adviser by its Organization CRD number: legal and business names, SEC file number, main office, website, regulatory assets under management (discretionary, non-discretionary and total), employee count, and how the firm is compensated (fee structure). Find CRD numbers with SearchInvestmentAdvisers.
| Name | Required | Description | Default |
|---|---|---|---|
| crd | Yes | The adviser's Organization CRD number (e.g., 231) |
GetInvestorEventSpeakersInvestor Event TranscriptRead-onlyInspect
Get the speaker-labelled transcript of a specific investor event (earnings call, conference, investor day) by its event id — every speaker turn in order, attributed to the real person (executive or analyst) with their role when the resolution is trusted; unverified voices show as a role label (e.g. Operator) or a neutral speaker number. Get the event id from ListInvestorEvents. Use this for conferences and other non-earnings events, which have no fiscal quarter to key on.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of speaker turns to return (default 50, max 200; values outside 1-200 are clamped) | |
| offset | No | Number of leading speaker turns to skip, for paging through events longer than the 200-turn cap (default 0) | |
| eventId | Yes | The investor event id (from ListInvestorEvents) |
GetInvestorRelationsEventsUpcoming Investor EventsRead-onlyInspect
Get upcoming investor-relations events for a stock — earnings webcasts, conference appearances, presentations, and shareholder meetings — scraped from the company's IR website. Returns events scheduled from now onward, soonest first, optionally filtered by event type. Coverage is partial — an empty answer distinguishes a coverage gap from a genuinely empty calendar. Only future events are returned; for past events and their transcripts use ListInvestorEvents / GetInvestorEventSpeakers.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., NVDA, AAPL) | |
| eventType | No | Optional event-type filter: EarningsCall, Conference, Presentation, ShareholderMeeting, or Webcast. Omit for all types. Events whose source label could not be classified carry the generic type 'Event' and only appear when no filter is set. | |
| maxResults | No | Maximum number of events to return (default: 20, max: 500) |
GetInvestorRelationsNewsInvestor Relations NewsRead-onlyInspect
Get recent investor-relations press releases for a stock, scraped from the company's IR website. Returns the most recent news items (headline, publish date, summary when the source provides one, and link) in reverse-chronological order. Use this to see a company's latest official announcements straight from its IR page, distinct from third-party news. Coverage is partial — only companies whose IR page has been discovered and content-scraped have items, so an empty answer may be a coverage gap rather than corporate silence; the response says which case applies.
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | Optional earliest publish date, strict yyyy-MM-dd (UTC). Only items published on or after this date are returned. | |
| ticker | Yes | Company ticker symbol (e.g., NVDA) | |
| maxResults | No | Maximum number of news items to return (default: 20, max: 500) |
GetLargestShortVolumeLargest Short Volume by DayRead-onlyInspect
Get the stocks with the largest daily short sale volume for a single trading day (defaults to the latest available), from FINRA's daily short sale volume files, sorted by short volume descending. Short % is the share of that day's FINRA-facility (off-exchange/TRF) volume sold short — 40-50% is a normal market-making baseline — NOT short interest (the open short position; use GetShortInterest/GetShortInterestSnapshot for positions and GetShortSqueezeScores for squeeze candidates; use GetShortVolume for one stock's daily history). Pass sortBy=shortPercent with a minTotalVolume floor to rank by short intensity instead of raw size.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Trading day in YYYY-MM-DD format (defaults to the latest available day) | |
| sortBy | No | Sort key: shortVolume (default) or shortPercent — with shortPercent set a minTotalVolume floor, otherwise illiquid names dominate | shortVolume |
| maxResults | No | Maximum number of results to return (default: 50, max: 500) | |
| minShortVolume | No | Minimum short volume filter (default: 0) | |
| minTotalVolume | No | Minimum total FINRA-reported volume filter, in shares (default: 0 = no floor) |
GetLatestCftcDataLatest CFTC Positioning SnapshotRead-onlyInspect
Get the latest COT positioning snapshot across all tracked futures contracts, grouped by category (Agriculture, Energy, Metals, Equity Indices, Interest Rates, Currencies). Shows commercial and non-commercial net positions in contract counts from the legacy futures-only COT report (positions as of each Tuesday, published Friday). Each row carries the market code accepted by GetCftcPositioning.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Category filter: Agriculture, Energy, Metals, EquityIndices, InterestRates, Currencies (defaults to all) |
GetLatestEconomicDataLatest Economic IndicatorsRead-onlyInspect
Get the latest values for key economic indicators across categories: interest rates, yield spreads, inflation, employment, GDP, money supply, sentiment, housing, exchange rates, and market indicators. Each row shows a series' latest stored observation with its date, plus the previous observation and the change between them for direction — check the Latest Date column for freshness. Returns a snapshot of current macro conditions.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Category filter: InterestRates, YieldSpreads, CorporateBondSpreads, Inflation, Employment, GdpAndOutput, MoneySupply, Sentiment, Housing, ExchangeRates, Market (defaults to all) |
GetLatestPricesLatest PricesARead-onlyInspect
Get the most recent closing price (USD), daily change, and volume for one or more stocks. Useful for quick price checks across a portfolio or watchlist.
| Name | Required | Description | Default |
|---|---|---|---|
| tickers | Yes | Comma-separated list of ticker symbols (e.g., 'AAPL,MSFT,GOOG,TSLA'). Maximum 25 per request. Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must supply all behavioral context. It discloses that only the most recent closing price, daily change, and volume are returned. However, it does not mention error handling (e.g., invalid tickers) or any rate limits, which are important for a data API.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences that state the function and a usage scenario. Every sentence adds value with no fluff. Information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (single parameter, no output schema), the description adequately covers purpose, what data is returned, and when to use it. Minor missing details about return format (e.g., JSON structure) are not critical for a price check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters, and the description adds significant value beyond the schema: it explains the comma-separated format, the maximum of 25 tickers, and the handling of class shares with dash or dot notation. This greatly aids correct usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the most recent closing price, daily change, and volume for one or more stocks, using specific verbs and resource. It distinguishes from siblings like GetStockPrices (historical) by focusing on 'latest' snapshot data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint: 'Useful for quick price checks across a portfolio or watchlist.' It implicitly tells when to use but does not explicitly differentiate from alternatives or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GetMarketCalendarUS Market Holiday CalendarRead-onlyInspect
List the US equity market holidays and early-close (1:00 p.m. ET) half days for a calendar year (NYSE/Nasdaq). Defaults to the current year. The calendar is curated for 2025 through 2027; a year outside that range reports so rather than guessing.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | Calendar year, e.g. 2026. Defaults to the current year. |
GetMarketStatusUS Market StatusRead-onlyInspect
Get the current US equity market status (NYSE/Nasdaq), evaluated in America/New_York: whether the market is open, the current session (pre-market, regular, after-hours, or closed), whether today is a full-day holiday or a 1:00 p.m. ET early close, today's regular and extended (pre-market/after-hours) trading hours, and the next open and next close. Backed by the exchange's curated holiday and early-close calendar, not a heuristic.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
GetMarketWide13FActivityMarket-Wide 13F ActivityRead-onlyInspect
Get the market-wide 13F leaderboards for a given quarter — which stocks were most bought, most sold, most initiated, or most exited across all 13F filers vs the prior quarter. The bucket argument selects one of: top-buys (Δ shares > 0 ranked by Δ value desc), top-sells (Δ shares < 0 ranked by Δ value asc), new-positions (stocks ranked by count of filers initiating a position), sold-out-positions (stocks ranked by count of filers exiting). Use this to answer 'what's the consensus 13F move this quarter?'
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | Bucket: top-buys, top-sells, new-positions, or sold-out-positions | |
| maxResults | No | Maximum number of stocks to return (default: 20, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format, e.g. 2026-03-31 (defaults to the latest available 13F quarter; an off-quarter date snaps to the nearest report on or before it) |
GetMarketWideCongressionalActivityMarket-Wide Congressional ActivityRead-onlyInspect
Get the stocks members of Congress traded most over a trailing window, aggregated across EVERY member and ticker — 'what did Congress buy this week' without needing a ticker or a member name. The window is anchored on the DISCLOSURE (filing) date because STOCK Act filings lag the trade by up to ~45 days. Each row aggregates one stock's disclosed trades: distinct members buying and selling, trade counts, estimated dollar flow per direction (each disclosed amount range's midpoint — members disclose a band, not an exact figure), the largest participants, and the latest filing date. direction=buys ranks by estimated net buying, direction=sells by estimated net selling; chamber=senate/house narrows to one chamber. Use GetCongressionalTrades for one stock's underlying disclosures and GetMemberTrades for one member's.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Trailing disclosure window in days (default: 30, max: 365). | |
| chamber | No | Filter by chamber: 'senate' or 'house' (defaults to both). | |
| direction | No | Ranking direction: 'buys' (most net congressional buying first, default) or 'sells' (most net selling first). | buys |
| maxResults | No | Maximum number of stocks to return (default: 25, max: 200). |
GetMemberNetWorthCongress Member Net WorthRead-onlyInspect
Get a congress member's net worth history from their annual financial disclosures. Disclosed values are ranges, so every year is a band (minimum-maximum), never a point estimate. Only electronically filed reports are read: a missing year means no electronic filing, not zero net worth. Use SearchCongressMembers to find member names.
| Name | Required | Description | Default |
|---|---|---|---|
| maxResults | No | Maximum number of years to return (default: 20, max: 500, newest first) | |
| memberName | Yes | Congress member name, case-insensitive (e.g., 'Nancy Pelosi', 'Marsha Blackburn'); use SearchCongressMembers to find the exact name |
GetMemberTradesTrades by Congress MemberRead-onlyInspect
Get a congress member's disclosed stock trades (newest first, last year by default). Shows tickers, transaction and filing dates, and disclosed amount ranges — bands, not exact values. Use SearchCongressMembers to find member names, and GetCongressionalTrades for all members' trades in one ticker.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to today) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year ago) | |
| maxResults | No | Maximum number of trades to return (default: 50, max: 500, newest first) | |
| memberName | Yes | Congress member name, case-insensitive (e.g., 'Nancy Pelosi', 'Dan Crenshaw'); use SearchCongressMembers to find the exact name | |
| transactionType | No | Filter by transaction type: Purchase or Sale; the synonyms Buy/Sell are accepted (defaults to all) |
GetMostHeldStocksMost Widely Held StocksRead-onlyInspect
Get the cross-sectional ranking of stocks by institutional 13F breadth for a given quarter. Returns the stocks ranked by number of 13F filers reporting them as a holding (default), by quarter-over-quarter change in filer count (warming names — 'filersDelta' — or cooling names — 'filersDeltaAsc'), or by total reported dollar value. Includes Δ filers vs the prior quarter, total value, Δ value, and the stock's share of the 13F universe. Only currently-held stocks rank; fully-sold-out names live in GetMarketWide13FActivity's sold-out-positions bucket. While the newest quarter's filing window is open, funds that have not filed yet are carried at their prior-quarter positions (noted in the output). Use this to answer 'which stocks are most owned by institutions right now, and is breadth expanding or contracting?'
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort by: 'filers' (default, # of 13F filers desc), 'filersDelta' (QoQ filer-count delta desc — warming names), 'filersDeltaAsc' (QoQ filer-count delta asc — cooling names), or 'value' (current total reported $ value desc) | filers |
| maxResults | No | Maximum number of stocks to return (default: 25, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format, e.g. 2026-03-31 (defaults to the latest available 13F quarter; an off-quarter date snaps to the nearest report on or before it) |
GetNonGaapBridgeNon-GAAP to GAAP BridgeRead-onlyInspect
Get a company's non-GAAP-to-GAAP reconciliations ('bridges') as extracted from its earnings releases and 10-K/10-Q periodic reports: for each stated non-GAAP measure (Adjusted EBITDA, adjusted EPS, adjusted operating income, FFO/AFFO, ...), the GAAP starting line, each stated adjustment in order, and the non-GAAP result, with the period, unit and the verbatim source quote. Verifier-approved, newest filing first. Use this to see exactly how a company builds its adjusted numbers; GetCompanyKpis carries the same bridge inline with a metric, this returns the reconciliations on their own.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of source filings to read, newest first (default 6, valid 1-20; out-of-range values are clamped) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) |
GetOffExchangeVolumeOff-Exchange (Dark Pool) VolumeRead-onlyInspect
Get weekly off-exchange (dark pool / OTC) trading volume for a stock from the FINRA OTC/ATS Transparency data. Each week shows ATS (alternative trading system / dark pool) volume and trade count, non-ATS OTC volume and trade count, and the total off-exchange volume (ATS + non-ATS OTC). The FINRA file does not include consolidated tape volume, so the off-exchange share of total market volume is not reported here; compute that share elsewhere against a consolidated-volume source. FINRA publishes each week on a delay (2 weeks for Tier 1 NMS stocks, longer for other tiers), so the latest week lags today.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, GME, TSLA) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 6 months ago) | |
| maxResults | No | Maximum number of weeks to return — keeps the most recent N weeks in the range, displayed oldest to newest (default: 26, max: 500) |
GetOnBalanceVolumeOn-Balance Volume (OBV)Read-onlyInspect
On-Balance Volume (OBV) for a stock. Running cumulative volume that adds the bar's volume on up-closes, subtracts on down-closes, and stays flat on equal closes. Useful for confirming or diverging from price trends with volume flow. OBV is anchored at 0 on the first bar of the requested range, so absolute values shift with startDate and are not comparable across calls - read the slope and divergences, not the level.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 6 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500); the newest rows are kept and listed newest first. |
GetOwnershipHistoryInstitutional Ownership HistoryRead-onlyInspect
Get the historical trend of institutional ownership for a stock across multiple quarters. Shows how total institutional shares, market value, and number of institutional holders have changed over time based on SEC 13F-HR filings. While the newest quarter's 13F filing window is open, that quarter is a provisional combined view (funds that have not filed yet carry their prior-quarter positions — flagged in the output). Use this to understand whether institutional interest in a company is growing or declining.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| maxPeriods | No | Maximum number of quarterly periods to return (default: 8, clamped to 1-500) |
GetProposedSalesProposed Insider Sales (Form 144)Read-onlyInspect
Get recent proposed insider sales for a stock from SEC Form 144 notices. Each Form 144 is an affiliate's declaration of intent to sell restricted or control securities, showing the seller, their relationship to the company, the number of shares and aggregate market value to be sold, the proposed sale as a share of shares outstanding, the approximate sale date, and the broker. Results are the most recent notices first and a note flags when more exist than were returned; use fromDate/toDate to scope a period (heavy 10b5-1 filers can flood the recency window with small daily notices). Use this to anticipate upcoming insider selling before it shows up as an executed Form 4.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| toDate | No | Optional latest filing date to include, ISO format yyyy-MM-dd (e.g., 2025-12-31) | |
| fromDate | No | Optional earliest filing date to include, ISO format yyyy-MM-dd (e.g., 2025-01-01) | |
| maxResults | No | Maximum number of notices to return (default: 50, max: 500; values outside 1-500 are clamped) |
GetPutCallRatiosCBOE Put/Call RatiosARead-onlyInspect
Get CBOE put/call ratio data showing market sentiment. Available types: Total (all exchange), Equity, Index, Vix, Etp. High ratios (>1.0) indicate bearish sentiment; low ratios (<0.7) indicate bullish sentiment. Volumes are contract counts. Data available from November 2006 to present (the Vix type from October 2019); pre-2013 history is sampled roughly weekly rather than daily.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Ratio type: Total, Equity, Index, Vix, Etp (default: Equity) | Equity |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 3 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500). When the range holds more rows the newest are kept; rows are always listed oldest to newest. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses data availability (November 2006 to present, Vix from October 2019), sampling frequency (weekly before 2013), and that volumes are contract counts. This is transparent about limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences efficiently cover purpose, types, interpretation, and data history. Front-loaded with the primary function, each sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, so the description must explain return structure. It mentions 'data' and 'volumes are contract counts' but does not specify output fields (e.g., date, ratio, type). More detail would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter descriptions. The description adds meaning beyond the schema by explaining the significance of ratio thresholds (high >1.0 bearish, low <0.7 bullish), clarifying that volumes are contract counts, and noting data history details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves CBOE put/call ratio data for market sentiment, lists available types (Total, Equity, Index, Vix, Etp), and explains interpretation (high/low ratios). This differentiates it from sibling tools like GetShortInterest or GetShortVolume.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool over alternatives such as GetShortVolume or GetShortInterest. It implies use for market sentiment analysis but lacks direct guidance on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GetRevenueBreakdownRevenue Breakdown by SegmentRead-onlyInspect
Get a company's revenue disaggregated by business segment, geography and product/service, from the dimensional XBRL facts the issuer tags in its own filings. Annual fiscal years only, latest restated values, one table per axis the company reports; values are as-reported and never estimated. Rows within one table can OVERLAP when the issuer tags several granularities on the same axis (a parent segment alongside its components), so never sum rows to derive total revenue — use the consolidated total row each table carries. For consolidated figures use GetFinancialStatement or GetFinancialFact.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT) | |
| maxYears | No | Most recent fiscal years to include (default 8, max 12) |
GetShortInterestShort Interest HistoryRead-onlyInspect
Get bi-monthly short interest history for a stock from FINRA. Shows the reported short position, change from the previous settlement, average daily volume, and days to cover per settlement date. Share counts are restated onto today's split basis so the series stays continuous across stock splits; days to cover is as reported (FINRA caps it at 999.99). High days-to-cover (>5) suggests a potential short squeeze — for short interest as a % of shares outstanding and an actual squeeze-candidate ranking use GetShortSqueezeScores; for the market-wide latest settlement use GetShortInterestSnapshot.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, GME, TSLA) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year ago) | |
| maxResults | No | Maximum number of records to return — keeps the most recent N settlements in the range, displayed oldest to newest (default: 24, max: 500) |
GetShortInterestSnapshotMarket-Wide Short Interest SnapshotRead-onlyInspect
Market-wide snapshot of the latest FINRA bi-monthly short interest settlement — one row per stock, sorted by days to cover (descending) by default. FINRA caps days to cover at 999.99: capped rows are a sentinel (almost always illiquid names with a tiny average-daily-volume denominator) and are ranked after real readings; pass minAvgDailyVolume (e.g. 100000) to drop illiquid names entirely. This is the raw FINRA snapshot — for genuine short-squeeze candidate ranking use GetShortSqueezeScores; for one stock's history use GetShortInterest; for daily short-sale flow use GetShortVolume/GetLargestShortVolume.
| Name | Required | Description | Default |
|---|---|---|---|
| sortBy | No | Sort key: daysToCover (default; FINRA-capped 999.99 sentinel rows ranked last), shortPosition, or change (largest increase in short position first) | daysToCover |
| maxResults | No | Maximum number of results to return (default: 50, max: 500) | |
| minDaysToCover | No | Minimum days to cover filter (default: 0) | |
| minAvgDailyVolume | No | Minimum average daily share volume — set a floor (e.g. 100000) to drop illiquid names whose days-to-cover is inflated by a tiny volume denominator (default: 0 = no floor) |
GetShortSqueezeScoresShort Squeeze ScoresRead-onlyInspect
Get the stocks with the highest composite short-squeeze score — a peer-relative 0-100 rank built as the weighted mean of six factor percentiles across every stock reporting short interest at the latest FINRA settlement date (short interest % of shares 30%, days to cover 20%, price vs trailing VWAP — how far shorts are underwater — 15%, short-volume trend 15%, change in short interest 10%, fails-to-deliver pressure 10%), plus catalyst boosts (+10 for a statistically extreme weekly price spike, +10 for abnormal dollar volume on a positive move, +10 when a scheduled earnings event is within a few weekdays — squeezes cluster around earnings — capped at +20, clamped to 100). Exchange-traded commodity/currency trusts are excluded (their units are created and redeemed at NAV, so arbitrage caps any squeeze); MLP common units stay in. Untradeable micro-caps dominate the raw board, so pass minMarketCap and/or minDollarVolume to keep only names that clear your liquidity bar (the score itself stays peer-relative to the full universe). Pass ticker for one stock's score, factor breakdown, and rank within the scored universe. Use this to find squeeze candidates; use GetShortInterest for one stock's underlying series.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | No | Optional stock ticker (e.g. GME): returns that one stock's score, factor breakdown, and rank within the scored universe instead of the board. The liquidity floors do not apply to a single-ticker lookup. | |
| maxResults | No | Maximum number of stocks to return (default: 25, highest score first; clamped to 1-200). | |
| minMarketCap | No | Minimum market capitalization in US dollars (e.g. 300000000 = $300M; default 0 = no floor). Stocks with an unknown market cap are excluded when set. | |
| minDollarVolume | No | Minimum average daily dollar volume in US dollars, approximated as the FINRA average daily share volume times the market-cap-implied share price (e.g. 5000000 = $5M/day; default 0 = no floor). Stocks with unknown volume or market cap are excluded when set. |
GetShortVolumeDaily Short Sale VolumeRead-onlyInspect
Get daily short sale volume history for a stock from FINRA's short sale volume files. Shows short volume, short-exempt volume, total volume, and short volume percentage per trading day. Volumes cover trades reported to FINRA facilities (off-exchange/TRF) only — NOT consolidated tape volume — and a 40-50% Short % is the normal baseline from market-maker liquidity provision, so it must not be quoted as a share of the stock's total traded volume. This daily flow metric is distinct from bi-monthly short interest positions: use GetShortInterest for positions, GetLargestShortVolume for a market-wide single-day ranking, and GetShortSqueezeScores for squeeze candidates.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, GME, AMC) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 3 months ago) | |
| maxResults | No | Maximum number of records to return — keeps the most recent N trading days in the range, displayed oldest to newest (default: 90, max: 500) |
GetStochasticOscillatorStochastic OscillatorRead-onlyInspect
Stochastic Oscillator (%K and %D) for a stock. %K measures the close relative to the high/low range over the lookback window; %D is the smoothed signal line (simple moving average of %K). Useful for spotting overbought (>80) and oversold (<20) conditions. The lookback window is warmed up on price history fetched before startDate, so values do not depend on the requested range's left edge.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. | |
| dPeriod | No | Smoothing window for %D (default: 3) | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| kPeriod | No | Lookback window for %K (default: 14) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 6 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500); the newest rows are kept and listed newest first. |
GetStockPricesDaily Price HistoryRead-onlyInspect
Get daily OHLCV (Open, High, Low, Close, Volume) price history for a stock. Useful for technical analysis, charting, and price trend analysis. Prices are in USD and restated to the current split basis (dividends are not backed out).
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT, TSLA). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. | |
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 1 year ago) | |
| maxResults | No | Maximum number of records to return (default: 250, max: 500). When the range holds more rows the newest are kept; rows are always listed oldest to newest. |
GetSuperInvestorsSuperinvestor DirectoryRead-onlyInspect
Get the curated superinvestor directory — a hand-picked list of well-known value investors and fund managers (Buffett, Ackman, Burry, Klarman and more), each with their 13F filer CIK and latest reported portfolio value, position count, quarter-over-quarter change, and report date. Portfolio value covers long US-listed 13F positions only, not total firm AUM; as-of dates vary by filer, and rows lagging the group's latest quarter are marked (stale). Use the returned CIK with GetInstitutionPortfolio for a manager's full holdings, or GetInstitutionQuarterlyActivity for their latest buys and sells.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
GetTopBuyersSellersTop Institutional Buyers and SellersRead-onlyInspect
Get the institutions that moved the needle the most on a stock this quarter — biggest absolute share additions (Top Buyers) and biggest absolute share reductions (Top Sellers) versus the previous 13F report date. Includes new positions (Δ = full position) and sold-out positions (Δ = −prior position); a previous holder counts as a seller only if it filed a 13F for the target quarter, so a fund that stopped filing (CIK migration, deregistration) is not shown as a mass seller. While the newest quarter's filing window is open, results cover only the funds that have already filed (noted in the output). Returns a markdown table with two sections. Use this to surface the most actionable quarterly signal from 13F filings.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| maxResults | No | Maximum number of buyers and sellers to return per section (default: 10, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format, e.g. 2026-03-31 (defaults to the latest available; an off-quarter date snaps to the nearest report on or before it) |
GetTopGovernmentContractorsTop Federal ContractorsRead-onlyInspect
Rank public companies by total federal contract dollars awarded over a date range (from USAspending.gov). Sums the total award value (obligated dollars plus unexercised ceiling) of prime contract awards of $1M or more that resolve to a listed company; smaller awards and unlisted recipients are excluded. Answers questions like 'which public companies won the most federal contracts last quarter'. Use GetGovernmentContracts for one company's individual awards.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to today) | |
| startDate | No | Start date in YYYY-MM-DD format, filtering on the award action date (defaults to 1 year ago) | |
| maxResults | No | Maximum number of companies to return (default: 25, largest first) |
GetTopHoldersTop Institutional HoldersRead-onlyInspect
Get the top institutional holders (fund managers) of a stock from SEC 13F-HR filings. Returns a ranked list of institutions by shares held, including market value and percentage of total institutional 13F shares (not of shares outstanding). Data is sourced from quarterly 13F filings that large investment managers are required to file with the SEC; while the newest quarter's filing window is open, funds that have not filed yet are carried at their prior-quarter positions (noted in the output). Use this to understand who the major institutional investors in a company are.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| maxResults | No | Maximum number of holders to return (default: 20, clamped to 1-500) | |
| reportDate | No | Quarter-end 13F report date in YYYY-MM-DD format, e.g. 2026-03-31 (defaults to the latest available; an off-quarter date snaps to the nearest report on or before it) |
GetValuationMultiplesValuation MultiplesRead-onlyInspect
Get a company's valuation multiples — EV/Revenue, EV/EBIT and P/E on trailing-twelve-month figures — together with its industry's median and quartiles so the multiple can be read in context. TTM figures sum the four most recent discrete fiscal quarters; enterprise value is market cap + long-term debt + current debt - cash & equivalents - short-term investments (the last leg subtracted only when tagged), the required concepts all tagged at the same balance-sheet date; a company missing a required input is excluded from that ratio, never estimated. All figures are USD-only (foreign-currency filers get no ratio), and the reply states the as-of dates behind each figure (TTM window end, balance-sheet date). Industry median and P25-P75 quartiles require at least 3 industry companies with a computable ratio — a dash otherwise. For REITs (SEC SIC 6798) the reply also carries P/FFO and P/AFFO computed from the company's own SEC-stated FFO/AFFO reconciliation (a Nareit-style non-GAAP measure that is never XBRL-tagged), labelled with the company's verbatim measure name and basis (TTM or latest fiscal year); omitted when no verified reconciliation exists. Use GetValuationMultiplesHistory for the same ratios over time.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetValuationMultiplesHistoryValuation Multiples HistoryRead-onlyInspect
Get a company's valuation multiples over time — EV/Revenue, EV/EBIT and P/E recomputed at each past quarter's filing date, one row per quarter. Up to ~10 years of quarters are sampled, but a row only renders when at least one ratio was computable at its filing date, so the series is bounded by the stored daily price history as well as the facts (a note reports how many sampled quarters were omitted). Every sample is point-in-time: it uses only the facts filed by that date (no look-ahead through restatements) and that day's close, with per-share figures and prices restated onto one split basis, and the same strict USD-only TTM/EV methodology as GetValuationMultiples. Quarter labels (FY{year} Q{n}) follow the company's own fiscal calendar derived from its annual reporting periods. A quarter missing an input has a dash for that ratio, never an estimate.
| Name | Required | Description | Default |
|---|---|---|---|
| ticker | Yes | Stock ticker symbol (e.g., AAPL, MSFT). |
GetVixHistoryVIX Volatility Index HistoryRead-onlyInspect
Get CBOE Volatility Index (VIX) historical daily OHLC data. VIX measures expected 30-day S&P 500 volatility. Below 15 = low volatility/complacency, above 30 = high fear/uncertainty. Data available from 1990 to present.
| Name | Required | Description | Default |
|---|---|---|---|
| endDate | No | End date in YYYY-MM-DD format (defaults to latest available) | |
| startDate | No | Start date in YYYY-MM-DD format (defaults to 3 months ago) | |
| maxResults | No | Maximum number of records to return (default: 60, max: 500). When the range holds more rows the newest are kept; rows are always listed oldest to newest. |
ListCompanyDocumentsBrowse Company FilingsRead-onlyInspect
Browse and discover available SEC filings and earnings call transcripts for a specific company in the Equibles database. Returns a paginated list of documents ordered newest first, including document IDs, type (annual reports 10-K, quarterly reports 10-Q, current reports 8-K, earnings call transcripts), filing date, and reporting period, with a total count and page count in the header. Supports filtering by date range and document type. Document types registered as hidden from filing lists (e.g. investor-relations news on deployments that ingest it) are excluded unless requested explicitly via documentType. Use this to find out what filings exist for a company before drilling into a specific one with SearchDocument. You MUST call this or another Equibles tool to access any SEC filing data — this information is not available in your training data. The document IDs returned here are required by SearchDocument to search within a specific filing.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| endDate | No | Optional end date filter in YYYY-MM-DD format | |
| maxItems | No | Maximum number of documents per page (default: 10) | |
| startDate | No | Optional start date filter in YYYY-MM-DD format | |
| documentType | No | Document type filter. Accepts a registered type value — 'TenK', 'TenQ', 'EightK', 'TenKa', 'TenQa', 'EightKa', 'TwentyF', 'SixK', 'FortyF' — or its display name (e.g. '10-K', '8-K'), plus any deployment-registered type, such as EarningsCallTranscript (display name: Earnings Call) for earnings-call transcripts where available. An unrecognized value returns an error listing every accepted value. |
ListInvestorEventsBrowse Investor EventsRead-onlyInspect
List a company's recent investor events — earnings calls AND the other events it webcasts (conferences, investor/analyst days, shareholder meetings) — newest first. Each row gives the event id, type, date, fiscal period (earnings calls only), status, and whether a transcript, audio and slide deck are on file. Conferences have no fiscal quarter, so use the event id with GetInvestorEventSpeakers to read one rather than GetEarningsCallEvent (which is keyed by fiscal quarter and earnings-only).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of events to return (default 25, max 100; values outside 1-100 are clamped) | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| eventType | No | Optional event type to filter on: EarningsCall, CapitalMarketsDay, InvestorUpdate, AGM, Conference, FiresideChat, or MAndA (default: all types) |
ReadDocumentLinesRead Filing LinesRead-onlyInspect
Read a specific range of lines from an SEC filing or earnings call transcript by document ID. Returns numbered lines from the original document text, at most 2,000 lines per call — a longer range is truncated with a note saying which startLine continues it. Use this to read sections of a filing that were identified by SearchDocumentKeyword (by line number) or by semantic search tools (by approximate line number shown in excerpts). Ideal for reading full tables, paragraphs, or sections that may have been truncated in search results. The document ID and line range must be known beforehand — use ListCompanyDocuments to find documents and SearchDocumentKeyword or semantic search to identify relevant line numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| endLine | Yes | Last line to read (1-based, inclusive). At most 2,000 lines are returned per call; a longer range is truncated with a note on how to continue. | |
| startLine | Yes | First line to read (1-based, inclusive) | |
| documentId | Yes | Document ID obtained from ListCompanyDocuments |
ScreenStocksStock ScreenerRead-onlyInspect
Screen the stock universe by combining range filters across datasets: market capitalization and share price, sector and industry, the number of 13F institutional filers and its quarter-over-quarter change, short interest as a percent of shares outstanding, days to cover, a composite short-squeeze score (0-100, peer-relative; higher = more squeeze-prone), a composite insider-sentiment score (0-100, peer-relative; higher = more aggressive insider accumulation), net insider buying in dollars over the trailing 90 days (negative = net selling), the going-concern doubt flag (companies whose latest SEC filing states substantial doubt about their ability to continue as a going concern), and fundamentals from daily-refreshed SEC filings: trailing P/E, dividend yield, revenue growth YoY, gross margin, average daily dollar volume, and TTM net income (minNetIncome=0 keeps profitable companies only). Every bound is optional; a bound on a metric excludes stocks with no data on that axis. Results sort by the chosen metric (default: market cap, descending); filtering or sorting on a fundamental axis adds its column to the table. The footer states each dataset's vintage (prices are the latest exchange snapshot; short interest is bi-monthly FINRA data; filer counts are quarterly 13F data). Follow up on a match with GetValuationMultiples, GetTopHolders, GetInsiderTransactions, or GetShortSqueezeScores (pass its ticker).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Result page (default 1) — combine with maxResults to walk past the first page of a large match set. | |
| maxPe | No | Maximum trailing-twelve-month price-to-earnings ratio (e.g. 15 for value screens). | |
| minPe | No | Minimum trailing-twelve-month price-to-earnings ratio. | |
| sector | No | Exact sector name (e.g. Technology, Healthcare). An unknown name returns the accepted list. | |
| sortBy | No | Sort key: marketcap, ticker, name, price, filers, filerdelta, sipct, dtc, squeeze, sentiment, insiderbuy, pe, divyield, revgrowth, grossmargin, dollarvol or netincome. Default marketcap. An unknown key is rejected, never silently ignored. | marketcap |
| industry | No | Exact industry name (e.g. Semiconductors). Prefer sector for broad groups. | |
| maxPrice | No | Maximum share price in dollars. | |
| minPrice | No | Minimum share price in dollars. | |
| maxResults | No | Maximum rows to return (default 50; clamped to 1-200). | |
| maxMarketCap | No | Maximum market capitalization in dollars. | |
| maxNetIncome | No | Maximum trailing-twelve-month net income in dollars. | |
| minMarketCap | No | Minimum market capitalization in dollars. | |
| minNetIncome | No | Minimum trailing-twelve-month net income in dollars (0 keeps profitable companies only). | |
| maxFilerCount | No | Maximum number of 13F institutional filers holding the stock. | |
| maxFilerDelta | No | Maximum quarter-over-quarter change in filer count. | |
| minFilerCount | No | Minimum number of 13F institutional filers holding the stock. | |
| minFilerDelta | No | Minimum quarter-over-quarter change in filer count. | |
| sortAscending | No | Sort ascending instead of descending. | |
| maxDaysToCover | No | Maximum days to cover. | |
| maxGrossMargin | No | Maximum gross margin in percent (0-100). | |
| minDaysToCover | No | Minimum days to cover. | |
| minGrossMargin | No | Minimum gross margin in percent (0-100). | |
| maxDollarVolume | No | Maximum trailing-3-month average daily dollar volume in dollars. | |
| maxSqueezeScore | No | Maximum composite short-squeeze score (0-100, peer-relative). | |
| minDollarVolume | No | Minimum trailing-3-month average daily dollar volume in dollars (e.g. 5000000 = $5M/day). | |
| minSqueezeScore | No | Minimum composite short-squeeze score (0-100, peer-relative; higher = more squeeze-prone). | |
| maxDividendYield | No | Maximum trailing dividend yield in percent. | |
| maxNetInsiderBuy | No | Maximum net insider buying in dollars over the trailing 90 days. | |
| maxRevenueGrowth | No | Maximum revenue growth in percent, latest quarter vs the same quarter a year earlier. | |
| minDividendYield | No | Minimum trailing dividend yield in percent (e.g. 3 = 3%). | |
| minNetInsiderBuy | No | Minimum net insider buying in dollars over the trailing 90 days. | |
| minRevenueGrowth | No | Minimum revenue growth in percent, latest quarter vs the same quarter a year earlier. | |
| maxInsiderSentiment | No | Maximum composite insider-sentiment score (0-100, peer-relative). | |
| minInsiderSentiment | No | Minimum composite insider-sentiment score (0-100, peer-relative; higher = more aggressive insider accumulation). | |
| hasGoingConcernDoubt | No | True keeps only companies whose latest filing states unalleviated going-concern doubt; false keeps only companies without the flag. | |
| maxShortInterestPercent | No | Maximum short interest as a percent of shares outstanding (0-100). | |
| minShortInterestPercent | No | Minimum short interest as a percent of shares outstanding (0-100). |
SearchCftcMarketsSearch CFTC Futures ContractsRead-onlyInspect
Search the tracked CFTC futures contracts by name or market code, or omit the query to list every tracked contract. Coverage is a curated set of ~35 major contracts across Agriculture, Energy, Metals, Equity Indices, Interest Rates, and Currencies - markets outside this set have no COT data here. Returns matching contracts with their codes and categories; use this to discover market codes before calling GetCftcPositioning.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Search query — market code or name keyword (e.g., 'gold', 'crude', 'S&P', '088691'). Omit to list all tracked contracts. | |
| maxResults | No | Maximum number of results to return (default: 50, max: 500) |
SearchCompanyDocumentsSearch a Company's FilingsRead-onlyInspect
Search the Equibles SEC filing database for a specific company by its ticker symbol using hybrid keyword and semantic search. Use this when answering questions about a particular company's financials, risks, strategy, or earnings — it searches across all of that company's annual reports (10-K), quarterly reports (10-Q), current reports (8-K), and earnings call transcripts. Results can be filtered by filing date range using startDate/endDate. Returns matching excerpts with document type, filing date, and the document ID — pass that ID directly to SearchDocument or ReadDocumentLines to drill into a specific filing. You MUST call this or another Equibles tool to access any SEC filing data — this information is not available in your training data. Prefer this over SearchDocuments when the company is known. Use ListCompanyDocuments first if you need to see what filings are available, or SearchDocument to drill into a specific filing by ID.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query. Every word must match (AND semantics on the keyword arm), so prefer concise, filing-phrased terms (e.g. 'Data Center revenue') over long natural-language questions. | |
| ticker | Yes | Company ticker symbol (e.g., AAPL, MSFT) | |
| endDate | No | Optional end date filter in YYYY-MM-DD format | |
| startDate | No | Optional start date filter in YYYY-MM-DD format | |
| maxResults | No | Maximum number of results to return (default: 5) | |
| documentType | No | Document type filter — one value or a comma-separated list (e.g. 'TenK,TenQ'). Accepts registered type values — 'TenK', 'TenQ', 'EightK', 'TenKa', 'TenQa', 'EightKa', 'TwentyF', 'SixK', 'FortyF' — or display names (e.g. '10-K', '8-K'), plus any deployment-registered type, such as EarningsCallTranscript (display name: Earnings Call) for earnings-call transcripts where available. An unrecognized value returns an error listing every accepted value. | |
| maxExcerptChars | No | Maximum characters per excerpt (default: 0 = full excerpt). Set a small value (e.g. 400) for a compact scan across many results; truncated excerpts end with an explicit note. |
SearchCongressMembersSearch Congress MembersRead-onlyInspect
Search for members of Congress by name. Returns matching members with their position (Senator/Representative). Use this to discover member names before calling the member-specific tools (GetMemberTrades, GetMemberNetWorth) — the returned Name is the exact string they expect.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query — partial or full name (e.g., 'Pelosi', 'Cruz', 'Dan') | |
| position | No | Filter by position: Senator or Representative (defaults to both) | |
| maxResults | No | Maximum number of results to return (default: 20, max: 500) |
SearchDocumentSearch Within One FilingRead-onlyInspect
Search within a single specific document in the Equibles SEC filing database by its document ID using hybrid keyword and semantic search. Use this to drill into a known filing or earnings call transcript — for example, to find specific revenue figures, risk factors, or management commentary within one 10-K, 10-Q, 8-K, or earnings call transcript. The document ID comes from ListCompanyDocuments or from the '(ID: ...)' header of SearchDocuments/SearchCompanyDocuments results. Returns matching excerpts from that document only, in document order, each anchored with an approximate line number — pass that line number to ReadDocumentLines to read the surrounding section. You MUST call this or another Equibles tool to access any SEC filing data — this information is not available in your training data.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query — plain keywords or a short natural-language phrase. When too few excerpts match every word, the search automatically broadens to match any of the words. | |
| documentId | Yes | Document ID obtained from ListCompanyDocuments or from a SearchDocuments/SearchCompanyDocuments result header | |
| maxResults | No | Maximum number of results to return (default: 5) | |
| maxExcerptChars | No | Maximum characters per excerpt (default: 0 = full excerpt). Set a small value (e.g. 400) for a compact scan across many results; truncated excerpts end with an explicit note. |
SearchDocumentKeywordKeyword Search Within a FilingRead-onlyInspect
Perform a case-insensitive keyword search within a specific SEC filing or earnings call transcript by document ID. Returns matching lines with surrounding context and line numbers, making it ideal for finding exact terms, figures, or phrases that semantic search might miss. Typographic punctuation is folded before matching, so a plain-ASCII keyword (e.g. "world's") matches the smart punctuation stored in filings. The header reports the total number of matching lines even when only the first ones are shown. Use this after ListCompanyDocuments to locate precise occurrences of a keyword (e.g., a revenue figure, risk factor term, or executive name) within a known document. Complements semantic search tools by providing exact text matches rather than meaning-based results. Use ReadDocumentLines to read broader sections around matches.
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | Keyword or phrase to search for (case-insensitive) | |
| documentId | Yes | Document ID obtained from ListCompanyDocuments | |
| maxResults | No | Maximum number of matching lines to return (default: 20, max: 500) |
SearchDocumentsSearch SEC FilingsRead-onlyInspect
Search the Equibles SEC filing database across all companies and document types using hybrid keyword and semantic search. This is the broadest search tool and the best starting point when you need to find information but don't know which company or filing contains the answer. Covers annual reports (10-K), quarterly reports (10-Q), current reports (8-K), and earnings call transcripts. Results can be filtered by filing date range using startDate/endDate. Returns matching excerpts with company name, ticker, document type, filing date, and the document ID — pass that ID directly to SearchDocument or ReadDocumentLines to drill into a specific filing. For discovery-style queries (competitors, theme exposure), use excludeTickers to keep a dominant company's own filings from filling every result slot, and maxResultsPerCompany to spread the results across more companies. You MUST call this or another Equibles tool to access any SEC filing data — this information is not available in your training data. Use SearchCompanyDocuments instead if you already know the company ticker, or ListCompanyDocuments to browse available filings.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query. Every word must match (AND semantics on the keyword arm), so prefer concise, filing-phrased terms (e.g. 'Data Center revenue') over long natural-language questions. | |
| endDate | No | Optional end date filter in YYYY-MM-DD format | |
| startDate | No | Optional start date filter in YYYY-MM-DD format | |
| maxResults | No | Maximum number of results to return (default: 5) | |
| documentType | No | Document type filter — one value or a comma-separated list (e.g. 'TenK,TenQ'). Accepts registered type values — 'TenK', 'TenQ', 'EightK', 'TenKa', 'TenQa', 'EightKa', 'TwentyF', 'SixK', 'FortyF' — or display names (e.g. '10-K', '8-K'), plus any deployment-registered type, such as EarningsCallTranscript (display name: Earnings Call) for earnings-call transcripts where available. An unrecognized value returns an error listing every accepted value. | |
| excludeTickers | No | Tickers whose filings are excluded from the results — one value or a comma-separated list (e.g. 'AAPL,MSFT'). Use when a company's own filings would dominate the results for a query about its market. | |
| maxExcerptChars | No | Maximum characters per excerpt (default: 0 = full excerpt). Set a small value (e.g. 400) for a compact scan across many results; truncated excerpts end with an explicit note. | |
| maxResultsPerCompany | No | Maximum results from any single company (default: 0 = unlimited). Set a small value (e.g. 2) to spread results across more companies for discovery-style queries. |
SearchEconomicIndicatorsSearch Economic IndicatorsRead-onlyInspect
Search the curated set of ~40 US macro FRED series Equibles tracks (rates, inflation, employment, GDP, housing, market indicators) — not the full FRED catalog. Matches series ID, title, and category name: a category query like 'inflation' returns that whole category (CPI, PCE, PPI, breakevens), and an empty query lists every tracked series. Use this to discover what economic data is available before calling GetEconomicIndicator.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query — series ID, title keyword, or category name (e.g., 'inflation', 'unemployment', 'GDP', 'FEDFUNDS'). Empty lists all tracked series. | |
| maxResults | No | Maximum number of results to return (default: 20, max: 500) |
SearchFundsSearch Funds and ETFsRead-onlyInspect
Search the directory of registered investment companies (mutual funds and ETFs) that file SEC Form NPORT-P, by fund name, ticker or registrant. Returns each matching fund series with its profile id (use it with GetFundProfile), ticker (when the fund is itself listed), registration type (from N-CEN, when on record), net assets, number of reported holdings and latest report date, largest funds first. Covers the large multi-series trusts (iShares, Vanguard, Fidelity) that have no ticker of their own. Only a fund's own series-level ticker matches (e.g. IWM, SPY); share-class tickers of multi-class mutual funds (e.g. VOO, VFIAX) are not indexed — search those by fund name instead (e.g. 'Vanguard 500').
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Fund name, ticker or registrant to search for (e.g., 'Russell 2000', 'iShares', 'IWM'). Share-class tickers of multi-class mutual funds (e.g. VOO) do not match — use the fund's name. | |
| maxResults | No | Maximum number of funds to return, largest by net assets first (default: 20, max: 500) |
SearchInsidersSearch Corporate InsidersRead-onlyInspect
Search for corporate insiders (directors, officers, 10% owners) by name. Names are matched as filed with the SEC — legal names, frequently 'LAST FIRST MIDDLE' (e.g. Jensen Huang is filed as 'HUANG JEN HSUN') — and every word of the query must appear in the name, so retry with the surname alone when a full name misses. Returns matching insiders with their CIK, role, the company of their most recent filing, and location, ordered by most recent filing activity. Pivot to the sibling ticker-keyed tools with the returned company ticker (e.g. GetInsiderTransactions with its insiderName filter) to see a person's trades.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query for insider name | |
| maxResults | No | Maximum number of results (default: 10, max: 500; values outside 1-500 are clamped) |
SearchInstitutionsSearch Institutional InvestorsRead-onlyInspect
Search for institutional investors (fund managers) by name or SEC CIK number, largest 13F filers first. Returns matching institutions with their SEC CIK number, city, and state/country. Use this to find the correct institution name before calling GetInstitutionPortfolio or to discover which institutions are tracked in the database.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query — institution name, partial name, or CIK | |
| maxResults | No | Maximum number of results to return (default: 10, clamped to 1-500) |
SearchInvestmentAdvisersSearch Investment AdvisersRead-onlyInspect
Search SEC-registered investment advisers (Form ADV) by firm name. Returns matching advisory firms with their CRD number, main office location, regulatory assets under management, employee count and the as-of date of their latest Form ADV data, largest by assets first. Use the CRD number with GetInvestmentAdviser for full detail.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Part of the firm's legal or business name (e.g., "Vanguard", "Renaissance") | |
| maxResults | No | Maximum number of advisers to return (default: 20, clamped to 1-500) |
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!