ZBS Index What actually exists in applied AI, with the source next to it

mcp server

TipRanks

Live TipRanks market data: analyst ratings, Smart Score, technicals, options, portfolios.

Description as published by the maintainer. Source

  • version 1.2.0
  • active

active — Registry entry last updated 2026-07-21.

What this server can do

71 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.

get_ai_stock_analysis(detail, tickers, provider)
TipRanks AI Stock Analysis — the 0-100 AI score for one or more stocks. Six frontier models (OpenAI, Anthropic, Gemini, xAI, DeepSeek, Perplexity) research each covered stock independently. Every model returns its own 0-100 score, rating (outperform / neutral / underperform), price target, and a weighted factor breakdown across financial performance, technical analysis, valuation, earnings call and corporate events. Use for: "what's the AI score for NVDA", "AI rating on my watchlist", "compare the AI scores of AAPL, MSFT and NVDA", "why do the models disagree on Tesla". Pass every symbol in one call — a multi-ticker call returns one compact row per ticker, which is what a watchlist or ranking question needs. A single ticker also returns every model's score with its factor breakdown plus the bull and bear key points. This is NOT the Smart Score (1-10, eight quantitative factors). It is a separate system, and the two routinely disagree by design. `ai_score` is the headline score and matches the AI Stock Analysis page; `consensus` holds the cross-model average, the high and low scoring models, and the split of rating labels. `upside_pct` is the model's price target against the current price. `as_of` is when the report was generated — reports regenerate on new earnings or a significant price move, so an older date means nothing material has changed since. Coverage is a subset of the stock universe and excludes ETFs. Symbols with no report at all come back under `not_covered`; symbols that are covered but lack a report from the requested `provider` come back separately under `no_report_from_provider`, each listing the models that did score them — so a missing provider is never reported as "this stock has no AI analysis". Args: tickers: Comma-separated tickers (e.g. 'AAPL' or 'AAPL,MSFT'), max 25. provider: Optional single provider to report on. Omit for the headline score that matches the website. detail: 'consensus' (default) or 'full' to add each model's written reasoning. Ignored on multi-ticker calls. Returns JSON: {stocks: [{ticker, company, ai_score, rating, headline_model, price, price_target, upside_pct, as_of, reflects, consensus: {models, avg_score, score_high, score_low, ratings_split, avg_price_target, avg_upside_pct, reports_dated}, providers: [...], key_points: [...]}], not_covered: [...], no_report_from_provider: [{ticker, covered_by}]}. `consensus.reports_dated` appears only when the models did not all run on the same date; `as_of` is always the headline report's own date. Required: tickers.
get_all_commodities_quotes
Returns real-time quotes for all commodities in a single request. Each row carries the commodity's display name and a changePercentage derived from price and change, alongside the raw price, change and volume. Use the name given in the response — several symbols are non-mnemonic (HEUSX is Lean Hogs, SBUSX is Sugar, ZSUSX is Soybeans).
get_all_crypto_quotes
Returns real-time quotes for all cryptocurrencies in a single request.
get_all_forex_quotes
Returns real-time quotes for all forex pairs in a single request.
get_analysts_by_firm(firm, sector)
List analysts at a given firm (case-insensitive substring match). Each row: {name, firm, rank, avg_return_1y_pct, covered_tickers_sample, total_covered}. Results are deduped by analyst name (keeping the best rank) and sorted by rank ascending. When `sector` is provided, the per-analyst coverage list is filtered to tickers in that sector and the row shape becomes {name, firm, rank, avg_return_1y_pct, sector, covered_tickers}. Args: firm: Firm name or fragment (e.g. 'Goldman' matches 'Goldman Sachs'). sector: Optional lowercase sector (e.g. 'technology', 'healthcare'). Required: firm.
get_article(identifier)
Fetch the full text of a single TipRanks article. Resolve a TipRanks article URL (e.g. from get_latest_news / get_assets_news), a slug, or a numeric post id to its title, excerpt, full body text (HTML-stripped, capped at 8000 chars), author, category, date, canonical URL, and any tagged tickers. Args: identifier: Numeric post id, slug, or a tipranks.com article URL. Returns a JSON object, or {"error": ...} when no matching TipRanks article exists (e.g. the URL points to an aggregated third-party site, which is not stored in TipRanks). Required: identifier.
get_assets_data(tickers)
Returns key TipRanks stock data for one or more tickers. Args: tickers: Ticker symbols — a comma-separated string ("AAPL,MSFT,C") or a JSON array (["AAPL","MSFT","C"]). Both are accepted. Returns JSON {"assetsData": [...one compact entry per ticker...]}. This is a headline summary tuned to stay small enough for a whole portfolio to fit in a single response. Fields per entry: - ticker, companyName, sector, stockType, marketCap - url: canonical TipRanks page for the stock — use as the citation source. - price: latest close. - smartScore: TipRanks composite 1-10 (combines the 8 datasets — analyst, blogger, news, hedge-fund, insider, etc.). - analystConsensus / bestAnalystConsensus: rating label from ALL covering analysts vs. the top-performing ones ("Strong Buy".."Strong Sell"); a divergence between the two is itself a signal. - priceTarget: average 12-month target. priceTargetUpside: decimal vs. current price (0.05 = +5%). - peRatio, dividendYield (decimal). - newsSentiment, hedgeFundsScore, insiderScore: 0-1 sentiment signals. - ytdGainPct, yearlyGainPct: price performance as a percent (12.5 = +12.5%, 3944 = +3944%). - nextEarningsDate, and daysUntilEarnings (whole days from today — quote this rather than computing the gap from the date yourself). Floats are rounded and dates are day-resolution. For deeper per-ticker detail (full price history, 13F / insider breakdowns, blogger counts, financials) use the dedicated tools (get_stock_prices, get_hedge_fund_holdings, get_insider_transactions, get_financials, ...). Required: tickers.
get_assets_events(tickers, to_date, from_date)
Returns upcoming dividend and earnings events for tickers. Args: tickers: Comma-separated ticker symbols (e.g. "AAPL,MSFT") from_date: Optional start date (ISO format, e.g. "2026-03-01") to_date: Optional end date (ISO format, e.g. "2026-06-01") Returns: dividend dates, earnings dates, and coupon dates per ticker. Required: tickers.
get_assets_news(count, tickers, from_date)
Returns recent news articles for tickers, aggregated from many news sites, each with a sentiment tag and source URL (headlines only — no article body). For general/market TipRanks news without a specific ticker, or for an article excerpt, use get_latest_news. This tool serves the CURRENT news window only: it returns each ticker's most recent articles, and from_date just trims that recent set. For news from a specific past date range, use get_latest_news with from_date + to_date, which searches the full archive. Args: tickers: Comma-separated ticker symbols count: Number of articles to return (default 10) from_date: Optional 'YYYY-MM-DD' recency floor (filtered on `date`). Returns JSON: {"assetNewsArticles": [...]}. Each entry: - ticker, companyName - sentiment: bucketed signal — one of "VeryPositive", "Positive", "Neutral", "Negative", "VeryNegative". Derived from TipRanks news-sentiment classifier on the article text. - siteName, url, title - date, addedOn, publishTime, articleTimestamp: redundant date fields. addedOn is when TipRanks ingested it; publishTime is the source's stated publication time. Prefer publishTime. Required: tickers.
get_assets_warnings(tickers)
Returns risk warnings for tickers. Args: tickers: Comma-separated ticker symbols Returns: warning type, date, and detail fields per ticker. Required: tickers.
get_best_performing_experts(num, expert_type)
Returns the best-performing experts ranked by TipRanks success rate and average return. Args: expert_type: One of: analyst, insider, hedgeFund, blogger, firm (default: analyst) num: Number of results (default: 10, max: 25)
get_blogger_sentiment(limit, ticker)
Returns the financial-blogger consensus for a stock plus the underlying blogger articles. Distinct from get_recent_analyst_ratings (Wall Street analysts) and get_investor_sentiment (TipRanks crowd positioning). Args: ticker: Stock ticker (e.g. 'AAPL') limit: Max blogger articles to return (default 20, max 50) Returns JSON: {ticker, company, consensus, articles}. - consensus: {bullish_pct, bearish_pct, neutral_pct, bullish_count, bearish_count, neutral_count, score, avg}. - articles: [{blogger, title, url, site, date}] (newest first). Required: ticker.
get_bulls_bears_summary(tickers)
Returns the discrete bull and bear key points for stocks — the individual sentence bullets TipRanks shows on its stock pages, each tagged with a topic. Args: tickers: Comma-separated tickers (e.g. 'AAPL,TSLA') Returns JSON: {"data": [...one entry per ticker...]}. Each entry has: - ticker, updatedOn - bullish: list of bullish point sentences - bearish: list of bearish point sentences - key_points: list of {sentiment, topic, point} for the full set. Required: tickers.
get_buybacks(page, limit, ticker)
Returns share-buyback / stock-repurchase activity in one of two modes: - CROSS-MARKET (no ticker): latest reported buybacks across all companies, sorted by dollar amount spent (largest first). Use for 'biggest buybacks', 'top repurchase companies'. A single company may appear multiple times for different fiscal quarters. - PER-TICKER (ticker provided): historical quarterly buyback series for one ticker. Use for 'AAPL buyback history', 'MSFT repurchase trend'. Args: ticker: Optional. If provided, returns the per-ticker historical series. If empty, returns the cross-market list. limit: Cross-market mode only — max rows (default: 25, max: 100). page: Cross-market mode only — page number, 1-based (default: 1). Returns: Cross-market mode: { totalCount, data: [{ ticker, companyName, fiscalPeriodEndDate, stockEarningsDate, eps, marketCapUSD, totalValueSpentToRepurchaseShares, epsCurrencyTypeCode }] }. Per-ticker mode: quarterly time series, chart-ready as a bar or line plot of buyback spend over time — [{ date, marketCapEndFiscalPeriod, totalValueSpentToRepurchaseShares, ratio (decimal — buyback / market cap) }, ...].
get_clinical_trials
Returns the FDA / clinical-trial calendar — upcoming drug approval target dates and the tickers behind each drug. Window is fixed at today − 14 days to today + 60 days, sorted by date ascending. Use for upcoming FDA decisions, PDUFA dates, biotech catalysts. Returns: { data: [{ targetDate, clinicalTrials: [{ drugName, ticker }] }], count, window }.
get_commodity_historical(symbol, to_date, from_date)
Daily OHLCV time series for a commodity. Chart-ready: each row is {date, open, high, low, close, volume}, ordered for direct plotting as a price history. Args: symbol: Commodity symbol (e.g. 'GCUSD' for gold) from_date: Start date YYYY-MM-DD (optional) to_date: End date YYYY-MM-DD (optional) Required: symbol.
get_commodity_quote(symbol)
Returns the real-time price quote for a specific commodity. Common symbols: GCUSD (gold), SIUSD (silver), CLUSD (crude oil), NGUSD (natural gas), HGUSD (copper), PLUSD (platinum). Args: symbol: Commodity symbol (e.g. 'GCUSD' for gold) Required: symbol.
get_company_kpis(count, group, ticker)
Returns company-specific operational KPIs: segment revenue, geographic breakdown, active users/devices, gross margins by type, opex breakdown. Full history runs back to 2014 and is large, so this returns the most recent `count` periods per metric by default — pass count=0 for the full history, or `group` to fetch a single group. Args: ticker: Stock ticker (e.g. 'AAPL', 'MSFT') count: Most-recent periods per metric (default 8, max 40; 0 = full history) group: Optional single group by slug or title Returns JSON: {"ticker", "lastUpdated", "groups": [...]}. Each group has slug, title, and metrics: [{title, slug, unit, series: [{periodEnd, value}]}]. Required: ticker.
get_crypto_historical(symbol, to_date, from_date)
Daily OHLCV time series for a cryptocurrency. Chart-ready: each row is {date, open, high, low, close, volume}, ordered for direct plotting as a price history. Args: symbol: Cryptocurrency symbol (e.g. 'BTCUSD' for Bitcoin) from_date: Start date YYYY-MM-DD (optional) to_date: End date YYYY-MM-DD (optional) Required: symbol.
get_crypto_news(page)
Latest cryptocurrency news — a market-wide feed across all coins (not filtered to a single asset), ordered newest-first: article headlines, snippets, and source URLs. Read-only, no side effects. Use for broad crypto/market headlines. For news about a specific holding use get_assets_news; for the general (non-crypto) editorial feed use get_latest_news.
get_crypto_quote(symbol)
Returns the real-time price quote for a specific cryptocurrency. Common symbols: BTCUSD (Bitcoin), ETHUSD (Ethereum), SOLUSD (Solana), BNBUSD (BNB), XRPUSD (XRP), ADAUSD (Cardano), DOGEUSD (Dogecoin). Args: symbol: Cryptocurrency symbol (e.g. 'BTCUSD' for Bitcoin) Required: symbol.
get_dividend_history(count, ticker)
Dividend payment history for a ticker. Chart-ready: includes the current snapshot (yield %, payout ratio, frequency, annualised payout) plus two time series — a per-payment list [{ex_date, pay_date, amount, yield_pct, is_special, ...}] (newest first, capped at `count`) and an annual_totals list [{year, amount, yield_pct}] suitable for a yearly bar chart. All yields are emitted as percentages (4.5 = 4.5%), so plots don't need to know which underlying field used decimal vs. percentage encoding. Use for: "AAPL dividend history", "yield trend over 5 years", "dividend growth chart", "is the payout sustainable". Args: ticker: Stock ticker (e.g. 'AAPL', 'JNJ'). count: Number of most-recent individual payments to return (default 16, max 100). The annual_totals series is always returned in full. Required: ticker.
get_earnings_calendar(toDate, exchange, fromDate)
Returns upcoming earnings dates across all stocks for a date range. Args: fromDate: Start date YYYY-MM-DD (default: today) toDate: End date YYYY-MM-DD (default: 14 days from now) exchange: Optional exchange filter, e.g. 'US' for US-only results
get_earnings_call_summary(ticker)
Returns the most recent earnings call summary for a ticker — management guidance text, overall call sentiment (positive / neutral / negative with a one-line rationale), and AI-extracted highlights and lowlights from the call as {title, content} bullets. This is a structured summary derived from the call, not the raw transcript text. Useful for "what did management say about X on the last call", "was the most recent call bullish or bearish", or "summarise the highlights from MSFT's latest earnings". Only the most recent quarter is stored per ticker; for historical EPS actual-vs-estimate series use get_earnings_history. Args: ticker: Stock ticker (e.g. 'AAPL', 'NVDA'). Returns: { ticker, fiscal_year, fiscal_quarter, guidance, sentiment: { label, summary }, highlights: [ { title, content }, ... ], lowlights: [ { title, content }, ... ] } Required: ticker.
get_earnings_history(ticker, quarters)
Quarterly earnings time series for a ticker. Chart-ready: each quarter row is {period, report_date, actual_eps, estimate_eps, eps_surprise_pct, prior_year_eps, eps_yoy_change_pct, actual_revenue, estimate_revenue, revenue_surprise_pct, net_income, ...}, ordered oldest-first so a bar chart of actual vs. estimate EPS, or a YoY trend line, plots directly. Also returns next_quarter — the upcoming scheduled report with the consensus estimate, low/high estimate band, and expected report date — for forward-looking charts. Use for: "AAPL earnings history", "earnings surprise trend", "did NVDA beat last quarter", "EPS beat/miss the past 4 quarters". Args: ticker: Stock ticker (e.g. 'AAPL', 'NVDA'). quarters: Number of most-recent reported quarters to return (default 8, max 40). Required: ticker.
get_economic_calendar(limit, impact, toDate, daysBack, fromDate, countries, daysForward)
Returns upcoming and recent economic events (Fed meetings, jobs reports, CPI, GDP). Defaults to US events at High/Medium impact only because the raw feed includes hundreds of low-impact items from every country. Args: daysBack: Days to look back (default 0) daysForward: Days to look forward (default 7) fromDate: Start date ISO format (alternative to daysBack) toDate: End date ISO format (alternative to daysForward) countries: Comma-separated country names to keep (default 'US'). Pass an empty string to disable the country filter. Common values: 'US','UK','Germany','Japan','China','Canada','France'. impact: Comma-separated impact levels to keep (default 'High,Medium'). Valid values: 'High','Medium','Low'. Pass empty to keep all levels. limit: Max events returned after filtering (default 50, max 200). Returns: { totalMatched, returned, filters, economicCalendar: [...] }.
get_etf_analysis(tickers)
Returns analyst consensus for ETFs based on weighted average of holdings' ratings. Args: tickers: Comma-separated ETF tickers (e.g. 'QQQ,SPY,VTI') Required: tickers.
get_etf_exposures(page, ticker, page_size)
Returns the list of ETFs that hold a specific stock, sorted by holding market value (largest first). Args: ticker: Stock ticker (e.g. 'MSFT', 'AAPL') page: Page number (default 1) page_size: Results per page (default 20, max 100) Returns per ETF: etfTicker, etfCompanyName, etfCategory, aum, expenseRatio, holdingWeight (% of ETF in this stock), holdingMarketValue ($), holdingNumOfShares, weightInAsset (% of stock's outstanding shares held by this ETF), etfAnalystConsensusScore, etfSmartScore. Also returns totalCount (total ETFs holding the stock). Required: ticker.
get_etf_forecast(ticker)
Returns the analyst forecast for a specific ETF: consensus, price target, upside. Args: ticker: ETF ticker (e.g. 'QQQ') Required: ticker.
get_etf_holdings(limit, ticker, sort_by)
List the constituents of an ETF. Base mode (default): returns every holding with its weight % in the index — {ticker, name, weight_pct}. Top-performers mode: pass `sort_by` (one of '5d', 'month', 'ytd', 'year') and a `limit` > 0 to get the top N constituents by that period's return. Each row carries weight_pct, current_price, return_pct for the chosen period, and analyst_consensus. Use the top-performers mode for questions like 'which stocks in XLK rose most this week' without separately calling a screener. Args: ticker: ETF ticker (e.g. 'SPY', 'QQQ'). sort_by: '' for full list, or one of '5d', 'month', 'ytd', 'year'. limit: 0 to return all constituents; >0 (max 50) to return top N. Required: ticker.
get_etf_screener(focus, category, assetClass)
Filters ETFs by asset class, category, and focus. Args: assetClass: Alternatives, AssetAllocation, Commodities, Currency, Equity, FixedIncome category: BroadMarket, Sector, HighDividendYield, SizeAndStyle, Corporate, etc. focus: LargeCap, SmallCap, MidCap, TotalMarket, Financials, HealthCare, InformationTechnology, Energy, RealEstate, HighDividendYield, HighYield, etc.
get_etf_top_stocks(ticker)
Returns the top stock holdings within an ETF along with their analyst ratings. Args: ticker: ETF ticker (e.g. 'QQQ') Required: ticker.
get_financials(count, period, ticker)
Financial statements time series for a ticker, chart-ready. Each period is a flat ~25-field object spanning the income statement (revenue, gross / operating / EBITDA / net margins, EPS, R&D), the balance sheet (total assets, total debt, total equity, net debt, cash + short-term investments), the cash flow statement (operating cash flow, free cash flow, capex, dividends paid, buybacks), and two computed ratios (current ratio, debt-to-equity). Margins are emitted as percentages — gross_margin_pct of 49.27 means 49.27%. Cash outflows (dividends_paid, buybacks) are returned as negative numbers, matching the source convention. Use for: "AAPL revenue and FCF over the last 10 years", "show margins trend", "is net debt rising", "EPS growth", "R&D as % of revenue". Args: ticker: Stock ticker (e.g. 'AAPL', 'NVDA'). period: 'annual' (default), 'quarterly', or 'ttm' (trailing twelve months). Annual periods extend ~9 years back; quarterly extends ~37 quarters back. count: Number of most-recent periods to return (default 5, max 40), ordered oldest-first inside the returned `periods` array. Required: ticker.
get_forex_historical(symbol, to_date, from_date)
Daily OHLCV time series for a forex pair. Chart-ready: each row is {date, open, high, low, close, volume}, ordered for direct plotting as an exchange-rate history. Args: symbol: Forex pair symbol (e.g. 'EURUSD') from_date: Start date YYYY-MM-DD (optional) to_date: End date YYYY-MM-DD (optional) Required: symbol.
get_forex_quote(symbol)
Returns the real-time exchange rate quote for a forex pair. Common pairs: EURUSD, GBPUSD, USDJPY, USDCHF, AUDUSD, USDCAD. Args: symbol: Forex pair symbol (e.g. 'EURUSD') Required: symbol.
get_hedge_fund_activity(limit, ticker)
Returns per-fund hedge-fund holdings and recent transactions for a ticker — which institutions hold it, how much each changed (bought/sold), the holding value, % of portfolio, and the fund's TipRanks rank/stars. Complements get_hedge_fund_holdings (the aggregate share-count timeseries). Args: ticker: Stock ticker (e.g. 'AAPL') limit: Max funds to return (default 25, max 100) Returns JSON: {ticker, company, sentiment, trend_action, trend_value, funds}. - funds: [{manager, institution, shares_change, direction, holding_value, pct_of_portfolio, as_of, rank, stars, is_active}]. Required: ticker.
get_hedge_fund_holdings(limit, ticker)
Hedge-fund share-count history for a ticker. Returns the most recent `limit` snapshots (max 60) plus a summary block (snapshot_count, first/last date and shares). Each row: {date, shares}. Sourced from quarterly 13F filings; lags by up to 45 days. For a snapshot of current sentiment without the timeseries, use get_assets_data and read hedgeFundSentimentData. Args: ticker: Stock ticker (e.g. 'AAPL'). limit: Max snapshots to return (default 60, max 60). Required: ticker.
get_index_historical(symbol, to_date, from_date)
Daily OHLCV time series for a major market index. Chart-ready: each row is {date, open, high, low, close, volume}, ordered for direct plotting as an index history. Args: symbol: Index symbol (e.g. '^GSPC' for S&P 500) from_date: Start date YYYY-MM-DD to_date: End date YYYY-MM-DD (defaults to today) Required: symbol, from_date.
get_index_quote(symbol)
Returns the real-time quote for a major market index. Index symbols: ^GSPC (S&P 500), ^IXIC (Nasdaq), ^DJI (Dow Jones), ^GSPTSE (TSX), ^FTSE (FTSE 100), ^N225 (Nikkei), ^AORD (All Ords), ^HSI (Hang Seng), ^STI (STI), ^BSESN (Sensex), ^VIX (VIX). Args: symbol: Index symbol (e.g. '^GSPC' for S&P 500) Required: symbol.
get_insider_transactions(limit, ticker)
Individual corporate-insider (officers/directors, Form 4) transactions for a ticker, newest first. Each row: insider_name, role, is_officer, is_director, action (e.g. "Auto Sell", "Grant/Award/Other Acquisition"), side (buy/sell), shares, price (approximate — value / shares; the source has no exact price), value, date, filing_link (the SEC Form-4 URL), and insider_stars. This is corporate-insider activity (Form 4). For retail/individual investor sentiment, use get_assets_data and read investorActivity. Args: ticker: Stock ticker (e.g. 'AAPL'). limit: Max rows to return (default 30, max 100). Required: ticker.
get_investor_sentiment(ticker)
Returns crowd / retail investor sentiment for a stock. Args: ticker: Stock ticker (e.g. 'NVDA') Returns JSON with these top-level keys: - investorStatsOverview: stats aggregated across ALL TipRanks portfolios that hold the ticker. Fields: * numberOfPortfolios: total active portfolios on the platform. * portfoliosHoldingStock: how many of them hold THIS ticker. * averageAllocation: average % allocation among holders (decimal). * percentOverLast30Days / percentOverLast7Days: change in the count of holders over the window (decimal; 0.013 = +1.3%). * investorScore: TipRanks' 0-1 score of how confident "the crowd" is on this stock; higher = more bullish positioning. * sectorAverageScore: investorScore averaged across the sector, for comparison. * sentiment: bucketed label — one of "VeryNegative", "Negative", "Neutral", "Positive", "VeryPositive". * sectorAverageSentiment: same bucket, sector-wide. - bestInvestorStatsOverview: same fields, but restricted to "Best Investors" — TipRanks users with top-decile portfolio returns over the trailing window. If investorStatsOverview and bestInvestorStatsOverview diverge (e.g. crowd is Positive but best investors are Negative), that's the headline signal. - ageDistribution: holders split by TipRanks account-tenure tier (NOT the investor's biological age): * eldest: oldest accounts on the platform * midRange: middle tier * youngest: newest accounts Each has percentHolders, last30DaysChange, last7DaysChange, and per-bucket averages (averageBeta, averageMonthlyReturn, dividendYield, averagePeRatio). - investorsAlsoBought: top other stocks held by people who hold this one (each: ticker, companyName, averageHoldingSize, lastSevenDayChange, lastThirtyDayChange, sector, sectorName, score, sentiment, marketCap, marketCapCurrencyCode). - investorsAlsoBoughtYoungest / MidRange / Eldest: same shape, filtered to that account-tenure bucket. Often shorter or empty for stocks held mostly by one cohort. Required: ticker.
get_ipo_calendar(toDate, fromDate)
Returns upcoming and recent IPOs. Args: fromDate: Start date ISO format (default: today) toDate: End date ISO format (default: 30 days from now)
get_latest_news(limit, tickers, to_date, category, from_date)
Latest TipRanks news articles (newest first) from TipRanks's own editorial/wire feed — each with a text excerpt, unlike get_assets_news. Use for general market news (no ticker), news on a specific stock with a short summary of each story, or to browse a news category. This is also the tool for news from a specific PAST date range — pass from_date AND to_date together; the archive holds years of stories, so a past window is answerable here even though get_assets_news only reaches recent articles. Args: tickers: Optional comma-separated tickers to filter by (e.g. 'NVDA,AAPL'). Omit for general market news. category: Optional single category (see the field description). from_date: Optional 'YYYY-MM-DD' recency floor. limit: Max articles to return (default 20). to_date: Optional 'YYYY-MM-DD' inclusive upper bound. Results are newest-first, so from_date alone returns today's news rather than news from around that date — add to_date to scope a window. Returns a JSON list of {id, title, excerpt, author, category, date, url, tickers}. To read a full article, pass its url or id to get_article.
get_market_commentary
Cached equities market sentiment snapshot. Returns {overallSentiment, atmosphere, keyThemes, tailwinds, headwinds}. Generated by TipRanks' AI pipeline with web search, refreshed every ~4 hours; this endpoint reads the cache only and does not trigger regeneration. If no recent cache exists, returns {"status": "unavailable"}. The content is AI-generated commentary, not authoritative TipRanks market data — present it as such to end users.
get_market_movers(num, country, category)
Returns today's market movers: biggest gainers, losers, most active. Args: category: 1=DollarVolume, 2=PercentGainers, 3=PercentLosers, 4=GainersRegular, 5=LosersRegular, 6=UnusualVolume country: 1=US, 2=Canada, 3=UK num: Number of results Required: category.
get_market_performance(country)
Returns market-wide performance for a specific country: average returns, sector breakdown, top/bottom performers. Args: country: Country code: 'us', 'ca', 'gb', 'de', 'il', 'au', 'hk', 'sg', etc.
get_my_usage
Your current TipRanks MCP usage against the monthly tool-call quota. Reports calls used this calendar month, your limit, how many remain, your plan tier, and when the quota resets (UTC). Handy to check before running a large batch of calls. This call is free — it never counts against the quota. What counts: every tool call is metered once whether or not it returns data, so an unrecognised ticker or an invalid argument costs the same as a successful call. The connection handshake (initialize, tools/list and the other discovery calls) is never metered, and neither is this tool. On the OAuth connector, calls refused for being over the limit are counted too and never refunded, so `used` can come back higher than `limit`. Read that as the cap having been hit and retried, not as that many calls served.
get_options_chain(limit, ticker, strike_gte, strike_lte, contract_type, expiration_date)
Contracts at one expiration, enriched with price + OI + volume. Each row: ticker (OCC), contract_type, strike, name, price, volume, open_interest, open_interest_change, change_percent, day_open / high / low, last_trade_date. Quotes are typically delayed ~15 minutes. Greeks and implied volatility are NOT exposed by this data source — do not fabricate them. Args: ticker: Underlying (e.g. 'AAPL'). expiration_date: One of the dates from get_options_expirations (YYYY-MM-DD). contract_type: '' for both, or 'call' or 'put'. strike_gte: Filter strikes >= this value (optional). strike_lte: Filter strikes <= this value (optional). limit: Max contracts to return (default 50). Required: ticker, expiration_date.
get_options_contract(contract_ticker)
Snapshot one OCC contract — price, OI, intraday OHLCV, last trade. The contract_ticker is an OCC-format symbol like 'O:AAPL260520C00205000' (O: + underlying + YYMMDD + C/P + strike-in-thousandths-8-digits). The 'O:' prefix is optional. Quotes are typically delayed ~15 minutes. Greeks and implied volatility are not available from this data source. Args: contract_ticker: OCC contract symbol. Required: contract_ticker.
get_options_expirations(ticker)
List future expiration dates for a ticker's listed options. Excludes past expirations. Use the result as input to get_options_chain. Args: ticker: Underlying ticker (e.g. 'AAPL'). Required: ticker.
get_options_unusual_trades(limit, ticker)
Recent unusual option trades for an underlying (size/sweep alerts). Returns the most recent `limit` flagged trades with the side, strike, expiry, size, and notional value. Useful for spotting large bullish or bearish positioning. Args: ticker: Underlying ticker (e.g. 'AAPL'). limit: Max trades to return (default 25). Required: ticker.
get_peers(ticker)
Peer/competitor companies for a stock, with comparative metrics for side-by-side analysis. Read-only, no side effects. Use to find and compare a company against similar names (competitors, same-sector peers). For that company's own data use get_assets_data; for a sector-wide breakdown use get_sector_analysis. Required: ticker.
get_politician_activity(activity, politicianId)
Returns a specific politician's stock trades or holdings. First call get_politicians to find the politicianId. Args: politicianId: Politician ID from get_politicians activity: 'trades' or 'holdings' Required: politicianId.
get_politicians
Returns the list of politicians tracked for trading activity. Returns: name, party, state, position, net worth, profile.
get_portfolio_analysis(portfolio_id)
Returns asset allocation by type/country/top stocks and distribution by sector, market cap, dividend yield, beta, and P/E. Args: portfolio_id: One of the IDs returned by list_my_portfolios. Required: portfolio_id.
get_portfolio_holdings(portfolio_id)
Returns all holdings for one of your TipRanks portfolios. Per holding: ticker, shares, price, cost basis (AvgExecutionPrice), P/E ratio, dividend yield, market cap, sector, country, 52-week high/low, percentage of portfolio, beta, EPS. Plus total value, cash, stock count. Args: portfolio_id: One of the IDs returned by list_my_portfolios. Required: portfolio_id.
get_portfolio_overview(portfolio_id)
Returns lifetime / 1mo / 6mo / 12mo / YTD returns, Sharpe ratio, and a monthly-return time series. The monthly history field is chart-ready — a list of {month, return} points suitable for direct plotting. Args: portfolio_id: One of the IDs returned by list_my_portfolios. Required: portfolio_id.
get_portfolio_performance(portfolio_id)
Returns full performance: stats, gains, best trade, recent activity, a daily-yield time series benchmarked against S&P 500 (chart-ready — aligned dates with portfolio and benchmark yield columns, plot directly as overlaid lines), monthly returns, risk profile, beta, dividend yield/amount. Args: portfolio_id: One of the IDs returned by list_my_portfolios. Required: portfolio_id.
get_recent_analyst_ratings(ticker)
Recent Wall Street analyst rating actions on a single stock, covering the trailing 12 months (newest first). Each row carries the analyst's name and firm, the rating (Buy/Hold/Sell), the action (initiated/upgraded/downgraded/reiterated/maintained), the price target, and the analyst's TipRanks credibility (numOfStars 0-5, rank, success rate, average return) plus the source article title/quote. For the aggregate consensus and average/best price target, use get_assets_data instead. Args: ticker: Stock ticker (e.g. 'NVDA', 'AAPL'). Returns: a list of rating actions. recommendationDate is a 'MM/DD/YYYY' string; numOfStars is the analyst's 0-5 TipRanks star rating. Required: ticker.
get_sector_analysis
Returns sector-level analysis for all 11 US sectors: average P/E, analyst upside, buy ratio, stock count. Sorted by average analyst upside.
get_stock_catalyst(tickers)
TipRanks-generated catalyst summary explaining why a stock is moving. Each entry: {ticker, summary, sentiment, updated} where sentiment is 'positive' | 'neutral' | 'negative'. Updated throughout the trading day. Use to explain today's move for a specific stock. Args: tickers: Comma-separated tickers (e.g. 'AMZN' or 'AMZN,NVDA'). Required: tickers.
get_stock_prices(period, tickers)
Historical daily closing prices for up to 5 stocks or ETFs. Per ticker: {ticker, period, series:[{date, price}], summary} with summary fields first_price, last_price, change_pct, high, low, trading_days. Series is downsampled to ~250 evenly-spaced points (latest point always retained) so the payload stays small for charting. `period` must be one of: 1m, 3m, 6m, ytd, 1y, 2y, 5y, all. Args: tickers: Comma-separated tickers, up to 5 (e.g. 'AAPL,MSFT'). period: Lookback window (default 'ytd'). Required: tickers.
get_stock_quotes(tickers)
Real-time price quote for one or more stocks or ETFs. Returns price, intraday OHLC, day change (amount + percent), volume, previous close, market cap, currency, exchange, and market-state flags (is_market_open / is_premarket / is_after_market). When extended-hours data is present, the entry includes a `pre_post_market` block — when the regular session is closed, that's the freshest price. For forex pairs use get_forex_quote; this endpoint is stocks/ETFs only. Args: tickers: Comma-separated tickers (e.g. 'AAPL' or 'AAPL,MSFT,NVDA'). Required: tickers.
get_stock_splits(type, limit, toDate, fromDate)
Returns the stock-split calendar with split ratios and direction (Forward / Reverse). Use for upcoming splits, reverse-split alerts, historical split lookup. Args: fromDate: Start date YYYY-MM-DD (default: 30 days ago) toDate: End date YYYY-MM-DD (default: 30 days from now) type: Optional filter — 'Forward' or 'Reverse' (case-insensitive). Empty string returns both. limit: Max rows (default: 25, max: 100) Returns: { totalCount, data: [{ ticker, companyName, effectiveDate, type, splitRatio, splitRatioText }] }.
get_technical_analysis(tickers, timeFrame)
Returns RSI, MACD, Stochastics, ADX, moving averages, and pivot points for individual stocks. Stocks only — ETFs like SPY, QQQ, VTI are not supported here. For ETFs, use get_etf_analysis, get_etf_forecast, get_etf_top_stocks, or get_etf_exposures instead. Args: tickers: Comma-separated stock tickers (e.g. 'NVDA' or 'NVDA,AAPL'). ETF tickers will return no data. timeFrame: '1m','5m','15m','30m','1h','5h','day','3d','week','2w','month' (default: 'day') Returns: summary scores, oscillators (RSI, MACD, Stochastics, ADX, CCI, Williams %R, ATR, ROC), moving averages, and pivot points. indicator field: 1=Sell, 2=Neutral, 3=Buy. scoreScale: 1=StrongBuy, 2=Buy, 3=Neutral, 4=Sell, 5=StrongSell. Required: tickers.
get_ticker_earnings(ticker)
Upcoming and recent earnings dates for a specific stock — scheduled report dates with EPS/revenue estimates where available. Read-only, no side effects. Use this to find when a company reports. For past actual-vs-estimate results use get_earnings_history; for a cross-market schedule use get_earnings_calendar. Required: ticker.
get_top_hedge_fund_managers(num)
Returns top-performing hedge fund managers ranked by success rate and returns. Args: num: Number of managers to return (default 10)
get_top_rated_stocks(num, sector, country)
Returns stocks most recommended by the best-performing analysts (by analyst track record). Args: num: Number of results sector: Sector filter (financial, healthcare, technology, etc.) or empty for all country: 'US', 'Canada', 'UK', 'Global'. NOTE: UK tickers use GB: prefix but country param is 'UK'.
get_top_smart_score_stocks(num, sector, country)
Returns stocks with the highest TipRanks Smart Score (perfect 10 / Outperform). Args: num: Number of results sector: Sector filter (financial, healthcare, technology, etc.) or empty for all country: 'US', 'Canada', 'UK', 'Germany', 'Spain', 'France', 'India', 'Italy', 'Israel', 'Australia', 'Singapore', 'Japan', 'HongKong', 'Global'. NOTE: UK tickers use GB: prefix but the country param is 'UK'.
get_trending_stocks(num, filter, country, daysAgo, trendingType)
Returns currently trending stocks that recently received analyst ratings. Args: num: Number of results (default 20) filter: 'analysts', 'bloggers', or 'both' daysAgo: Days to look back (default 7). Pass 30 when filtering by sector or country to ensure enough results — narrow windows often return fewer than 5 stocks in a specific sector. trendingType: 'best-rated' or 'worst-rated' (empty for all) country: 'US','Canada','UK','Germany','Israel','Australia' etc. Returns: ticker, SmartScore, analyst/blogger sentiment, hedge fund trend, price target, buy/hold/sell counts per stock.
list_my_portfolios
List the portfolios you authorized this connector to access. Returns the portfolios that were on your TipRanks account at the time you signed in, each with its id and name. If you've added or renamed portfolios since, re-authorize to refresh.

Last successful function declaration observed on . Source: https://mcp.tipranks.com/mcp/. We list what the server declared; we do not call any of these functions.

Endpoint status observed on . Source: https://mcp.tipranks.com/mcp/.

Signals

These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.

Signal Value What it measures Window Observed Source
Latest published version 1.2.0 Latest version string the maintainer published to the registry. as of fetch Model Context Protocol
Registry record last updated 2026-07-21 When the registry record was last updated by its maintainer. point in time Model Context Protocol
First listed in the MCP Registry 2026-07-21 Date this server was first published to the official MCP Registry. Not a usage or quality measure. point in time Model Context Protocol
mcp tools declared 71 tools Number of functions the server itself declared when asked to list them. This is what the server offers an agent, not a measure of how well any of them work. as of probe mcp.tipranks.com
mcp endpoint status ok The server listed 71 functions when asked. as of probe mcp.tipranks.com

Where to get it

This record as data

Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.

GET /api/v1/entries/mcp_server.json

Sources

  1. Tools declared by the MCP server at https://mcp.tipranks.com/mcp/ — mcp.tipranks.com, observed , trust tier 4.
  2. Official MCP Registry — Model Context Protocol, observed , trust tier 1.