Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

TipRanks

REMOTE · MCP.TIPRANKS.COM

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

Available components

0 this week 88 Trust /100

Last scanned (12 hours ago)

Scores higher than 95% of remote servers

Reachable. Last reached 7 Nov 2026.

Category Finance and Payments

Trust breakdown (7 categories)

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 Security89
Transport & Reachability100
Schema Quality & AI Usability65
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 16966 tokens (~238/item across 71 items; 71 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 Coverage79
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 37% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 71 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 72 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
What we tested

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 →

Changelog

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.

  • 6 Nov 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 27 Oct 26 0
    • Tool “get_etf_screener” rewrote its description, which is the text the model reads security
    • Tool “get_recent_analyst_ratings” rewrote its description, which is the text the model reads security
    • Tool “get_stock_catalyst” rewrote its description, which is the text the model reads security
    • Tool “get_top_rated_stocks” rewrote its description, which is the text the model reads security
    • Tool “get_top_smart_score_stocks” rewrote its description, which is the text the model reads security
    • “get_recent_analyst_ratings” added an optional parameter “offset” cosmetic
    • “get_etf_screener” reworded the description of “assetClass” cosmetic
    • “get_etf_screener” reworded the description of “category” cosmetic
    • “get_top_rated_stocks” reworded the description of “country” cosmetic
    • “get_top_rated_stocks” reworded the description of “sector” cosmetic
    • “get_top_smart_score_stocks” reworded the description of “country” cosmetic
    • “get_top_smart_score_stocks” reworded the description of “sector” cosmetic
  • 26 Oct 26 0
    • Tool “get_market_performance” rewrote its description, which is the text the model reads security
  • 22 Oct 26 0
    • Tool “get_earnings_calendar” rewrote its description, which is the text the model reads security
    • Tool “get_etf_screener” rewrote its description, which is the text the model reads security
    • Tool “get_recent_analyst_ratings” rewrote its description, which is the text the model reads security
  • 21 Oct 26 0
    • Tool “get_economic_calendar” rewrote its description, which is the text the model reads security
  • 20 Oct 26 0
    • Tool “get_options_chain” rewrote its description, which is the text the model reads security
    • Tool “get_options_contract” rewrote its description, which is the text the model reads security
    • Tool “get_options_expirations” rewrote its description, which is the text the model reads security
    • “get_etf_holdings” reworded the description of “sort_by” cosmetic
  • 28 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostics

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 7 Nov 2026 · Probed https://mcp.tipranks.com/mcp/

TLS valid

Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=mcp.tipranks.com CN=GeoTrust TLS RSA CA G1,OU=www.digicert.com,O=DigiCert Inc,C=US 19 Jul 2026 19 Jan 2027 RSA 2048 SHA256-RSA 94f2f77ebbb87d15bd26df1391b278b
SANs: mcp.tipranks.com
CN=GeoTrust TLS RSA CA G1,OU=www.digicert.com,O=DigiCert Inc,C=US (CA) CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US 2 Nov 2017 2 Nov 2027 RSA 2048 SHA256-RSA d07782a133fc6f9a57296e131ffd179

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.tipranks.com. — Not signed

Zone DS Keys Algorithms Outcome
. Trust anchor 20326, 38696 8, 8 Verified
com. DS published 19718 13 Verified
tipranks.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 realm="tipranks-mcp", resource_metadata="https://mcp.tipranks.com/.well-known/oauth-protected-resource"

Bearer realm="tipranks-mcp", resource_metadata="https://mcp.tipranks.com/.well-known/oauth-protected-resource"

Protected resource metadata

Document https://mcp.tipranks.com/.well-known/oauth-protected-resource
Retrieved Yes
Resource https://mcp.tipranks.com/mcp/
Authorisation server https://mcp.tipranks.com

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.tipranks.com/mcp/ Verified 200
http (plaintext) http://mcp.tipranks.com/mcp/ HTTPS enforced 301 https://mcp.tipranks.com/mcp/
MCP tools · 71 exposed · ~16,911 tokens

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 →

Tool Tokens
get_options_unusual_trades ~106

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).

