Equibles
REMOTE · MCP.EQUIBLES.COM
SEC filings, company financials, holdings, earnings calls, stock prices, options and macro data.
Available components
Last scanned (9 hours ago)
Scores higher than 98% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Finance and Payments
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security94
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents. View diagnostics → Partial
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability64
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 39215 tokens (~261/item across 150 items; 150 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 150 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Checks we ran (13)
- TLS certificate
- Authorization
- HTTPS
- HSTS header
- DNSSEC
- Transport
- Schema quality
- Stability
- Tool coverage
- Injection markers
- Destructive annotations
- Judged manipulation
- MCP protocol
Does not apply to this hosted endpoint (2)
- Supply Chain SecurityScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
- Provenance & TransparencyScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
The score does not measure everything. What the score does not measure →
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 0
- Tool “GetEtfProfile” rewrote its description, which is the text the model reads security
- Tool “GetIndexComposition” rewrote its description, which is the text the model reads security
- Tool “GetMajorShareholdings” rewrote its description, which is the text the model reads security
- Tool “GetOptionChain” rewrote its description, which is the text the model reads security
- Tool “GetOptionContract” rewrote its description, which is the text the model reads security
- Tool “GetOptionExpirations” rewrote its description, which is the text the model reads security
- Tool “GetValuationMultiples” rewrote its description, which is the text the model reads security
- Tool “GetValuationMultiplesHistory” rewrote its description, which is the text the model reads security
- New tool “AnalyzeOptionStrategy” functional
- New tool “GetOptionChainSession” functional
- New tool “GetOptionChainSummary” functional
- New tool “GetOptionContractHistory” functional
- New tool “GetOptionTermStructure” functional
- New tool “GetOptionTrades” functional
- “GetOptionExpirations” added an optional parameter “endDate” cosmetic
- “GetOptionExpirations” added an optional parameter “expired” cosmetic
- “GetOptionExpirations” added an optional parameter “startDate” cosmetic
- “GetIndexComposition” reworded the description of “index” cosmetic
- 4 Nov 26 0
- Tool “AddPortfolioLot” rewrote its description, which is the text the model reads security
- Tool “GetCanadianShortPositions” rewrote its description, which is the text the model reads security
- Tool “GetEtfHoldings” rewrote its description, which is the text the model reads security
- Tool “GetMajorShareholdings” rewrote its description, which is the text the model reads security
- Tool “SearchEtfs” rewrote its description, which is the text the model reads security
- New tool “GetCanadianFundHoldings” functional
- New tool “GetInstitutionBeneficialOwnership” functional
- “AddPortfolioLot” reworded the description of “ticker” cosmetic
- “UnwatchInstrument” reworded the description of “optionContract” cosmetic
- “WatchInstrument” reworded the description of “ticker” cosmetic
- 3 Nov 26 0
- Tool “SearchEtfs” rewrote its description, which is the text the model reads security
- Tool “GetEconomicIndicator” rewrote its description, which is the text the model reads security
- Tool “GetGovernmentContracts” rewrote its description, which is the text the model reads security
- Tool “GetInvestorRelationsNews” rewrote its description, which is the text the model reads security
- Tool “GetLatestEconomicIndicators” rewrote its description, which is the text the model reads security
- Tool “GetLiveQuote” rewrote its description, which is the text the model reads security
- Tool “GetOptionChain” rewrote its description, which is the text the model reads security
- Tool “GetOptionContract” rewrote its description, which is the text the model reads security
- Tool “GetOptionExpirations” rewrote its description, which is the text the model reads security
- Tool “GetTopGovernmentContractors” rewrote its description, which is the text the model reads security
- Tool “SearchEconomicIndicators” rewrote its description, which is the text the model reads security
- New tool “GetCanadianInsiderTransactions” functional
- New tool “GetCanadianShortPositions” functional
- New tool “GetStockProfile” functional
- New tool “GetStockSplits” functional
- New tool “ListExchanges” functional
- New tool “SearchListings” functional
- “GetGovernmentContracts” added an optional parameter “country” cosmetic
- “GetLatestEconomicIndicators” added an optional parameter “country” cosmetic
- “GetTopGovernmentContractors” added an optional parameter “country” cosmetic
- “SearchEtfs” added an optional parameter “exchange” cosmetic
- “CreateMyPortfolio” reworded the description of “currency” cosmetic
- “GetEtfProfile” reworded the description of “ticker” cosmetic
- “GetGovernmentContracts” reworded the description of “ticker” cosmetic
- “GetLiveQuote” reworded the description of “tickers” cosmetic
- “GetOptionChain” reworded the description of “ticker” cosmetic
- “GetOptionContract” reworded the description of “ticker” cosmetic
- “GetOptionExpirations” reworded the description of “ticker” cosmetic
- “SearchEtfs” reworded the description of “query” cosmetic
- 27 Oct 26 0
- Tool “ScreenStocks” rewrote its description, which is the text the model reads security
- 25 Oct 26 −2
- Tool “GetInvestorEventSlideMetadata” rewrote its description, which is the text the model reads security
- Tool “ListFilings” rewrote its description, which is the text the model reads security
- 24 Oct 26 +2
No change was recorded against any check on this day. Endpoint Security went from 94 to 97.
- 22 Oct 26 0
- Tool “GetMajorShareholdings” rewrote its description, which is the text the model reads security
- Tool “GetStockPrices” rewrote its description, which is the text the model reads security
- Tool “GetTranscriptPhraseTrend” rewrote its description, which is the text the model reads security
- Tool “GetUpcomingInvestorEvents” rewrote its description, which is the text the model reads security
- “GetStockPrices” added an optional parameter “interval” cosmetic
- “GetTranscriptPhraseTrend” reworded the description of “phrase” cosmetic
- Tool “GetStockPrices” changed its title: Daily Price History → Price History cosmetic
- 21 Oct 26 0
- Tool “GetAllHolders” rewrote its description, which is the text the model reads security
- Tool “GetHolderMix” rewrote its description, which is the text the model reads security
- Tool “GetIndexChanges” rewrote its description, which is the text the model reads security
- Tool “GetInsiderOwnership” rewrote its description, which is the text the model reads security
- Tool “GetInstitutionStyleHistory” rewrote its description, which is the text the model reads security
- Tool “GetInstitutionSummary” rewrote its description, which is the text the model reads security
- Tool “GetMarketWide13FActivity” rewrote its description, which is the text the model reads security
- Tool “GetMostHeldStocks” rewrote its description, which is the text the model reads security
- Tool “ScreenStocks” rewrote its description, which is the text the model reads security
- Tool “SearchInstitutions” rewrote its description, which is the text the model reads security
- New tool “GetHolderTargets” functional
- New tool “GetMajorShareholdings” functional
- New tool “GetOwnershipSignals” functional
- “ScreenStocks” added an optional parameter “maxActiveHolderChange” cosmetic
- “ScreenStocks” added an optional parameter “maxConvictionShare” cosmetic
- “ScreenStocks” added an optional parameter “maxCrowding” cosmetic
- “ScreenStocks” added an optional parameter “maxEstimatedCostGap” cosmetic
- “ScreenStocks” added an optional parameter “maxHolderTenure” cosmetic
- “ScreenStocks” added an optional parameter “maxInstitutionalOwnership” cosmetic
- “ScreenStocks” added an optional parameter “maxPrivateFundOwnership” cosmetic
- “ScreenStocks” added an optional parameter “minActiveHolderChange” cosmetic
- “ScreenStocks” added an optional parameter “minConvictionShare” cosmetic
- “ScreenStocks” added an optional parameter “minCrowding” cosmetic
- “ScreenStocks” added an optional parameter “minEstimatedCostGap” cosmetic
- “ScreenStocks” added an optional parameter “minHolderTenure” cosmetic
- “ScreenStocks” added an optional parameter “minInstitutionalOwnership” cosmetic
- “ScreenStocks” added an optional parameter “minPrivateFundOwnership” cosmetic
- “GetAllHolders” reworded the description of “source” cosmetic
- “GetAllHolders” reworded the description of “view” cosmetic
- “GetHolderMix” reworded the description of “dimension” cosmetic
- “GetMostHeldStocks” reworded the description of “sort” cosmetic
- “ScreenStocks” reworded the description of “sortBy” cosmetic
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://mcp.equibles.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.equibles.com | CN=YE1,O=Let's Encrypt,C=US | 14 Sept 2026 | 13 Dec 2026 | ECDSA 384 | ECDSA-SHA384 | 595b8afc2ff1063a06f47b5349fac4b58d0 |
| SANs: mcp.equibles.com | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.equibles.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | Trust anchor | 20326, 38696 | 8, 8 | Verified |
| com. | DS published | 19718 | 13 | Verified |
| equibles.com. | No DS | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.equibles.com/.well-known/oauth-protected-resource/mcp"
Bearer resource_metadata="https://mcp.equibles.com/.well-known/oauth-protected-resource/mcp" | Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; preload |
Protected resource metadata
| Document | https://mcp.equibles.com/.well-known/oauth-protected-resource/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.equibles.com/mcp |
| Authorisation server | https://equibles.com/ |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.equibles.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.equibles.com/mcp | HTTPS enforced | 301 | https://mcp.equibles.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
GetOptionTrades Option Trades ~263
Get the trade tape for ONE option contract by its OCC symbol, active or expired, newest first: time, price, size, exchange and condition. A cancelled print stays in the tape, marked, so read volume from the bars, not a sum of prints. Defaults to the last 4 days; startDate and endDate set another window, and history begins in early 2024. A cut answer names the endTime that continues it. Plus receives trades 15 minutes after they print, Pro as they print; the Free plan is answered with an upgrade note. US tickers only.
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | yes | OCC option symbol, active or expired, e.g. O:AAPL270617C00350000 |
| endDate | string | – | Last date in YYYY-MM-DD format (default: today) |
| endTime | string | – | Last time to include, in RFC 3339 format; replaces endDate |
| maxResults | integer | – | Maximum trades to return, newest first (default: 60, max: 500) |
| startDate | string | – | First date in YYYY-MM-DD format (default: 4 days before endDate) |
| ticker | string | yes | US stock ticker, e.g. AAPL |
No output schema declared.
No examples provided.
GetOrganization Organization ~167
Get an organization no market we cover lists, such as the U.S. Government, a federal agency or an unlisted company: its kind, country, LEI, parent and parts, the listed companies whose 10-K reports name it or one of its parts with the verbatim sentence, and for a federal agency the listed companies it awarded the most contract value in the last 12 months. Names from 10-K reports require the Pro plan.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum companies listed per side (default: 50, max: 500). A company and the parts listed under it are kept together. |
| organization | string | yes | The organization's slug as GetSupplyChain prints it (e.g., us-government), or part of its name (e.g., Samsung). |
No output schema declared.
No examples provided.
GetOwnershipSignals 13F Ownership Signals ~292
Who holds a stock and how, measured across every 13F book of the newest closed quarter, beside the quarter before: conviction (filers holding it among their ten largest positions, its weight in their books), crowding (shares held by high-turnover filers and private-fund advisers as % of shares outstanding, with its percentile among stocks at least 10 filers hold), institutional ownership of the estimated free float, holder concentration (Herfindahl, largest ten holders), how long holders have held it, the holders' estimated average cost per share and the share of 13F value held at a loss, active holders' like-for-like change, top-scored managers' net buying, Schedule 13D and 13G filers on record, holder-overlap peers (operating companies whose active holders overlap most, one row per company, funds excluded), and the filers with the highest weight in it. Cost is an estimate from quarter average prices, never a filed figure.
| Name | Type | Req | Description |
|---|---|---|---|
| maxHolders | integer | – | Highest-conviction holders to list, by the stock's weight in their 13F book (default 10, clamped to 0-50) |
| maxPeers | integer | – | Holder-overlap peers to list (default 10, clamped to 0-20) |
| ticker | string | yes | Listed security ticker (e.g., NVDA) |
No output schema declared.
No examples provided.
GetOwnershipSummary Stock Ownership Summary ~248
Get who owns a stock, as shares and % of shares outstanding: 13F institutions, insiders (Forms 3, 4, 5, single-class issuers only), 13D/13G blocks no 13F report already holds, and the remaining float, flagged rather than clipped when negative. Registered funds are shown but never summed, since their shares sit inside their advisers' 13F reports. Each holder counts once: insiders who file 13Fs, holders a 13F filer reports, and the filers and persons of any 13D or 13G that names a 13F filer, directly or through filings naming one another, are left out of the other lines, by CIK and SEC reporting links, never by name. A foreign private issuer's count is in ordinary shares, a different unit, so it gets no % or remainder. Also splits the 13F shares by holder type, style and location. view=ultimate adds the largest ultimate parents.
| Name | Type | Req | Description |
|---|---|---|---|
| ticker | string | yes | Listed security ticker (e.g., NVDA, VOO) |
| view | string | – | default, or ultimate to add the largest ultimate parents |
No output schema declared.
No examples provided.
GetPutCallRatios CBOE Put/Call Ratios ~213
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 | Type | Req | Description |
|---|---|---|---|
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| maxResults | integer | – | 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. |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 3 months ago) |
| type | string | – | Ratio type: Total, Equity, Index, Vix, Etp (default: Equity) |
No output schema declared.
No examples provided.
GetRevenueBreakdown Revenue Breakdown by Segment ~226
Get a company's revenue disaggregated by business segment, geography and product/service — plus operating income by segment when the issuer tags it, so segment profitability and margins are answerable — 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; source values are as-reported and never estimated, while segment operating margin is derived as operating income divided by revenue for the same folded raw member QName and exact period. 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 | Type | Req | Description |
|---|---|---|---|
| maxYears | integer | – | Most recent fiscal years to include (default 8, max 12) |
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, MSFT); a listing on another exchange is MIC:TICKER (XPAR:AIR). |
No output schema declared.
No examples provided.
GetShareholderVoteResults Shareholder Vote Results ~165
Get a company's shareholder meeting vote results from its SEC 8-K Item 5.07 filings, latest meeting first: for each matter (each director nominee on its own row) the For, Against, Abstain, Withheld and broker non-vote counts as printed, the stated outcome and its quote, and the source filing. An 8-K/A replaces the 8-K only if it restates every matter; else both are shown. Only verified readings are shown; an empty answer says whether no vote filing is on file or one still awaits extraction.
| Name | Type | Req | Description |
|---|---|---|---|
| meetings | integer | – | Number of meetings to return, newest first (default 1, max 10). |
| ticker | string | yes | Company ticker symbol (e.g., AAPL, PG). |
No output schema declared.
No examples provided.
GetShortInterest Short Interest History ~278
Get bi-monthly short interest history for an exact stock or ETF listing 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. For primary operating-company stocks only, the answer may also carry a model estimate of the settlement FINRA has not published yet; it appears BELOW the table and must never be presented as a FINRA figure.
| Name | Type | Req | Description |
|---|---|---|---|
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| maxResults | integer | – | Maximum number of records to return — keeps the most recent N settlements in the range, displayed oldest to newest (default: 24, max: 500) |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 1 year ago) |
| ticker | string | yes | Listed security ticker (e.g., AAPL, VOO, GME) |
No output schema declared.
No examples provided.
GetShortInterestSnapshot Market-Wide Short Interest Snapshot ~379
Market-wide snapshot of the latest FINRA bi-monthly short interest settlement — one row per exact listed security, 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 or ETF's history use GetShortInterest; for daily short-sale flow use GetShortVolume/GetLargestShortVolume.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of results to return (default: 50, max: 500) |
| minAvgDailyVolume | integer | – | 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) |
| minDaysToCover | number | – | Minimum days to cover filter (default: 0) |
| offset | integer | – | Number of ranked results to skip before returning rows (default: 0, clamped to 0-100000). For the next page, add the returned row count to the clamped current offset; if the next offset exceeds 10000… |
| sortBy | string | – | Sort key: daysToCover (default; FINRA-capped 999.99 sentinel rows ranked last), shortPosition, or change (largest increase in short position first) |
No output schema declared.
No examples provided.
GetShortSqueezeScores Short Squeeze Scores ~415
Rank primary operating-company stocks by a peer-relative 0-100 short-squeeze score using short interest, capped days to cover, price versus trailing VWAP, short-volume trend, short-interest change, fails-to-deliver pressure, and bounded price/volume/earnings catalyst boosts. Optional liquidity floors filter the board without changing scores. Pass ticker for one stock's factor breakdown and universe rank. Exchange-traded products are excluded because issuer shares outstanding and earnings are not product-level facts; use GetShortInterest for an ETF's exact FINRA series.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of stocks to return (default: 25, highest score first; clamped to 1-200). |
| minDollarVolume | number | – | 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… |
| minMarketCap | number | – | Minimum market capitalization in US dollars (e.g. 300000000 = $300M; default 0 = no floor). Stocks with an unknown market cap are excluded when set. |
| offset | integer | – | Number of ranked results to skip before returning rows (default: 0, clamped to 0-100000; ignored for a single-ticker lookup). For the next page, add the returned row count to the clamped current offs… |
| ticker | string | – | 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 look… |
No output schema declared.
No examples provided.
GetShortVolume Daily Short Sale Volume ~257
Get daily short sale volume history for an exact stock or ETF listing 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 | Type | Req | Description |
|---|---|---|---|
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| maxResults | integer | – | Maximum number of records to return — keeps the most recent N trading days in the range, displayed oldest to newest (default: 90, max: 500) |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 3 months ago) |
| ticker | string | yes | Listed security ticker (e.g., AAPL, VOO, GME) |
No output schema declared.
No examples provided.
GetStochasticOscillator Stochastic Oscillator ~275
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 | Type | Req | Description |
|---|---|---|---|
| dPeriod | integer | – | Smoothing window for %D (default: 3) |
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| kPeriod | integer | – | Lookback window for %K (default: 14) |
| maxResults | integer | – | Maximum number of records to return (default: 60, max: 500); the newest rows are kept and listed newest first. |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 6 months ago) |
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, MSFT). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. A listing on another exchange is MIC:TICKER (XPAR:AIR). |
No output schema declared.
No examples provided.
GetStockPrices Price History ~405
Get daily, weekly or monthly OHLCV (Open, High, Low, Close, Volume) price history for a stock. Useful for technical analysis, charting, and price trend analysis. Weekly (ISO week) and monthly bars roll up the daily rows: first open, highest high, lowest low, last close, summed volume, dated by their last session; a week or month the date range cuts is marked partial. A US listing is quoted in USD; a listing on another exchange (MIC:TICKER) is quoted in its own trading currency, which the output names. An Adj Close column shows the provider's split- and cash-dividend-adjusted close when it differs from Close. Captured corporate-action changes trigger a full-history refresh of the exact listed series, but the stored rows do not certify which split basis the provider returned. Do not treat reconciliation status alone as proof that a window is a consistent total-return series. Zero-volume carry-forward candles are excluded because they do not establish a traded market price.
| Name | Type | Req | Description |
|---|---|---|---|
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| interval | string | – | Bar interval: daily (default), weekly or monthly. Use weekly or monthly with a wider startDate for long histories in one call. |
| maxResults | integer | – | Maximum number of records to return (default: 260, max: 500). When the range holds more rows the newest are kept; rows are always listed oldest to newest. |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 1 year ago) |
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, MSFT, TSLA). Class shares use a dash (BRK-B); the dot form (BRK.B) is also accepted. A listing on another exchange is MIC:TICKER (XPAR:AIR, XLON:BP, XHKG:00005). |
No output schema declared.
No examples provided.
GetStockProfile Stock Profile ~130
Get one listing's profile: the company's description, website, sector and industry, SEC CIK, LEI and fiscal year end, the security's ISIN and type, and the company's other listings on every covered exchange with the symbol each is read by. Pass a bare ticker for a US listing or MIC:TICKER (e.g. XETR:SIE) for one on another exchange.
| Name | Type | Req | Description |
|---|---|---|---|
| ticker | string | yes | Ticker (e.g. AAPL, BRK-B) or MIC:TICKER for a listing on another exchange (e.g. XETR:SIE). |
No output schema declared.
No examples provided.
GetStockSplits Stock Splits ~245
Get the captured stock splits and reverse splits of an exact stock or ETF listing, newest effective date first, and whether its stored daily prices are confirmed restated onto the post-split share basis across each. A restated split needs no further adjustment of GetStockPrices bars; an unconfirmed one (always so for a listing outside the US) is a break in the price and volume series, never to be restated from the ratio alone. Announced splits can appear before their effective date. Each listing reports its own splits: a share class never inherits another listing's.
| Name | Type | Req | Description |
|---|---|---|---|
| endDate | string|null | – | Optional latest effective date in YYYY-MM-DD format. |
| maxResults | integer | – | Maximum number of splits to return (default: 20, max: 500). |
| offset | integer | – | Number of newest matching splits to skip for pagination (default: 0). |
| startDate | string|null | – | Optional earliest effective date in YYYY-MM-DD format. |
| ticker | string | yes | Listed stock or ETF ticker (e.g., NVDA, BRK-B); a listing on another exchange is MIC:TICKER (XAMS:ASML). |
No output schema declared.
No examples provided.
GetSuperInvestors Superinvestor Directory ~140
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.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
GetSupplyChain Supply Chain ~317
Get a company's supply chain: the customers, suppliers, competitors and partners named in annual 10-K reports, its own and those of other listed companies that name it, with any stated revenue or receivables share, a revenue share in dollars from the same filing, the verbatim sentence and the source filing. A share belongs to the filing that states it. Names the filings never state are not inferred, so a missing company is not evidence of no relationship. Requires the Pro plan.
| Name | Type | Req | Description |
|---|---|---|---|
| lens | string | – | Order within each side: 'stated' (largest stated share first, the default), 'dependsOn' (largest share of this company's revenue first: who it relies on) or 'dependents' (largest share of the other c… |
| maxResults | integer | – | Maximum companies listed per side (customers, suppliers, competitors, partners) (default: 50, max: 500). A company and the parts listed under it are kept together. |
| quantifiedOnly | boolean | – | Only companies with a stated revenue or receivables share (default: false). |
| side | string | – | Only one side: customers, suppliers, competitors or partners (default: all four). |
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, QRVO), or MIC:TICKER (e.g., XBRU:BAR) for a listing outside the US. |
No output schema declared.
No examples provided.
GetSupplyChainOverlap Supply Chain Overlap ~190
Get which of a company's suppliers and customers also supply or buy from its competitors, as 10-K filings name them: each one with the listed competitors it also serves, or, with vs, the company against one competitor (both, only the company, only the competitor). A competitor whose own 10-K is not read yet is marked, since other filings alone can miss what it uses. Requires the Pro plan.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum companies listed per side and group (default: 50, max: 500). |
| ticker | string | yes | Stock ticker symbol (e.g., NVDA), or MIC:TICKER (e.g., XPAR:SU) for a listing outside the US. |
| vs | string | – | One competitor to compare with, by the symbol GetSupplyChain lists for it (e.g., AMD); omit to check every listed competitor. |
No output schema declared.
No examples provided.
GetTopGovernmentContractors Top Federal Contractors ~210
Rank public companies by total federal contract dollars awarded over a date range, one country at a time: US (default, from USAspending.gov; total award value of prime contract awards of $1M or more) or CA (Government of Canada contracts over C$10,000, contract value including amendments, in Canadian dollars, for vendors whose name exactly matches a company listed on a Canadian exchange). 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 | Type | Req | Description |
|---|---|---|---|
| country | string | – | Awarding government: US (default) or CA |
| endDate | string | – | End date in YYYY-MM-DD format (defaults to today) |
| maxResults | integer | – | Maximum number of companies to return (default: 25, largest first) |
| startDate | string | – | Start date in YYYY-MM-DD format, filtering on the award action date (defaults to 1 year ago) |
No output schema declared.
No examples provided.
GetTopHolders Top Institutional Holders ~531
Get the top institutional holders (fund managers) of an exact stock or ETF listing from SEC 13F-HR filings. Returns a ranked list by shares held, including published position value and percentage of total institutional 13F shares (not of shares outstanding). Values normally use report-date closing prices, may fall back to filer values, and can be zero when unavailable. During the newest quarter's filing window, non-ETF primary stocks carry non-filers' prior-quarter positions; ETF listings remain exact and as-filed because carry-forward is filer-wide. Use position type before treating put/call rows as ownership. Each holder shows its entity type from regulatory records (Form ADV, SEC filer profile, 13D/13G, N-CEN), filtered by holderTypes, and its style band measured from its filed book, filtered by styles.
| Name | Type | Req | Description |
|---|---|---|---|
| holderTypes | array | – | Holder types to keep, as an array of tokens: adv (registered investment adviser), era (exempt reporting adviser), ia (other adviser), bank, ins (insurer), bd (broker-dealer), fund (registered fund),… |
| maxResults | integer | – | Maximum number of holding rows to return (default: 20, clamped to 1-500) |
| offset | integer | – | Number of ranked holding rows to skip before returning results (default: 0) |
| reportDate | string | – | 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) |
| styles | array | – | Style bands to keep, as an array of tokens: idx (index-like), sys (systematic-like), conc (concentrated), divact (diversified active), unk (book too small or unvalued to band), e.g. ["conc"]. Bands a… |
| ticker | string | yes | Listed security ticker (e.g., AAPL, VOO) |
No output schema declared.
No examples provided.
GetTopInstitutionalBuyersSellers Top Institutional Buyers and Sellers ~301
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); entries and exits require observed 13F filings in both compared quarters, so missing filings cannot become a full-position buy or sale; a filer that continues under one new CIK with a matching 13F book is compared through that successor, and one split across several new CIKs is left out; the output counts the filers and shares left out and names the largest. 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 | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of buyers and sellers to return per section (default: 10, clamped to 1-500) |
| reportDate | string | – | 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) |
| ticker | string | yes | Listed security ticker (e.g., AAPL, VOO) |
No output schema declared.
No examples provided.
GetTranscriptPhraseTrend Transcript Phrase Trend ~335
Count how often a word or phrase comes up on a company's last earnings calls, oldest first: mentions per call, the rate per 10,000 words, the split between prepared remarks and Q&A where the call states its hand-off to questions, and one or two short quotes. Whole-word and case-insensitive, so "AI" never matches "said"; spellings that differ by a hyphen or a join count together ("copilot" also finds "co-pilot"), and the calls list which spelling they used. A call with no transcript text, or one in Chinese, Japanese or Korean, is flagged, never zero. Use it to follow a product, risk or initiative across quarters.
| Name | Type | Req | Description |
|---|---|---|---|
| calls | integer | – | Number of most recent earnings calls to read (default 8, max 12; values outside 1-12 are clamped) |
| phrase | string | yes | Word or phrase to count, 2-80 characters after trimming (e.g. "tariffs", "sovereign AI"). Matched as whole words, ignoring case. A space or hyphen between words matches any whitespace, a hyphen or no… |
| ticker | string | yes | Company ticker symbol (e.g., AAPL, MSFT), or MIC:TICKER (e.g., XPAR:AIR) for a listing outside the US. |
No output schema declared.
No examples provided.
GetUpcomingInvestorEvents Upcoming Investor Events ~251
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. Also states the next earnings call when one is known beyond the listed events: a scheduled call, or an estimate projected from the company's past call dates and labelled as one. 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 / GetInvestorEventTranscript.
| Name | Type | Req | Description |
|---|---|---|---|
| eventType | string | – | 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… |
| maxResults | integer | – | Maximum number of events to return (default: 20, max: 500) |
| ticker | string | yes | Company ticker symbol (e.g., NVDA, AAPL), or MIC:TICKER (e.g., XPAR:AIR) for a listing outside the US. |
No output schema declared.
No examples provided.
GetValuationMultiples Valuation Multiples ~243
Get current EV/Revenue, EV/EBIT, P/E, Price/Sales and Price/Book with peer median, quartiles and sample size; REITs add verified company-stated P/FFO and P/AFFO, and a filer with a verified reconciliation adds EV over its stated Adjusted EBITDA. TTM flows use four discrete fiscal quarters or an exact annual-plus-YTD bridge; annual-only figures are not TTM. P/E uses validated diluted EPS or income available to common, with the basis named. Enterprise value uses same-date reported debt, cash and tagged short-term investments. Price/Sales and Price/Book use market cap over TTM revenue and latest tagged equity. Inputs must reconcile, share one split basis and be in USD; missing inputs are never estimated; a company without a provable ratio still lists its figures. The peer cohort excludes the company and uses similar-size industry peers when sufficient, else the full industry. The response dates every figure and names its cohort basis. Use GetValuationMultiplesHistory for history.
| Name | Type | Req | Description |
|---|---|---|---|
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, MSFT). |
No output schema declared.
No examples provided.
GetValuationMultiplesHistory Valuation Multiples History ~183
Get up to ~10 years of quarterly EV/Revenue, EV/EBIT, EV/EBITDA, P/E, Price/Sales and Price/Book, with P/FFO and P/AFFO for REITs and EV/Adjusted EBITDA for verified filers. Each row is recomputed at its filing date from facts then available and that day's raw close; non-GAAP cells name their TTM or fiscal-year basis. Completed exact-primary split reconciliation preserves older samples; anchors before an unresolved split are omitted. The reply reports omissions and missing EV inputs by cause. Uses the strict USD-only TTM/EV methodology of GetValuationMultiples on one effective split basis. Missing or unproved inputs are dashes, never estimates.
| Name | Type | Req | Description |
|---|---|---|---|
| ticker | string | yes | Stock ticker symbol (e.g., AAPL, MSFT). |
No output schema declared.
No examples provided.
GetVixHistory VIX Volatility Index History ~155
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 | Type | Req | Description |
|---|---|---|---|
| endDate | string | – | End date in YYYY-MM-DD format (defaults to latest available) |
| maxResults | integer | – | 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. |
| startDate | string | – | Start date in YYYY-MM-DD format (defaults to 3 months ago) |
No output schema declared.
No examples provided.
GetWebDataFeed Get Tracker ~150
Get the latest independently verified stored result for one of the caller's trackers, or the latest retained result at or before a requested timestamp. This is read-only, never triggers a live run, and preserves the last good result after a newer failure. To create or manage a tracker, tell the user to open the Equibles Portal and choose Dashboard → Trackers: https://www.equibles.com/trackers
| Name | Type | Req | Description |
|---|---|---|---|
| capturedAtOrBefore | string | – | Optional ISO-8601 timestamp. Returns the newest retained verified capture completed at or before this instant. Omit it for the latest result. |
| dataFeed | string | yes | The tracker name or full id shown by ListWebDataFeeds. |
No output schema declared.
No examples provided.
ListExchanges Covered Exchanges ~65
List the markets listings are covered on: the US directory and each exchange outside the US, with the exchange codes its listings are written under (MIC:TICKER), its country code, trading currency, session hours and listing count. Use a code as SearchListings exchange or market.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
ListFilings List Filings ~438
List stored SEC filings and earnings-call transcripts newest first. Omit ticker for a market-wide feed or provide one ticker for a company-specific list. Returns company identity, document IDs, types, filing and reporting dates, SEC item numbers, line counts, EDGAR accession numbers and acceptance times (UTC; blank for filings stored before October 2026), and page totals. Supports date, document-type, and exact SEC item-number filters. Hidden document types remain excluded unless explicitly requested. When the deployment summarizes documents, each row adds a one- or two-sentence summary of what the document says, and when it has a public document viewer, each row adds the filing's page URL to share with the user. Pass a returned ID to SearchDocument or ReadDocumentLines.
| Name | Type | Req | Description |
|---|---|---|---|
| documentType | string | – | Document type filter: a registered value such as 'TenK', 'TenQa', 'EightK', 'TwentyF', 'Def14A', 'Defa14A', 'SThree' or 'TenderOfferThirdParty', or its SEC form name ('10-K', '20-F/A', 'DEFA14A', 'S-… |
| endDate | string|null | – | Optional end date filter in YYYY-MM-DD format |
| itemNumber | string | – | Optional exact SEC current-report item number, e.g. 2.02, 5.02, or 1.01. |
| maxItems | integer | – | Maximum number of documents per page (default: 10) |
| page | integer | – | Page number for pagination (default: 1) |
| startDate | string|null | – | Optional start date filter in YYYY-MM-DD format |
| ticker | string | – | Optional company ticker symbol (e.g., AAPL, MSFT); a listing outside the US is MIC:TICKER (e.g. XPAR:AIR), whose list includes its ESEF reports. Omit for all companies. |
No output schema declared.
No examples provided.
ListInvestorEvents Browse Investor Events ~278
List a company's investor events, newest first: earnings calls plus conferences, investor days and shareholder meetings. Each row gives the event id, type, UTC start, title, fiscal period (earnings calls only), status, and each material's status (available, pending, notPublished, failed, notAttempted, noCallHeld) for transcript, audio and slides. Read a conference by event id with GetInvestorEventTranscript; GetEarningsCallEvent is keyed by fiscal quarter.
| Name | Type | Req | Description |
|---|---|---|---|
| eventType | string | – | Optional event type to filter on: EarningsCall, CapitalMarketsDay, InvestorUpdate, AGM, Conference, FiresideChat, or MAndA (default: all types) |
| includeUncaptured | boolean | – | Also list events hidden because none of their materials could be captured and still on the company's own IR calendar (default false); their status reads Unavailable. |
| limit | integer | – | Maximum number of events to return (default 25, max 100; values outside 1-100 are clamped) |
| offset | integer | – | Number of matching events to skip before returning rows (default 0) |
| ticker | string | yes | Company ticker symbol (e.g., AAPL, MSFT), or MIC:TICKER (e.g., XPAR:AIR) for a listing outside the US. |
No output schema declared.
No examples provided.
ListWebDataFeeds List Trackers ~81
List the caller's own trackers (recurring, verified website data collections), with schedule, state, visibility, and most recent run. This is read-only and never contacts a source website. To create or manage one, tell the user to open the Equibles Portal and choose Dashboard → Trackers: https://www.equibles.com/trackers
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
ReadDocumentLines Read Filing Lines ~125
Read numbered lines from one SEC filing or earnings-call transcript. Use line numbers returned by SearchDocument or request a known range. Returns at most 2,000 lines and identifies the next startLine when truncated.
| Name | Type | Req | Description |
|---|---|---|---|
| documentId | string | yes | Document ID obtained from ListFilings |
| endLine | integer | 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 | integer | yes | First line to read (1-based, inclusive) |
No output schema declared.
No examples provided.
RemovePortfolioLot Remove Portfolio Lot ~123
Permanently delete a lot from the USER's portfolio, as if it had never been recorded. This is for a lot entered by mistake. It is NOT how a sale is recorded: deleting a lot that was sold destroys its realized profit; use ClosePortfolioLot for that. This cannot be undone, so confirm with the user first, naming the lot.
| Name | Type | Req | Description |
|---|---|---|---|
| lotId | string | yes | The lot id shown by GetMyPortfolio, e.g. a1b2c3d4. |
| portfolio | string | yes | The portfolio holding the lot, by name. |
No output schema declared.
No examples provided.
ReportProblem Report an Equibles Tool Problem ~337
Report an Equibles tool call you actually made when it failed, timed out, was unexpectedly empty (ToolFailed), or returned verifiably impossible or contradictory data (ImplausibleResult). Answer the user first, then retry or use a fallback; this report does not fix the current call. Report the call and response, never the person or their question. Omit private or user-provided argument values or replace them with [redacted]. Mention briefly that you flagged it. Do not report surprising-but-plausible data, missing tools, feature requests, or non-Equibles tools.
| Name | Type | Req | Description |
|---|---|---|---|
| arguments | string | – | Optional. The arguments you passed to the failing tool, as JSON or key=value pairs, so the call can be replayed. Omit or redact any user-provided or private text. |
| expected | string | – | Optional. What you expected instead, and how you know — a figure from another Equibles tool, a filing, or the tool's own documented behaviour. This is what makes an implausible-result report reproduc… |
| observation | string | yes | What went wrong, in one or two sentences: the error text, or why the figures are not credible. Describe the call and its response only — never the user or their question. Do not submit placeholder-on… |
| problemKind | string | yes | Either 'ToolFailed' (error, timeout, or unexpectedly empty) or 'ImplausibleResult' (answered, but the data cannot be right). |
| toolName | string | yes | The Equibles tool that misbehaved, e.g. GetCompanyKpis. |
No output schema declared.
No examples provided.
ScreenStocks Stock Screener ~1,707
Screen listed stocks with optional min/max bounds for price, market cap, institutional ownership, 13F holder signals (conviction, crowding, private-fund adviser ownership, active holders' share change, holder tenure and price versus the holders' estimated cost), short data, insider activity, valuation, growth, margins, liquidity and earnings. Exact sector, industry, covered-index membership and going-concern filters are also available. A stock missing a bounded metric is excluded. Results use the requested sort (market cap descending by default), are paged, and include each dataset's vintage. Filtering or sorting on a fundamental metric adds that metric to the result table. US listings by default; pass market to screen European, Chinese, Hong Kong, Japanese or Canadian listings.
| Name | Type | Req | Description |
|---|---|---|---|
| hasGoingConcernDoubt | boolean|null | – | True keeps only companies whose latest filing states unalleviated going-concern doubt; false keeps only companies without the flag. |
| index | string | – | Keep only members of one covered index, by slug or name (sp-500, S&P 500, nasdaq-100, Russell 2000). An unknown name returns the accepted list. |
| industry | string | – | Exact industry name (e.g. Semiconductors). Prefer sector for broad groups. |
| market | string | – | Listing markets as ISO country codes, comma-separated (e.g. GB,FR or CN,HK), or 'all' for every covered market. Default US. A non-US row's ticker is a qualified MIC:TICKER symbol (e.g. XPAR:AIR) that… |
| maxActiveHolderChange | number|null | – | Maximum like-for-like share change of actively managed 13F holders, in percent. |
| maxConvictionShare | number|null | – | Maximum conviction share in percent. |
| maxCrowding | number|null | – | Maximum crowding in percent of shares outstanding. |
| maxDaysToCover | number|null | – | Maximum days to cover. |
| maxDividendYield | number|null | – | Maximum trailing dividend yield in percent. |
| maxDollarVolume | number|null | – | Maximum trailing-3-month average daily dollar volume in dollars. |
| maxEstimatedCostGap | number|null | – | Maximum quarter-end price versus the holders' estimated average cost, in percent. |
| maxFilerCount | integer|null | – | Maximum number of 13F institutional filers holding the stock. |
| maxFilerDelta | integer|null | – | Maximum quarter-over-quarter change in filer count. |
| maxGrossMargin | number|null | – | Maximum gross margin in percent (0-100). |
| maxHolderTenure | number|null | – | Maximum value-weighted holder tenure in quarters. |
| maxInsiderSentiment | number|null | – | Maximum composite insider-sentiment score (0-100, peer-relative). |
| maxInstitutionalOwnership | number|null | – | Maximum institutional ownership in percent. |
| maxMarketCap | number|null | – | Maximum market capitalization in dollars. |
| maxNetIncome | number|null | – | Maximum trailing-twelve-month net income in dollars. |
| maxNetInsiderBuy | number|null | – | Maximum net open-market insider buying by officers and directors in dollars over the trailing 90 days. |
| maxPe | number|null | – | Maximum trailing-twelve-month price-to-earnings ratio (e.g. 15 for value screens). |
| maxPrice | number|null | – | Maximum share price in dollars. |
| maxPrivateFundOwnership | number|null | – | Maximum private-fund adviser ownership in percent of shares outstanding. |
| maxResults | integer | – | Maximum rows to return (default 50; clamped to 1-200). |
| maxRevenueGrowth | number|null | – | Maximum revenue growth in percent, latest quarter vs the same quarter a year earlier. |
| maxShortInterestPercent | number|null | – | Maximum short interest as a percent of shares outstanding (0-100). |
| maxSqueezeScore | number|null | – | Maximum composite short-squeeze score (0-100, peer-relative). |
| minActiveHolderChange | number|null | – | Minimum like-for-like share change of actively managed 13F holders over the quarter, in percent (positive = adding). |
| minConvictionShare | number|null | – | Minimum conviction share: percent of the stock's 13F filers holding it among their ten largest positions. |
| minCrowding | number|null | – | Minimum crowding: shares held by high-turnover 13F filers and private-fund advisers, in percent of shares outstanding. |
| minDaysToCover | number|null | – | Minimum days to cover. |
| minDividendYield | number|null | – | Minimum trailing dividend yield in percent (e.g. 3 = 3%). |
| minDollarVolume | number|null | – | Minimum trailing-3-month average daily dollar volume in dollars (e.g. 5000000 = $5M/day). |
| minEstimatedCostGap | number|null | – | Minimum quarter-end price versus the 13F holders' ESTIMATED average cost, in percent (negative = holders sit on an estimated loss). |
| minFilerCount | integer|null | – | Minimum number of 13F institutional filers holding the stock. |
| minFilerDelta | integer|null | – | Minimum quarter-over-quarter change in filer count. |
| minGrossMargin | number|null | – | Minimum gross margin in percent (0-100). |
| minHolderTenure | number|null | – | Minimum value-weighted holder tenure in quarters (how long 13F filers have held the stock). |
| minInsiderSentiment | number|null | – | Minimum composite insider-sentiment score (0-100, peer-relative; higher = more aggressive insider accumulation). |
| minInstitutionalOwnership | number|null | – | Minimum institutional ownership: 13F shares held over shares outstanding, in percent (overlapping filings can exceed 100). |
| minMarketCap | number|null | – | Minimum market capitalization in dollars. |
| minNetIncome | number|null | – | Minimum trailing-twelve-month net income in dollars (0 keeps profitable companies only). |
| minNetInsiderBuy | number|null | – | Minimum net open-market insider buying by officers and directors in dollars over the trailing 90 days. |
| minPe | number|null | – | Minimum trailing-twelve-month price-to-earnings ratio. |
| minPrice | number|null | – | Minimum share price in dollars. |
| minPrivateFundOwnership | number|null | – | Minimum ownership by 13F filers that advise private funds (Form ADV), in percent of shares outstanding. |
| minRevenueGrowth | number|null | – | Minimum revenue growth in percent, latest quarter vs the same quarter a year earlier. |
| minShortInterestPercent | number|null | – | Minimum short interest as a percent of shares outstanding (0-100). |
| minSqueezeScore | number|null | – | Minimum composite short-squeeze score (0-100, peer-relative; higher = more squeeze-prone). |
| page | integer | – | Result page (default 1) — combine with maxResults to walk past the first page of a large match set. |
| sector | string | – | Exact sector name (e.g. Technology, Healthcare). An unknown name returns the accepted list. |
| sortAscending | boolean | – | Sort ascending instead of descending. |
| sortBy | string | – | Sort key: marketcap, ticker, name, price, filers, filerdelta, sipct, dtc, squeeze, sentiment, insiderbuy, pe, divyield, revgrowth, grossmargin, dollarvol, netincome, instown, conv, crowd, pfown, actl… |
| tickers | array | – | Optional list of up to 200 tickers to restrict the screen to, for scoring stocks the user already holds or follows instead of searching the whole market. Every other bound still applies and sortBy st… |
No output schema declared.
No examples provided.
SearchCftcMarkets Search CFTC Futures Contracts ~204
Search the tracked CFTC futures contracts by name, market code, common contract name, or standard futures symbol, 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 | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of results to return (default: 50, max: 500) |
| query | string | – | Search query — market code, name words, common name, or standard symbol (e.g., 'gold futures', 'WTI', 'ES', 'S&P 500', '088691'). Search requires every punctuation-independent word first and broadens… |
No output schema declared.
No examples provided.
SearchCongressMembers Search Congress Members ~162
Search the tracked congressional roster by name. Search first requires every punctuation-independent query word anywhere in the filed name, then broadens to any word only when no strict row matches. Verified public-name aliases such as Dan Crenshaw resolve to the roster name. Returns each match with its position, seat and current party (from the latest term); pass the returned exact Name to GetMemberTrades or GetMemberNetWorth.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of results to return (default: 20, max: 500) |
| position | string | – | Filter by position: Senator or Representative (defaults to both) |
| query | string | yes | Search query — partial or full name (e.g., 'Pelosi', 'Cruz', 'Dan') |
No output schema declared.
No examples provided.
SearchDocument Search Within One Filing ~251
Search one SEC filing or earnings-call transcript by document ID. semantic mode uses hybrid relevance and returns excerpts in document order with approximate line numbers. exact mode performs a literal case-insensitive substring match and returns precise matching lines. Get document IDs from SearchDocuments or ListFilings; use ReadDocumentLines for surrounding text.
| Name | Type | Req | Description |
|---|---|---|---|
| documentId | string | yes | Document ID obtained from ListFilings or a SearchDocuments result header |
| maxExcerptChars | integer | – | 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. |
| maxResults | integer | – | Maximum number of results to return (default: 5) |
| query | string | 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. In searchMode 'exact', matched a… |
| searchMode | string | – | How to match: 'semantic' (default — hybrid keyword and semantic relevance) or 'exact' (literal case-insensitive substring match with precise line numbers). |
No output schema declared.
No examples provided.
SearchDocuments Search SEC Filings ~541
Search SEC filings and earnings-call transcripts with hybrid keyword and semantic retrieval, or with match 'phrase' for only the excerpts containing an exact phrase. Omit ticker to search every company, or provide one ticker to search only that company. Returns excerpts with document IDs for SearchDocument or ReadDocumentLines. Use excludeTickers and maxResultsPerCompany only for market-wide discovery; use ListFilings to browse filings newest first without a text query.
| Name | Type | Req | Description |
|---|---|---|---|
| documentTypes | array | – | Optional document types. Accepts registered values such as TenK, TenQ, EightK, TwentyF, SixK, FortyF, Def14A, SOne, or deployment-registered types such as EarningsCallTranscript. SEC form names such… |
| endDate | string|null | – | Optional end date filter in YYYY-MM-DD format |
| excludeTickers | array | – | Optional tickers to exclude from a market-wide search (max 25). Cannot be combined with ticker. |
| match | string | – | How the query matches: 'ranked' (default — relevance-ranked keyword and semantic retrieval that broadens to any of the words when results are sparse) or 'phrase' (only excerpts containing the query's… |
| maxExcerptChars | integer | – | 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. |
| maxResults | integer | – | Maximum number of results to return (default: 5, max: 500) |
| maxResultsPerCompany | integer | – | 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. |
| query | string | yes | Search query — plain keywords or a short natural-language phrase. In ranked mode, when too few excerpts match every word, the search automatically broadens to match any of the words; concise, filing-… |
| startDate | string|null | – | Optional start date filter in YYYY-MM-DD format |
| ticker | string | – | Optional company ticker; a listing outside the US is MIC:TICKER (e.g. XPAR:AIR). Omit to search across all companies. |
No output schema declared.
No examples provided.
SearchEconomicIndicators Search Economic Indicators ~215
Search the curated set of US macro series from FRED and Canadian series from FRED, the Bank of Canada and Statistics Canada that Equibles tracks (rates, inflation, employment, GDP, housing, market indicators) — not the full FRED catalog. Search first requires every punctuation-independent query word anywhere across the series ID, title, or category, then broadens to any word only when that strict search has no rows. Standard names such as fed funds rate, jobless claims, payrolls, yield curve, and core CPI are recognized. An empty query lists every tracked series. Results include seasonal adjustment, the latest observation date, and the UTC time Equibles last synced the series.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of results to return (default: 20, max: 500) |
| query | string | yes | Search query — series ID, title keyword, or category name (e.g., 'inflation', 'unemployment', 'GDP', 'FEDFUNDS'). Empty lists all tracked series. |
No output schema declared.
No examples provided.
SearchEtfs Search ETFs ~225
Search active exchange-traded funds and products by ticker, fund name, sponsor, or ISIN, US and other exchanges. US ETF identity comes from the authoritative security-type reference directory, with assets and holdings from the linked SEC Form NPORT-P fund series when available; a fund listed on another exchange is named MIC:TICKER (for example XETR:SXR8) with its currency and ISIN. US matches come first. Use GetEtfProfile for analysis, GetStockPrices for a fund's price history, or GetEtfHoldings for the portfolio.
| Name | Type | Req | Description |
|---|---|---|---|
| exchange | string | – | Market identifier code of one exchange outside the US to search alone (for example XETR); omit to search the US first, then other exchanges. |
| maxResults | integer | – | Maximum results to return (default 20, max 500). |
| query | string | yes | Ticker, fund name, sponsor, or ISIN (for example SPY, S&P 500, iShares, SXR8, or IE00B5BMR087). |
No output schema declared.
No examples provided.
SearchFunds Search Funds and ETFs ~178
Search the tracked SEC Form NPORT-P fund directory by fund name, ticker, SEC series ID, or registrant. Returns one canonical profile per series with ticker, registration type, latest report date, assets, and reported-versus-stored holding counts. Exact stored tickers outrank verified share-class aliases. Use the profile ID with GetFundProfile. The directory covers NPORT-P filers; a miss is a dataset-coverage result, not proof that a fund does not exist.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of funds to return, largest by net assets first (default: 20, max: 500) |
| query | string | yes | Fund name, ticker, registrant, or verified share-class alias (e.g., 'Russell 2000', 'iShares', 'IWM', 'VOO'). |
No output schema declared.
No examples provided.
SearchInsiders Search Corporate Insiders ~240
Search the tracked SEC corporate-insider set (directors, officers, 10% owners) by name. Search first requires every punctuation-independent whole query word in the filed legal name, then broadens to any whole word only when no strict row matches; a token inside a different word is not a match. Verified public-name aliases such as Jensen Huang resolve to the SEC owner identity. Returns CIK, role, latest filing company, and location, ordered by recent filing activity.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of results (default: 10, max: 500; values outside 1-500 are clamped) |
| offset | integer | – | Number of matches to skip before returning rows (default: 0, clamped to 0-100000). For the next page, add the returned row count to the clamped current offset; if the next offset exceeds 100000, narr… |
| query | string | yes | Search query for insider name |
No output schema declared.
No examples provided.
SearchInstitutions Search Institutional Investors ~337
Search the tracked 13F filer set by institution name or SEC CIK. Search first requires every punctuation-independent query word anywhere in the filed name, then broadens to any word only when no strict row matches. Verified brand aliases such as Fidelity, Vanguard, and BlackRock include their current flagship CIK. Results are largest within the recently-active filing bucket first and include latest report date, tracked 13F position value, and position count so same-name filers can be compared before calling an institution tool. Values use report-date closing prices, may fall back to filer values, and can be zero when unvalued. Scoped institution tools remain strict and never discard an unmatched word. Each result shows its entity type from regulatory records, and holderTypes filters by it.
| Name | Type | Req | Description |
|---|---|---|---|
| holderTypes | array | – | Holder types to keep, as an array of tokens: adv (registered investment adviser), era (exempt reporting adviser), ia (other adviser), bank, ins (insurer), bd (broker-dealer), fund (registered fund),… |
| maxResults | integer | – | Maximum number of results to return (default: 10, clamped to 1-500) |
| query | string | yes | Search query — institution name, partial name, or CIK |
No output schema declared.
No examples provided.
SearchInvestmentAdvisers Search Investment Advisers ~139
Search the tracked SEC Form ADV adviser set by firm name. Search first requires every punctuation-independent query word anywhere in the legal or business name, then broadens to any word only when no strict row matches. Returns CRD, main office, regulatory assets under management, employee count and as-of date, largest by assets first. Use the CRD with GetInvestmentAdviser.
| Name | Type | Req | Description |
|---|---|---|---|
| maxResults | integer | – | Maximum number of advisers to return (default: 20, clamped to 1-500) |
| query | string | yes | Part of the firm's legal or business name (e.g., "Vanguard", "Renaissance") |
No output schema declared.
No examples provided.
SearchListings Listing Search ~292
Find exchange listings by company name or ticker (query), by ISIN (isin), or list every listing of one exchange or country, across the US and other exchanges. Each row gives the symbol other tools accept (a bare ticker for a US listing, MIC:TICKER such as XETR:SIE for another exchange), the company, country, trading currency, ISIN, security type and whether it is the company's main listing. An ISIN returns every listing of that security, each in its own currency; a US or Canadian ISIN also matches a US listing by its CUSIP. Use ListExchanges for the exchange and country codes.
| Name | Type | Req | Description |
|---|---|---|---|
| exchange | string | – | Exchange code to keep or list (e.g. XETR, XAMS, XLIS); see ListExchanges. |
| isin | string | – | ISIN to look up (e.g. IE00B5BMR087); not combined with query. |
| market | string | – | Country code whose listings to list (e.g. US, DE, PT); used on its own. |
| maxResults | integer | – | Maximum rows to return (default 20, max 500). |
| offset | integer | – | Rows to skip before returning results (default 0). |
| query | string | – | Company name or ticker to search for (e.g. siemens, ASML, XETR:SIE). |
No output schema declared.
No examples provided.
SuggestToolImprovement Suggest an Equibles Tool Improvement ~287
Suggest the smallest actionable contract improvement to an existing Equibles tool you actually called when it worked as documented but lacked a useful operation, filter, parameter or output option. Answer the user first; this records a future improvement and does not change the current call. Describe the call, never the person or their question. Omit private or user-provided argument values or replace them with [redacted]. Mention briefly that you suggested it. Use ReportProblem for wrong data; do not request new tools, duplicate existing options, or report non-Equibles ideas.
| Name | Type | Req | Description |
|---|---|---|---|
| arguments | string | – | Optional. The arguments you passed to the existing tool, as JSON or key=value pairs, so the limitation can be reproduced. Omit or redact any user-provided or private text. |
| limitation | string | yes | The concrete limitation encountered in that call. State what the current operation, filter, parameter, or output contract could not do. Describe the call only — never the user or their question. Do n… |
| suggestedChange | string | yes | The smallest actionable change you recommend, including the proposed operation, filter, parameter, or output behaviour and why it would resolve the limitation. Do not submit placeholder-only text suc… |
| toolName | string | yes | The existing Equibles tool you actually called, e.g. GetCompanyKpis. |
No output schema declared.
No examples provided.
UnwatchInstrument Unwatch Instrument ~217
Remove a stock or an option contract from one of the USER's portfolio watchlists. This only removes the watch entry: it never touches a holding, so a stock the portfolio also owns stays exactly as recorded. Confirm with the user before removing. Address the instrument the way it appears in GetMyPortfolio's Watching section: the symbol shown for a stock (MIC:TICKER for another exchange, e.g. XPAR:AIR), or the OCC symbol in optionContract for an option.
| Name | Type | Req | Description |
|---|---|---|---|
| optionContract | string | – | Optional. The watched option's OCC symbol, e.g. O:AAPL260724C00110000. A U.S. and a Canadian contract can share one, so also pass ticker (the underlying as shown) when both are watched. |
| portfolio | string | yes | The portfolio whose watchlist to remove from, by name. |
| ticker | string | – | The watched stock's symbol as shown, e.g. AAPL or XPAR:AIR. Omit when removing an option by its OCC symbol. |
No output schema declared.
No examples provided.
UpdatePortfolioLot Update Portfolio Lot ~301
Correct a lot the USER already recorded: a mistyped quantity, price, trade date, note or exchange rate. Only the fields you pass change; the rest are left alone. The instrument itself cannot be edited: a lot on the wrong stock or the wrong contract is a different holding, so remove it with RemovePortfolioLot and add the right one. To record a sale, use ClosePortfolioLot rather than editing the quantity down, because editing it away loses the realized profit.
| Name | Type | Req | Description |
|---|---|---|---|
| acquiredDate | string | – | Optional. The corrected trade date, as yyyy-MM-dd. |
| clearFxRate | boolean | – | Optional. True removes the broker's exchange rate, so the lot converts at the official rate on its trade date. Cannot be combined with fxRate. |
| costPerUnit | number|null | – | Optional. The corrected price per share, always positive. |
| fxRate | number|null | – | Optional. The broker's exchange rate on the trade, as units of the portfolio's currency per 1 unit of the lot's currency. |
| lotId | string | yes | The lot id shown by GetMyPortfolio, e.g. a1b2c3d4. |
| note | string | – | Optional. A replacement note, up to 256 characters. |
| portfolio | string | yes | The portfolio holding the lot, by name. |
| quantity | number|null | – | Optional. The corrected signed size. Negative is a short or written option. |
No output schema declared.
No examples provided.
WatchInstrument Watch Instrument ~270
Put a stock or an option contract on one of the USER's portfolio watchlists, without recording any position. A watched instrument shows up in GetMyPortfolio's 'Watching (not held)' section with a current mark and nothing else - no quantity, no cost, no value. For a stock, pass its ticker, or MIC:TICKER for another exchange (e.g. XPAR:AIR). For an option, pass BOTH the underlying ticker and the OCC symbol in optionContract, exactly as AddPortfolioLot takes them; the contract is verified against the live options data before anything is stored. Watching something the portfolio already holds is allowed - the page shows one row, and selling out later keeps the instrument on the list.
| Name | Type | Req | Description |
|---|---|---|---|
| optionContract | string | – | Optional. The OCC option symbol, e.g. O:AAPL260724C00110000. Provide it to watch an option contract; omit it for the stock itself. |
| portfolio | string | yes | The portfolio whose watchlist to add to, by name. |
| ticker | string | yes | Stock ticker, or MIC:TICKER for a listing on another exchange, e.g. XPAR:AIR. For an option, the UNDERLYING's ticker, e.g. AAPL, or XTSE:RY for a Canadian contract. |
No output schema declared.
No examples provided.
How do I install the Equibles MCP server?
Equibles is a hosted endpoint at https://mcp.equibles.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.equibles.com
claude mcp add --transport http daniel3303-equibles 'https://mcp.equibles.com/mcp'
What is the Equibles MCP server?
Equibles is an MCP server listed in the public MCP registry as io.github.daniel3303/equibles. SEC filings, company financials, holdings, earnings calls, stock prices, options and macro data. This page covers its hosted endpoint (https://mcp.equibles.com/mcp).
Is the Equibles MCP server safe to use?
Equibles scores 91 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Equibles MCP server expose?
Equibles exposes 150 tools: GetLatestClosingPrices, GetCftcPositioning, AddPortfolioLot, GetMarketStatus, GetMarketWideCongressionalActivity, and 145 more. Their descriptions and schemas cost roughly 39,215 tokens of context every time the server is loaded.
Does the Equibles MCP server require authentication?
Yes. Equibles asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the Equibles MCP server still maintained?
Equibles is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What did VerifyMCP test on the Equibles MCP server?
VerifyMCP ran 13 checks on Equibles, covering TLS certificate, Authorization, HTTPS, HSTS header and 9 more. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.