StockMarketScan

com.stockmarketscanPublished by stockmarketscan.comOfficial publisherv1.0.5Updated Oct 24, 2026

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

VerifiedSSEWeb executableFinanceData & Analytics

Overview

AI-generated overview

StockMarketScan gives an assistant US equities research tools: stock screeners, chart patterns, options flow signals, price history and market breadth.

What you can do
  • List and read stock screeners, and find stocks that appear in several screeners at once
  • Detect chart patterns for one symbol or search screeners for stocks showing a given pattern
  • Review options flow: daily overview, per-symbol history, ranked records, sentiment and unusual contract activity
  • Look up stock metadata, OHLCV candles and a composite single-stock report
  • Check NYSE/NASDAQ market breadth, trending topics and cross-category trend connections
  • Explain StockMarketScan-specific terms and run a liveness check
When to use it
Useful when you want an assistant to answer questions about US stocks, screeners, chart patterns or options flow inside a chat client, and you already have a StockMarketScan subscription.
Requirements
Remote SSE endpoint; no local package needed. Requires a StockMarketScan Basic or Pro plan and a personal API key sent in the X-API-Key header. Options flow tools need the Options Flow add-on; some tools are Pro or Enterprise only. Rate limits apply per plan.
Before you install
The API key is a personal credential passed in a header; keep it out of shared configs and rotate it if exposed. Usage counts against your plan quota and rate limits. Output is descriptive market data, not investment advice, and some tools are gated by tier.

Installation

In SourceWeft

  1. Open StockMarketScan in the dashboard and add it to a workspace.
  2. Connect X-API-Key credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via SSE. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.stockmarketscan%2Fmcp-server/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "stockmarketscan": {
      "type": "sse",
      "url": "https://mcp.stockmarketscan.com/mcp",
      "headers": {
        "X-API-Key": "<YOUR_API_KEY>"
      }
    }
  }
}

README

StockMarketScan MCP Server

Stock screeners, chart patterns, options flow, and signals — 18 tools for US equities research, inside your LLM client.

  • Server URL: https://mcp.stockmarketscan.com/mcp
  • Transport: HTTP/SSE (Server-Sent Events)
  • Auth: BYOK — pass your personal sms_* API key as the X-API-Key header
  • Plan: Requires a Basic or Pro plan at stockmarketscan.com. Options flow tools require the Options Flow add-on.
  • Get your API key: stockmarketscan.com/settings
  • Full install guide & examples: stockmarketscan.com/mcp

What you get — 18 tools

CategoryTools
Screeners (3)list_screeners, get_screener_data, search_stocks_in_screeners
Chart Patterns (2)get_chart_patterns, search_patterns
Options Flow (4)get_options_flow_overview, get_options_flow_timeline, get_options_flow_signals, get_unusual_options_activity
Stock Info (2)get_stock_info, get_candles
Composite (2)get_stock_report, search_setups
Market Context (3)get_market_momentum, get_trends, get_trend_connections
Education (1)explain_concept

Plus ping for liveness checks.

Install — Claude Desktop

Edit claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
json
{  "mcpServers": {    "stockmarketscan": {      "command": "npx",      "args": ["-y", "mcp-remote", "https://mcp.stockmarketscan.com/mcp"],      "headers": {        "X-API-Key": "sms_your_key_here"      }    }  }}

Restart Claude Desktop. You should see stockmarketscan in the tool picker.

Install — Cursor

Settings → Features → Model Context Protocol → Add New MCP Server:

json
{  "name": "stockmarketscan",  "url": "https://mcp.stockmarketscan.com/mcp",  "headers": {    "X-API-Key": "sms_your_key_here"  }}

Install — Continue (VS Code / JetBrains)

Edit ~/.continue/config.json:

json
{  "experimental": {    "modelContextProtocolServers": [      {        "transport": {          "type": "sse",          "url": "https://mcp.stockmarketscan.com/mcp",          "headers": {            "X-API-Key": "sms_your_key_here"          }        }      }    ]  }}

Example prompts

Drop these straight into Claude Desktop or Cursor once the server is connected:

  • "Which stocks appear in both hot-prospects and golden-cross today?"
  • "Show me AMD's options flow history for the last 30 days."
  • "Find hot-prospects that are forming a cup and handle pattern."
  • "Build a full stock report for NVDA — screeners, patterns, options flow, market context."
  • "What are today's strongest bullish options flow signals?"
  • "Which contracts traded today at vol/OI > 3 with over $1M premium?"

How auth works (BYOK)