NameTypeReqDescription
limitinteger––
tickerstringyes–

No output schema declared.

No examples provided.

get_peers ~96

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.

NameTypeReqDescription
tickerstringyesStock ticker symbol, e.g. 'AAPL'.

No output schema declared.

No examples provided.

get_politician_activity ~102

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'

NameTypeReqDescription
activitystring–'trades' or 'holdings' (default: trades)
politicianIdintegeryesPolitician ID, as returned by get_politicians.

No output schema declared.

No examples provided.

get_politicians ~37

Returns the list of politicians tracked for trading activity. Returns: name, party, state, position, net worth, profile.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_portfolio_analysis ~64

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.

NameTypeReqDescription
portfolio_idintegeryes–

No output schema declared.

No examples provided.

get_portfolio_holdings ~106

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.

NameTypeReqDescription
portfolio_idintegeryes–

No output schema declared.

No examples provided.

get_portfolio_overview ~93

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.

NameTypeReqDescription
portfolio_idintegeryes–

No output schema declared.

No examples provided.

get_portfolio_performance ~105

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.

NameTypeReqDescription
portfolio_idintegeryes–

No output schema declared.

No examples provided.

get_recent_analyst_ratings ~492

Recent Wall Street analyst rating actions on a single stock, covering the trailing 12 months (newest first). `ratings` holds one row per analyst, their latest rating, newest first. Each row carries the analyst's name, expertUID and firm, the rating (Buy/Hold/Sell), the action (initiated/upgraded/downgraded/reiterated/ maintained), recommendationDate and timestamp, the price target in its own currency (priceTarget, priceTargetCurrencyCode) and converted (convertedPriceTarget, convertedPriceTargetCurrencyCode), and the analyst's TipRanks credibility (numOfStars 0-5, rank, successRate as a fraction, excessReturn as the average return) plus the source article title/quote. The response is size-bounded, so a long list comes in pages: when rows are left out the result carries `nextOffset`; call again with that offset for the next page, until a result has no `nextOffset`. `totalRatings` is the full count. The source returns at most the 100 newest ratings; when it hit that limit the result carries `feedLimit`, and older ratings are not available from this tool. `counts` gives exact last30Days / last90Days / last12Months totals (analysts whose latest rating falls in the window, split buy/hold/sell) over every rating fetched, as of `asOf`; answer 'how many analysts rated X in the past month' from `counts`, which cover every page. For the aggregate consensus and average/best price target, use get_assets_data instead. Args: ticker: Stock ticker (e.g. 'NVDA', 'AAPL'). offset: Index of the first rating to return in the newest-first list (default 0); pass the previous result's `nextOffset`. Returns: {ticker, asOf, totalRatings, counts, offset, ratings, and nextOffset when more remain}. recommendationDate is a 'MM/DD/YYYY' string; numOfStars is the analyst's 0-5 TipRanks star rating.

NameTypeReqDescription
offsetinteger––
tickerstringyes–

No output schema declared.

No examples provided.

get_sector_analysis ~41

Returns sector-level analysis for all 11 US sectors: average P/E, analyst upside, buy ratio, stock count. Sorted by average analyst upside.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_stock_catalyst ~127

TipRanks-generated catalyst summary explaining why a stock is moving. Each entry: {ticker, price_move, summary, sentiment, updated} where sentiment is 'positive' | 'neutral' | 'negative' and price_move, present once today's session has traded, is the stock's actual change today from the live quote. Use to explain today's move for a specific stock. Args: tickers: Comma-separated tickers (e.g. 'AMZN' or 'AMZN,NVDA').

NameTypeReqDescription
tickers–yes–

No output schema declared.

No examples provided.

get_stock_prices ~187

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, 3y, 5y, all. Args: tickers: Comma-separated tickers, up to 5 (e.g. 'AAPL,MSFT'). period: Lookback window (default 'ytd').

NameTypeReqDescription
periodstring––
tickers–yes–

