A remote MCP server that gives an assistant percentile-based stock fingerprints, peer comparisons, theme clusters and market-stress context for US equities.
What you can do
Get a compact character read on one stock: 16 percentile scores, a composite score, curated peers and a one-line summary, in about 550 tokens per call (fingerprint). Compare 2 to 5 tickers side by side as a score matrix (compare). Retrieve a stock's true competitive peers, curated by segment overlap rather than sector classification (peers). See which statistical theme a stock trades with, including cluster name, cohesion, sector mix and member tickers (theme_cluster). Screen the S&P 500 and NASDAQ-100 universe on any of the 16 metrics with minimum and maximum bounds, optionally within one sector (screen). Check current market stress: indicator bands, the VIX five-year percentile and a risk-
When to use it
Useful when an assistant needs quick, comparable context on US stocks rather than raw price or financial-statement data: vetting a name, weighing a few candidates, finding real competitors, or checking overall market stress before discussing equities.
Requirements
A remote streamable HTTP endpoint; no local runtime, package, account, API key or header is declared. Network access to the endpoint is required.
Before you install
Informational only: the server states it gives descriptive statistics, never investment advice or buy/sell recommendations, and is not a market-data feed. Scores are derived metrics with snapshot dates, so treat them as context rather than authoritative data. No credentials are requested.
Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. 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/io.github.nirajagarwal%2Fstox-mcp/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.
Give your AI the numbers that matter. An MCP server over the
stox.market metric layer — context, not data: every
finance feed hands a model raw bars and statements, and the model still can't
answer "is this number good?". This server ships the judgment layer instead.
Live endpoint:https://mcp.stox.market/mcp (streamable HTTP) ·
Demo & docs:stox.market/mcp
bash
claude mcp add --transport http stox https://mcp.stox.market/mcp
Tools
tool
what it answers
fingerprint
The character of one stock: 16 percentile scores vs the S&P 500 cohort across four panels (Market Beat, Trend Persistence, Business Growth, Pressure), the P3 composite, curated peers, a one-line read. ~550 tokens.
compare
The 16-score matrix for 2–5 tickers, side by side.
peers
TRUE competitive peers — curated from segment overlap, not GICS (Costco → WMT/TGT/KR, not "Discount Stores").
theme_cluster
Who a stock moves with: co-movement clusters from price behavior (market-removed residuals → random-matrix cleaning → Ward linkage).
screen
Min/max bounds on any of the 16 metrics — momentum and fallen-leader queries in one call — optionally per sector, sorted by the P3 composite or any single metric.
market_regime
Market-stress stance, per-indicator bands, the VIX 5-yr percentile (the one input validated as predicting forward risk), and the S2 stress-confirmation badge.
Design
Token economy — compact JSON, score + band + a one-line read; a
fingerprint is ~550 tokens where a statements dump is 20,000.
Percentiles, not raw numbers — every score is a cross-sectional rank
against the real cohort (100 = best), so "is it good?" is answered by
construction.
Provenance — snapshot dates on scores, links back to the full picture.
Informational only — descriptive statistics; never investment advice,
no buy/sell recommendations. Derived metrics only; this is not a
market-data feed.
The human-readable twin
The same metric layer renders as editorial leaderboards at
stox.market/lists — 31 boards plus sector
slices and frozen earnings-season editions, refreshed on automated weekly
lanes. A board is where a name catches your eye; fingerprint is how your
agent vets it in one call.
The character of one stock in ~550 tokens: 16 percentile scores (vs the S&P 500 cohort) across four panels — Market Beat, Trend Persistence, Business Growth, Pressure (money flow) — plus the composite P3 score (the validated 3-factor form), curated competitive peers (not GICS), a one-line character read, and the price line. Use for 'is this number good?' and quick company character.
Parametersas_oftickerrequired
compare
Compare fingerprints side by side
The 16 percentile scores + P3 + 1Y price change for 2-5 tickers as one compact matrix (rows = metrics, columns = tickers). Use when weighing names against each other; percentiles make the comparison fair across sectors and sizes.
Parameterstickersrequired
peers
Curated competitive peers
The stock's TRUE competitive cluster — LLM-curated from segment overlap (who it actually competes with for revenue), not GICS classification. Costco's peers are WMT/TGT/KR, not 'Discount Stores'. Each peer carries its P3 score. Honest empty list for monopolies/private-rival cases.
Parameterstickerrequired
theme_cluster
Co-movement theme cluster
The statistical theme a stock actually trades with: clusters built from years of price co-movement (market-removed residuals → random-matrix cleaning → Ward linkage), not sector labels. Returns the cluster's name, description, cohesion, sector mix and up to 20 member tickers. Different question from `peers` (business competition) — this is who it MOVES with.
Parameterstickerrequired
screen
Metric screen (P3-sorted, min/max on all 16 scores)
Screen the S&P 500 + NDX universe on ANY of the 16 percentile scores, with minimum AND maximum bounds, optionally within one GICS sector, sorted by the validated P3 composite or by any single metric. Metric keys: marketBeat1Y/1M/1W/1D (price vs SPY), rankPersistence52W/26W/13W + trendPersistence (rank stability), businessBeat + revGrowthYoy + marginGrowthYoy + fcfGrowthYoy (business growth), accumDistFlow/30/5/2 (money flow 60/30/5/2-day). Examples: momentum — {sort_by:'marketBeat1M', filters:[{metric:'businessBeat', min:70}]}; fallen leaders — {filters:[{metric:'rankPersistence52W', min:80},{metric:'marketBeat1Y', max:40}]}. Legacy min_perform/min_persist/min_profit/min_pressure still work (the four headline scores).
Where market stress sits right now: the dashboard's 8-indicator stance, each indicator's traffic-light band, the VIX 5-year percentile (the ONE input validated as predicting forward risk — blended composites tested worse), and the S2 stress-confirmation badge (SPY below its 40-week average AND VIX above its 80th percentile of the trailing year). Descriptive context, not a market call.
Takes no parameters.
Version history
1
v0.2.2LatestSep 16, 2026
Score
90%
90% 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
Declare a license in the repository or the registry entry.
claude mcp add --transport http stox https://mcp.stox.market/mcp