The MCP server does not hold its own API key. Each client passes your personal sms_* key, the server validates it once per session, and then proxies tool calls to api/v1/* on your behalf. You stay in control of rate limits and quota, and you can rotate the key any time in Settings.

Rate limits

PlanPer MinutePer DayOptions Flow
Free———
Basic15500—
Pro302,000✓

Support

Running from source

bash
git clone https://github.com/stockmarketscan/mcp-server.gitcd mcp-servernpm installSTOCKMARKETSCAN_API_KEY=sms_your_key_here npm run dev   # stdio (for Claude Desktop local)npm run dev:http                                        # HTTP/SSE on :3333

Docker

bash
docker build -t stockmarketscan-mcp .docker run -p 3333:3333 -e MCP_TRANSPORT=http stockmarketscan-mcp

The container listens on $PORT (Railway) or $MCP_PORT (local). Point your MCP client at http://localhost:3333/mcp and pass your X-API-Key header.

Source: README.md at commit 9e3ab46

Tools

20

ping

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

Takes no parameters.

list_screeners

Return metadata for all 24 stock screeners on the platform: slug, name, description, category, tier, whether the caller can read it, and its row fields with their JSON value types. Use this to discover which screeners are available before calling get_screener_data. Call this once per session; the list changes very rarely. Returns { data: [{ slug, name, description, category, tier, accessible, columns: [{ key, label, type, value_type }] }], meta: { caller_tier, total, accessible } }.

Takes no parameters.

get_screener_data

Return the rows of a single stock screener for its latest snapshot. 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. Numbers are JSON numbers (percent_change 1.25 means +1.25%), dates are YYYY-MM-DD. Returns { data: [rows], meta: { as_of, screener, pagination: { next_cursor, total } } }. For the next page pass meta.pagination.next_cursor as cursor.

Parametersslugrequiredlimitcursor

search_stocks_in_screeners

Find stocks that appear in multiple screeners simultaneously. Useful for finding overlap across screeners. 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.

Parametersmodelimitscreener_slugsrequired

get_chart_patterns

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 Pro or Enterprise API key. Returns { data: { symbol, interval, computed_at, candle_count, patterns: [{ id, name, type, category, confidence, points, lines, target_price, last_structural_point }] } } where type is the pattern direction (bullish, bearish, neutral). Empty patterns array if none detected.

Parameterssymbolrequiredinterval

search_patterns

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 Pro or Enterprise API key; unknown slugs or pattern ids and screeners above the plan are errors. Results are capped per screener group via `limit` (default 100); capped groups carry truncated: true. Returns { data: [{ screener_slug, screener_name, count, truncated, stocks: [{ symbol, symbol_name, last_price, volume, data_date, matched_patterns }] }], meta: { total_unique_stocks } }.

Parameterslimitintervalpattern_idsscreener_slugsrequired

get_options_flow_overview

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 largest premium'. Each row includes call_put_volume_ratio (> 1.0 means more call than put volume), consecutive_days (streak length), total_premium (dollar size), call_avg_iv/put_avg_iv. Returns { data: [...], meta: { as_of, market_stats, available_dates, pagination: { next_cursor } } }. Tier: Pro or Enterprise.

Parametersdatesortlimitcursor

get_options_flow_timeline

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 { data: [daily rows, newest first], meta: { as_of, pagination: { next_cursor } } }. Tier: Pro only.

Parameterslimitcursorsymbolrequired

get_options_flow_ranked

Return ranked options flow records for a date range: the records that stand out by long consecutive-day streaks, large premium, and screener confluence. Each record 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 not an available fill price). 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 { data: [...], meta: { as_of, pagination: { next_cursor }, parameters: { date_from, date_to } } }. Dates are YYYY-MM-DD and numbers are JSON numbers. Tier: Pro only.

Parameterslimitcursordate_todate_from

get_options_flow_sentiment

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 flow records 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 { data: [...], meta: { as_of, pagination } }. Tier: Pro only.

Parameterscursordate_todate_from

get_unusual_options_activity

Return individual options contracts flagged as unusual activity (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: [...], next_cursor }.

Parameterssidelimitcursorsymbolmax_dtemin_vol_oimin_premium_usd

get_stock_info

Return basic metadata for a stock: full company name, exchange, industry, last price, and daily 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 { data: { symbol, symbol_name, last_price, percent_change, exchange, industry }, meta: { as_of } }; percent_change 1.27 means +1.27%. Returns NOT_FOUND for unknown tickers.

Parameterssymbolrequired

get_candles

Return OHLCV price candles for a single stock, oldest first. Use when you need price history to compute indicators or answer 'how much is X up this month'. date is the trading day (YYYY-MM-DD; weekly candles use the Monday). 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 { data: [{ date, open, high, low, close, volume }], meta: { as_of, pagination: { total } } }.

Parametersrangesymbolrequiredinterval

search_stocks

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 { data: [{ symbol, name }], meta } ordered by best match.

Parameterslimitqueryrequired

get_stock_report

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, as_of, info, screeners, patterns, options_flow, signal, candle_summary, overall_bias }. overall_bias is a heuristic hint, not financial advice.

Parameterssymbolrequiredinterval

search_setups

List today's options flow records for one side (bullish or bearish), ranked by a descriptive composite score (strength score + consecutive-day streak + premium size). Use when the user asks which symbols had the most notable options flow today. This is descriptive market data, not a recommendation. Summarize the first few rows rather than dumping the raw JSON. Use get_stock_report to look at a single symbol in more detail. Returns { side, date, count, setups: [{ symbol, score, signal: { type, strength, consecutive_days, call_put_ratio, total_premium } }] }.

Parameterssidelimit

get_market_momentum

Return NYSE and NASDAQ market breadth: advancing/declining/unchanged issues, their percentages, and new highs/lows. Use when the user asks 'how's the market today' or 'is breadth strong'. Default (no params): last 7 trading days. Send either date or date_from/date_to (either end may be omitted). Returns { data: [{ data_date, exchange, advancing_issues, declining_issues, unchanged_issues, percent_advancing_issues, percent_declining_issues, percent_unchanged_issues, new_highs, new_lows }], meta: { as_of } }; all counts and percents are numbers (63 means 63%). Two rows per date (NYSE + NASDAQ). Tier: Pro or Enterprise.

Parametersdatedate_todate_from

get_trend_connections

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'. Use one of latest, date, or days. Returns { data: [{ date, source_category, source_topic, target_category, target_topic, strength, rationale }], meta: { as_of } }. Tier: Pro only.

Parametersdatedayslimitlatest

explain_concept

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

Parameterstermrequired

Version history

1
  1. v1.0.5LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Stockmarketscan integrations