No output schema declared.

No examples provided.

get_stock_quotes ~162

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').

NameTypeReqDescription
tickers–yes–

No output schema declared.

No examples provided.

get_stock_splits ~338

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) ticker: Optional single symbol. Widen fromDate to search a company's history — the default window is only today ± 30 days. Returns: { totalCount, data: [{ ticker, companyName, effectiveDate, type, splitRatio, splitRatioText }] }. A filtered call (ticker or type) also returns `matched` and `window`: `totalCount` is every split in the window, `matched` how many passed the filter. The window is read in full before filtering, so an empty result means there genuinely are none rather than that the first page held none.

NameTypeReqDescription
fromDatestring––
limitinteger––
tickerstring–Optional. Return only this company's splits within the window, e.g. 'NVDA'. Pair with a wide fromDate for 'has X ever split'.
toDatestring––
typestring–Optional filter: 'Forward' or 'Reverse' (case-insensitive); omit to return both.

No output schema declared.

No examples provided.

get_technical_analysis ~367

Returns RSI, MACD, Stochastics, ADX, moving averages, and pivot points for stocks and ETFs. Covers stocks and ETFs alike (e.g. 'NVDA', 'SPY', 'QQQ', 'VTI') with the same payload shape. For an ETF's analyst consensus, forecast, holdings or exposures, use get_etf_analysis, get_etf_forecast, get_etf_top_stocks, or get_etf_exposures. Args: tickers: Comma-separated stock or ETF tickers (e.g. 'NVDA' or 'NVDA,SPY'). timeFrame: '1m','5m','15m','30m','1h','5h','day','3d','week','2w','month' (default: 'day') '5h' is slow upstream: request it for one ticker per call. Returns: summary scores, oscillators (RSI, MACD, Stochastics, ADX, CCI, Williams %R, ATR, ROC), moving averages, and pivot points. Labels are strings. indicator: "Buy", "Neutral" or "Sell" (null on ATR and pivot points). scoreScale: "StrongBuy", "Buy", "Neutral", "Sell" or "StongSell" (the upstream's own spelling).

NameTypeReqDescription
tickers–yes–
timeFramestring–One of '1m','5m','15m','30m','1h','5h','day','3d','week','2w','month' (default: 'day'). Request '5h' for one ticker per call.

No output schema declared.

No examples provided.

get_ticker_earnings ~103

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.

NameTypeReqDescription
tickerstringyesStock ticker symbol, e.g. 'NVDA'.

No output schema declared.

No examples provided.

get_top_hedge_fund_managers ~67

Returns top-performing hedge fund managers ranked by success rate and returns. Args: num: Number of managers to return (default 10, max 100 — the upstream returns 100 for anything higher)

NameTypeReqDescription
numinteger––

No output schema declared.

No examples provided.

get_top_rated_stocks ~325

Returns stocks most recommended by the best-performing analysts (by analyst track record) in one market. Args: num: Number of results sector: Sector filter (financial, healthcare, technology, etc.) or empty for all country: 'US', 'Canada', 'UK', 'Germany', 'France', 'Spain', 'Italy', 'Netherlands', 'Switzerland', 'Australia', 'Singapore', 'Japan', 'Israel'; any other country returns no_match. NOTE: UK tickers use GB: prefix but country param is 'UK'.

NameTypeReqDescription
countrystring–'US','Canada','UK','Germany','France','Spain','Italy','Netherlands','Switzerland','Australia','Singapore','Japan', or 'Israel' (default: US); these are the only markets with a list, each list covers…
numinteger––
sectorstring–Sector filter: technology, financial, healthcare, energy, utilities, industrials, materials, consumerdefensive, consumercyclical, services (default: all sectors). This feed files oil & gas under its…

No output schema declared.

No examples provided.

get_top_smart_score_stocks ~293

