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

StockMarketScan

REMOTE · MCP.STOCKMARKETSCAN.COM · SCANNED AUG 3

18 tools for US stock screeners, chart patterns, options flow signals and equities research.

+3 this week 65 Trust /100
Trust breakdown (6 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 →

Endpoint Security74
Transport & Reachability40
Schema Quality & AI Usability67
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 3331 tokens (~166/item across 20 items; 20 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 Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage94
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 82% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · mcp.stockmarketscan.com

# add to Claude Code
claude mcp add --transport http com-stockmarketscan-mcp-server https://mcp.stockmarketscan.com/mcp
# ~/.codex/config.toml
[mcp_servers.com-stockmarketscan-mcp-server]
url = "https://mcp.stockmarketscan.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-stockmarketscan-mcp-server": {
      "type": "remote",
      "url": "https://mcp.stockmarketscan.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-stockmarketscan-mcp-server --url https://mcp.stockmarketscan.com/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-stockmarketscan-mcp-server:
    url: "https://mcp.stockmarketscan.com/mcp"
// mcp.json
{
  "mcpServers": {
    "com-stockmarketscan-mcp-server": {
      "type": "http",
      "url": "https://mcp.stockmarketscan.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

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.

  • 2 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 +2
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 61

    First indexed and scored.

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 3 Aug 2026 · Probed https://mcp.stockmarketscan.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=stockmarketscan.com CN=YE1,O=Let's Encrypt,C=US 19 Jul 2026 17 Oct 2026 ECDSA 256 ECDSA-SHA384 50c7ac16079702f8b45cc009fdd6725206e
SANs: *.stockmarketscan.com, stockmarketscan.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
DNSSEC insecure

Validation of mcp.stockmarketscan.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
stockmarketscan.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Transports 2 probes
Transport URL Outcome Status Location
sse https://mcp.stockmarketscan.com/mcp Verified 200
http (plaintext) http://mcp.stockmarketscan.com/mcp HTTPS enforced 301 https://mcp.stockmarketscan.com/mcp
MCP tools — 20 exposed · ~3,060 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.

Tool Tokens
explain_concept ~137

Return a plain-language explanation of a platform-specific term, metric, or screener. Use ONLY for terms that are specific to StockMarketScan (e.g. 'strength_score' which is our internal scoring, or 'hot_prospects' which is our curated screener). Do NOT use for generic finance terms the model already knows — answer those directly. Returns { term, title, explanation, interpretation, related_terms }.

NameTypeReqDescription
termstringyesTerm to explain, e.g. 'call_put_ratio', 'golden_cross', 'consecutive_days', 'strength_score', 'vol_oi_ratio', 'streak'

No output schema declared.

No examples provided.

get_candles ~178

Return OHLCV price candles for a single stock. Use when you need price history to compute indicators or answer 'how much is X up this month'. time is a Unix epoch in seconds (UTC midnight for daily). Default range is 6mo. Use larger ranges like '1y' or '2y' only when the user explicitly asks for long history — max range is 20 years. Returns { symbol, interval, range, count, data: [{time, open, high, low, close, volume}] }.

NameTypeReqDescription
intervalstringDaily or weekly candles
rangestringRange: 1d, 5d, 1y, 2y, 5y, max, or {N}mo (1-240)
symbolstringyesStock ticker

No output schema declared.

No examples provided.

get_chart_patterns ~182

Return all chart patterns currently detected for a single stock symbol. Detectable pattern ids: double_top, double_bottom, triple_top, triple_bottom, head_shoulders, inv_head_shoulders, round_bottom, cup_handle, asc_triangle, desc_triangle, sym_triangle, channel_up, channel_down, rectangle, flag, wedge_rising, wedge_falling, abcd, gartley, bat, butterfly, crab, impulse_wave, corrective_wave. Use when the user asks 'what patterns does X have' or 'is X forming a head and shoulders'. Requires a Basic or Pro API key. Returns { symbol, interval, computedAt, candleCount, patterns: [...] }. Empty patterns array if none detected.

NameTypeReqDescription
intervalstringChart interval
symbolstringyesStock ticker, e.g. AAPL, TSLA, MSFT

No output schema declared.

No examples provided.

get_market_momentum ~148

Return NYSE and NASDAQ market breadth data — advancing/declining issues, new highs/lows, percent advancing. Use when the user asks 'how's the market today' or 'is breadth strong'. Default (no params): last 7 trading days. Returns { dates, count, data: [{exchange, advancing_issues, declining_issues, new_highs, new_lows, percent_advancing_issues, data_date}] }. Two rows per date (NYSE + NASDAQ). Tier: Basic+.

NameTypeReqDescription
datestringSingle day (YYYY-MM-DD)
date_fromstringRange start
date_tostringRange end

No output schema declared.

No examples provided.

get_options_flow_overview ~201

Return the daily options flow table for one trading day — aggregated call/put volume, premium, implied volatility, and consecutive-day streaks for every notable symbol. Use when the user asks 'what's the options flow today' or 'show me the top premium plays'. Each row includes call_put_volume_ratio (bullish if > 1.0), consecutive_days (streak length), total_premium (dollar size), call_avg_iv/put_avg_iv. Returns { date, sort, limit, data: [...], stats, dates }. Tier: Pro only — Basic users get 403.

NameTypeReqDescription
datestringTrading day (YYYY-MM-DD). Default = latest available day.
limitintegerRows to return (max 500)
sortstringSort order: streak=longest streaks first, volume=highest volume, callput=most extreme C/P, premium=biggest dollar

No output schema declared.

No examples provided.

get_options_flow_ranked ~197

Return ranked options flow entries for a date range — the entries that stand out by long consecutive-day streaks, large premium, and screener confluence. Each entry includes data-only performance tracking measured from a realistic entry reference: entry_price = open of the trading day AFTER signal_date (the close of signal_date is unreachable for live trading). max_gain_pct/max_drawdown_pct/price_change_pct are computed against entry_price; if that day's US open hasn't happened yet, these fields and entry_price are null ('pending'). This is descriptive market data for your own research, not a recommendation. If date_from/date_to omitted, returns last 60 days. Returns { count, signals: [...] }. Tier: Pro only.

NameTypeReqDescription
date_fromstringStart date (YYYY-MM-DD)
date_tostringEnd date (YYYY-MM-DD)
limitintegerMax signals returned (default 500)

No output schema declared.

No examples provided.

get_options_flow_sentiment ~206

Return daily options market sentiment — one row per trading day. Combines NYSE/NASDAQ market breadth (advance/decline + new highs/lows) with the market-wide call/put ratio. Each row includes market_breadth_score (0-100), market_call_put_ratio, the daily filter context (bullish_only/bearish_only/mixed), bullish_count/bearish_count of signals that day, plus a derived sentiment_score (0-100) and sentiment_label (bullish/neutral/bearish). Use when the user asks 'what's market sentiment today', 'how bullish is the market', 'show me sentiment over the last week'. If date_from/date_to omitted, returns last 60 days. Returns { dateFrom, dateTo, count, data: [...] }. Tier: Pro only.

NameTypeReqDescription
date_fromstringStart date (YYYY-MM-DD)
date_tostringEnd date (YYYY-MM-DD)

No output schema declared.

No examples provided.

get_options_flow_timeline ~95

Return the historical options flow for a single stock — most recent days first. Use when the user asks 'show me X's options flow history' or 'how long has X been bullish'. Returns { symbol, limit, count, data: [daily rows, newest first] }. Tier: Pro only.

NameTypeReqDescription
limitintegerDays of history (max 365)
symbolstringyesStock ticker

No output schema declared.

No examples provided.

get_screener_data ~217

Return the current rows of a single stock screener for its latest data date. Use this when the user asks about a specific screener like 'hot prospects' or 'golden cross'. Common slugs: hot-prospects, golden-cross, death-cross, rsi-oversold, rsi-overbought, defensive-stocks, dividend-prospects, j-pattern, nearing-6-month-highs, week-52-high-top-picks, top-penny-pops, strong-volume-gains, top-tech-stocks, fundamentally-fine, income-and-growth, best-reits. If you don't know the slug, call list_screeners first. Returns { screener, pagination, data: [stock rows] }.

NameTypeReqDescription
limitintegerRows per page (max 500)
pageintegerPage number (1-based)
slugstringyesThe screener slug, e.g. 'hot-prospects', 'golden-cross', 'rsi-oversold'

No output schema declared.

No examples provided.

get_stock_info ~105

Return basic metadata for a stock — full company name, exchange, industry, last close price, and percent change. Use this when you first encounter a symbol and need to identify it. Lighter than get_stock_report (composite) or get_candles (full history). Returns { symbol, symbol_name, last_price, percent_change, exchange, industry }. Returns NOT_FOUND for unknown tickers.

NameTypeReqDescription
symbolstringyesStock ticker, e.g. AAPL

No output schema declared.

No examples provided.

get_stock_report ~201

Return a comprehensive report on a single stock in one call — metadata, screener appearances, chart patterns, options flow, signal status, price summary, and upcoming earnings. THIS IS THE PREFERRED FIRST TOOL when a user asks about a single stock. It replaces 5-7 separate tool calls (get_stock_info + get_chart_patterns + get_options_flow_timeline + get_options_flow_ranked + screener lookups + get_candles). Do NOT also call the primitives after calling this — the composite already has everything. Parallel fetch under the hood, graceful partial failures (if one source errors, that section returns null with a note). Returns { symbol, info, screeners, patterns, options_flow, signal, candle_summary, upcoming_earnings, overall_bias }. overall_bias is a heuristic hint, not financial advice.

NameTypeReqDescription
intervalstringPattern detection interval
symbolstringyesStock ticker, e.g. AAPL

No output schema declared.

No examples provided.

get_trend_connections ~121

Return AI-computed connections between trending topics across categories (tech → patents, tech → funding, etc). Useful for spotting meta-trends. Use when the user asks 'what trends are connected' or 'show me cross-category signals'. Returns { count, connections: [{source_category, source_topic, target_category, target_topic, strength, rationale}] }. Tier: Pro only.

NameTypeReqDescription
datestring
daysinteger
latestboolean
limitintegerMax connections returned (default 200)

No output schema declared.

No examples provided.

get_trends ~118

Return AI-detected trending topics in tech & science, patents, or funding events. Use when the user asks 'what's trending in tech' or 'show me patent trends'. Returns { category, count, trends: [{date, topic, weight}] } where weight is 0-1. Tier: Pro only.

NameTypeReqDescription
categorystringTrend category
datestringExact date lookup
daysintegerLookback window
latestbooleanIf true, only return most recent day

No output schema declared.

No examples provided.

get_unusual_options_activity ~152

Return individual options contracts flagged as unusual (Vol/OI > 1.5). Each row is one contract, not one stock. Use when the user wants contract-level detail. Filter by symbol, side (call/put/both), minimum vol/oi, minimum premium, or max days to expiration. For aggregated stock-level flow use get_options_flow_overview instead. Returns { date, count, contracts: [...] }.

NameTypeReqDescription
limitinteger
max_dteinteger
min_premium_usdnumber
min_vol_oinumber
sidestring
symbolstringFilter to one symbol

No output schema declared.

No examples provided.

list_screeners ~81

Return metadata for all 24 stock screeners on the platform, including each screener's slug, name, description, category, and tier. Use this to discover which screeners are available before calling get_screener_data. Call this once per session — the list changes very rarely. Returns { tier, total, accessible, screeners: [...] }.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

ping ~38

Minimal sanity check. Returns { status, version, timestamp, cache_size }. No auth needed. Use this to verify the MCP server is reachable and responsive.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

search_patterns ~247

Find all stocks across one or more screeners that currently exhibit specific chart patterns. Much faster than calling get_chart_patterns in a loop. Use when the user asks 'which stocks have a cup and handle' or 'find me hot prospects with bullish reversal patterns'. Requires a Basic or Pro API key. Results are capped per screener group via `limit` (default 100); capped groups carry `truncated: true`. Returns { interval, selectedPatterns, totalUniqueStocks, groups: [...] }.

NameTypeReqDescription
intervalstringChart interval
limitintegerMax matching stocks per screener group (default 100)
pattern_idsarrayPattern ids to filter by. Empty = all patterns. Valid ids: double_top, double_bottom, triple_top, triple_bottom, head_shoulders, inv_head_shoulders, round_bottom, cup_handle, asc_triangle, desc_trian…
screener_slugsarrayyesScreener slugs to search within

No output schema declared.

No examples provided.

search_setups ~155

Find the strongest trading setups today by combining options flow signals and screener confluence into a ranked list. Use when the user asks 'what should I trade today', 'best setups', 'top bullish plays'. Returns a ranked list with a composite score (signal strength + screener confluence + streak length). Present the top 3-5 to the user with narrative context, don't dump the raw JSON. Use get_stock_report if the user wants to dig deeper into any specific result. Returns { side, date, count, setups: [{symbol, score, signal, screeners_hit, ...}] }.

NameTypeReqDescription
limitintegerMax setups to return
sidestringSide of setups to return

No output schema declared.

No examples provided.

search_stocks ~126

Search for stocks by ticker prefix or company name. THE tool to use when the ticker is unknown ('what's the symbol for Palantir?') or ambiguous — resolve the name to a symbol here, then use get_stock_info / get_stock_report with the symbol. No API key required. Returns { query, count, data: [{symbol, name}] } ordered by best match.

NameTypeReqDescription
limitintegerMax results (default 10)
querystringyesSymbol prefix or part of the company name, e.g. 'Apple' or 'NVD'

No output schema declared.

No examples provided.

search_stocks_in_screeners ~155

Find stocks that appear in multiple screeners simultaneously. Powerful for high-confidence picks where the user wants confluence across strategies. Use when the user asks 'which stocks are in both X and Y' or 'find stocks in 3+ bullish screeners'. Returns { screeners_queried, mode, count, symbols: [{symbol, screeners, match_count}] }. Intersection mode returns only stocks in ALL listed screeners; union returns stocks in ANY.

NameTypeReqDescription
limitinteger
modestringintersection = stocks in ALL screeners; union = stocks in ANY screener
screener_slugsarrayyesList of screener slugs to query (1-24)

No output schema declared.

No examples provided.