Returns up to 10 stocks with the highest TipRanks Smart Score (perfect 10 / Outperform) in one market. Args: num: Number of results; the feed returns at most 10 whatever this asks sector: Keeps the rows of that top-10 list in this sector, or empty for all country: 'US', 'Canada', 'UK', 'Germany', 'Spain', 'Australia', 'Singapore', 'HongKong', 'Global'; any other country returns no_match. NOTE: UK tickers use GB: prefix but the country param is 'UK'.

NameTypeReqDescription
countrystring–'US','Canada','UK','Germany','Spain','Australia','Singapore','HongKong', or 'Global' (default: US); these are the only markets with a list, and any other country returns no_match. UK tickers are retu…
numinteger––
sectorstring–Keeps only the rows of the market's top-10 list in this sector: financial, healthcare, consumerdefensive, consumercyclical, utilities, basicmaterials, technology, industrials, energy, communicationse…

No output schema declared.

No examples provided.

get_trending_stocks ~564

Returns currently trending stocks that recently received analyst ratings. Args: num: Number of results (default 20) filter: exactly one of 'analysts', 'bloggers', 'both'. Anything else is refused — the feed would otherwise answer it with the 'both' list. daysAgo: Days to look back: 3, 7, or any number from 30 up. Every other value (1, 2, 14…) is rejected by the feed. Default 7. Pass 30 or more when filtering by sector or country to ensure enough results — narrow windows often return fewer than 5 stocks in a specific sector. trendingType: exactly 'best-rated' or 'worst-rated' (empty for all). Anything else is refused — the feed would otherwise return the unranked list. country: 'US','Canada','UK','Germany','Israel','Australia' etc. sector: One of energy, financial, general, healthcare, industrials, services, technology, utilities. Empty for all sectors. This feed answers a sector it does not recognise with financial stocks rather than an error, so anything outside that list comes back refused instead. Rows returned for 'energy' are energy companies (Exxon, Chevron, BP) even though the feed tags them UTILITIES. Returns: ticker, SmartScore, analyst/blogger sentiment, hedge fund trend, price target, buy/hold/sell counts per stock.

NameTypeReqDescription
countrystring–Country name, e.g. 'US','Canada','UK','Germany','Israel','Australia' (default: US)
daysAgointeger–Days to look back: 3, 7, or any number from 30 up — anything else (1, 2, 14…) is rejected. Default 7. Use 30 or more when filtering by sector or country, as narrow windows often return very few stock…
filterstring–Exactly one of 'analysts', 'bloggers' or 'both' (default: analysts). Any other value is rejected rather than answered.
numinteger––
sectorstring–Sector filter: energy, financial, general, healthcare, industrials, services, technology or utilities. Omit for all sectors; a sector outside this list is refused rather than answered. Rows for secto…
trendingTypestring–Exactly 'best-rated' or 'worst-rated'; omit for all (default). Any other value is rejected rather than silently returning the unranked list.

No output schema declared.

No examples provided.

list_my_portfolios ~64

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

Install

How do I install the TipRanks MCP server?

TipRanks is a hosted endpoint at https://mcp.tipranks.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.tipranks.com

# add to Claude Code
claude mcp add --transport http com-tipranks-tipranks 'https://mcp.tipranks.com/mcp/'
Common questions

What is the TipRanks MCP server?

TipRanks is an MCP server listed in the public MCP registry as com.tipranks/tipranks. Live TipRanks market data: analyst ratings, Smart Score, technicals, options, portfolios. This page covers its hosted endpoint (https://mcp.tipranks.com/mcp/).

Is the TipRanks MCP server safe to use?

TipRanks scores 88 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 TipRanks MCP server expose?

TipRanks exposes 71 tools: list_my_portfolios, get_portfolio_holdings, get_portfolio_overview, get_portfolio_analysis, get_portfolio_performance, and 66 more. Their descriptions and schemas cost roughly 16,911 tokens of context every time the server is loaded.

Does the TipRanks MCP server require authentication?

Yes. TipRanks 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 TipRanks MCP server still maintained?

TipRanks is still listed as active in the MCP registry. We last reached this channel on 7 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 TipRanks MCP server?

VerifyMCP ran 13 checks on TipRanks, 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.