market-data
Live market data & technical analysis for US stocks, ETFs and crypto. Read-only, no signup.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"market-data": {
"url": "https://marketcrew.ai/mcp"
}
}
}Remote endpoints
https://marketcrew.ai/mcpstreamable-httpWhat it can do
Tool inventory
Tools (15)
π’get_price_history(ticker, from_date, to_date, bars, period_days)
Get daily OHLCV price history for a ticker: open/high/low/close/volume. Use period_days to control how far back (default 365, max 3650).
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'SPY', 'GDX', 'AAPL'"
},
"from_date": {
"type": "string",
"description": "start of the window to quote, YYYY-MM-DD"
},
"to_date": {
"type": "string",
"description": "end of the window to quote, YYYY-MM-DD"
},
"bars": {
"type": "integer",
"description": "how many recent sessions to return when no window is given (default 20, max 120)"
},
"period_days": {
"type": "integer",
"description": "Number of days of history (default 365, max 3650)"
}
},
"required": [
"ticker"
]
}Output Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string"
},
"instrument_id": {
"type": "string"
},
"total_bars": {
"type": "number"
},
"date_range": {
"type": "object"
},
"current": {
"type": "object"
},
"period_return_pct": {
"type": "number"
},
"recent_prices": {
"type": "array",
"items": {}
}
},
"additionalProperties": true
}π’get_technical_indicators(ticker)
Calculate technical indicators for a ticker: SMA(50/200), RSI(14), MACD, ATR(14), ADX(14) trend strength, Stochastic(14,3), volume (OBV trend + volume vs 20-day average), RSI/price divergence, Golden/Death Cross, and RSI regime. Computed from daily price history.
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'SPY'"
}
},
"required": [
"ticker"
]
}Output Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string"
},
"date": {
"type": "string"
},
"close": {
"type": "number"
},
"indicators": {
"type": "object"
},
"signals": {
"type": "object"
},
"position": {
"type": "object"
},
"range_52w": {
"type": "object"
},
"weekly": {
"type": "object"
}
},
"additionalProperties": true
}π’get_relative_strength(ticker_a, ticker_b, period_days)
Calculate relative strength ratio between two tickers (A/B). Returns verdict_ru and vs_sma50_pct β USE THOSE in your reply. The bare pair (Β«0.2613 ΠΏΡΠΎΡΠΈΠ² ΡΠ²ΠΎΠ΅ΠΉ 50-Π΄Π½Π΅Π²Π½ΠΎΠΉ 0.2840Β») is unreadable: the level depends only on the price scales, so quote the DISTANCE in percent and what it means, and give the raw numbers only if the client asks for them. Also returns SMA(50)/SMA(200) of ratio, RSI of ratio, trend direction. Used for inter-market analysis: e.g. GDX/GLD, HYG/LQD, XLK/SPY.
Input Schema
{
"type": "object",
"properties": {
"ticker_a": {
"type": "string",
"description": "Numerator ticker, e.g. 'GDX'"
},
"ticker_b": {
"type": "string",
"description": "Denominator ticker, e.g. 'GLD'"
},
"period_days": {
"type": "integer",
"description": "Days of history (default 365, max 1825)"
}
},
"required": [
"ticker_a",
"ticker_b"
]
}Output Schema
{
"type": "object",
"properties": {
"pair": {
"type": "string"
},
"current_ratio": {
"type": "number"
},
"ratio_sma50": {
"type": "number"
},
"ratio_sma200": {
"type": "number"
},
"ratio_rsi_14": {
"type": "number"
},
"trend": {
"type": "string"
},
"period_change_pct": {
"type": "number"
},
"signals": {
"type": "object"
},
"recent_values": {
"type": "array",
"items": {}
},
"data_points": {
"type": "number"
}
},
"additionalProperties": true
}π’get_key_levels(ticker)
Compute key price levels for a ticker: support/resistance zones (clustered swing highs/lows with touch counts = how often price reacted there), nearby round numbers, 50/200-day moving averages, and the 52-week high/low. Returns nearest levels above (resistance) and below (support) with distance %. Use these for concrete trigger/target/invalidation levels.
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'SPY'"
}
},
"required": [
"ticker"
]
}Output Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string"
},
"date": {
"type": "string"
},
"close": {
"type": "number"
},
"resistance": {
"type": "array",
"items": {}
},
"support": {
"type": "array",
"items": {}
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}π’get_intermarket(focus)
Intermarket compass β a first-pass read of the market environment through price-ratio lenses: asset-class rotation (bonds vs stocks, commodities), risk appetite (high-yield vs investment-grade credit, small vs large caps, cyclicals vs defensives), defensive flows (gold, utilities, yield-curve proxy) and the dollar. Each lens reports rising/falling vs its 50-day average plus the 20-day change; overall posture is risk_on, risk_off or mixed. Optional focus= ('gold'|'bonds'|'tech'|'commodities'|'equity'|'crypto') adds lenses specific to that asset class.
Input Schema
{
"type": "object",
"properties": {
"focus": {
"type": "string",
"enum": [
"gold",
"bonds",
"tech",
"commodities",
"equity",
"crypto"
],
"description": "Asset class being analysed β adds its specific lenses"
}
}
}Output Schema
{
"type": "object",
"properties": {
"questions": {
"type": "array",
"items": {}
},
"overall": {
"type": "string"
},
"votes": {
"type": "object"
},
"focus": {
"type": "object"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}π’get_market_breadth
S&P 500 market breadth: the percentage of index members above their 50-day and 200-day moving averages, with RSI, trend and 52-week range for each breadth series. A gauge of how broad the current advance or decline is.
Input Schema
{
"type": "object",
"properties": {}
}Output Schema
{
"type": "object",
"properties": {
"date": {
"type": "string"
},
"pct_above_50d_ma": {
"type": "object"
},
"pct_above_200d_ma": {
"type": "object"
}
},
"additionalProperties": true
}π’get_sentiment_data(type)
Get market sentiment indicators: CBOE Put/Call ratios (total, equity, index, VIX), AAII investor sentiment survey (bull/bear/neutral %), and VIX level. Useful for contrarian signals at extremes.
Input Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Which data: 'all' (default), 'put_call', 'vix'",
"enum": [
"all",
"put_call",
"vix"
]
}
}
}Output Schema
{
"type": "object",
"properties": {
"date": {
"type": "string"
},
"put_call": {
"type": "object"
}
},
"additionalProperties": true
}π’get_macro_context
Get macro market context: sector P/E ratios, sector performance, US Treasury rates (2Y/10Y/30Y), CPI inflation data. Also provides key inter-market ratios (HYG/LQD, TLT/SPY) from our price data.
Input Schema
{
"type": "object",
"properties": {}
}Output Schema
{
"type": "object",
"properties": {
"date": {
"type": "string"
},
"inter_market_ratios": {
"type": "object"
}
},
"additionalProperties": true
}π’get_crypto_context
Crypto market context for a technical read: BTC/ETH dominance and total/alt market cap, Fear & Greed sentiment, perp funding rate & open interest (positioning/leverage), and the Stablecoin Supply Ratio (dry powder). Use ONLY when analysing crypto assets (BTC, ETH, crypto ETFs). Background context, not the primary signal.
Input Schema
{
"type": "object",
"properties": {}
}Output Schema
{
"type": "object",
"properties": {
"date": {
"type": "string"
},
"market_structure": {
"type": "object"
},
"sentiment": {
"type": "object"
},
"positioning": {
"type": "object"
},
"liquidity": {
"type": "object"
},
"etf_flows": {
"type": "object"
},
"sources": {
"type": "object"
}
},
"additionalProperties": true
}π’get_instrument_info(instrument_id, ticker)
Get current information about a financial instrument: price, price changes, market state, 52-week range, earnings date. Provide either instrument_id (UUID) or ticker (e.g. 'AAPL').
Input Schema
{
"type": "object",
"properties": {
"instrument_id": {
"type": "string",
"description": "UUID of the financial instrument"
},
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'AAPL'"
}
}
}Output Schema
{
"type": "object",
"properties": {
"instrument_id": {
"type": "string"
},
"ticker": {
"type": "string"
},
"full_name": {
"type": "string"
},
"type": {
"type": "string"
},
"currency": {
"type": "string"
},
"current_price": {
"type": "number"
},
"price_changes": {
"type": "object"
},
"market_state": {
"type": "string"
},
"extended_hours_price": {
"type": "number"
},
"extended_hours_change_pct": {
"type": "number"
},
"session_note": {
"type": "string"
},
"market_cap": {
"type": "number"
},
"sector": {
"type": "string"
},
"industry": {
"type": "string"
},
"fifty_two_week_high": {
"type": "number"
},
"fifty_two_week_low": {
"type": "number"
},
"next_earnings_date": {
"type": "string"
},
"price_updated_at": {
"type": "string"
}
},
"additionalProperties": true
}π’get_event_stats(ticker)
Historical base rates for the technical events firing on a ticker today (e.g. RSI below 30, golden/death cross, new 52-week high/low). For each active event: the forward returns (1w/1m/3m/6m/1y) seen historically after similar events across the US universe, with the sample size and an unconditional baseline to compare against. Answers 'what usually happened after this'; small samples warrant caution.
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'SPY'"
}
},
"required": [
"ticker"
]
}Output Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string"
},
"active_events": {
"type": "array",
"items": {}
},
"note": {
"type": "string"
}
},
"additionalProperties": true
}π’public_instrument_news(ticker, days_back, limit)
Latest news for a ticker β headline, a short summary and a mandatory source_url to the original article (never the full third-party text). Use to ground a market read in recent, attributable news.
Input Schema
{
"type": "object",
"properties": {
"ticker": {
"type": "string",
"description": "Ticker symbol, e.g. 'NBIS', 'AAPL', 'GDX'"
},
"days_back": {
"type": "integer",
"description": "How many days back to fetch (default 30, max 90)"
},
"limit": {
"type": "integer",
"description": "Max articles to return (default 30, max 60)"
}
},
"required": [
"ticker"
]
}Output Schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {}
}
},
"additionalProperties": true
}π’public_search_news(query, days_back, limit, min_similarity)
Semantic news search across tracked instruments β returns matching items with a short summary and a mandatory source_url (never full article text).
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Natural language search query describing ONE semantic angle, e.g. 'Nebius Meta deal contract $27 billion compute capacity'"
},
"days_back": {
"type": "integer",
"description": "How many days back to search (default 30, max 90)"
},
"limit": {
"type": "integer",
"description": "Max results to return (default 10, max 20)"
},
"min_similarity": {
"type": "number",
"description": "Minimum similarity threshold 0.0-1.0 (default 0.40)"
}
},
"required": [
"query"
]
}Output Schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {}
}
},
"additionalProperties": true
}π’get_ta_methodology(query, top_k)
Look up MarketCrew's distilled technical-analysis methodology β our own synthesized notes on how to read indicators, structure, levels and regime β to ground an answer in a consistent framework. Returns short passages in our words with relevance scores.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What you want the methodology on, e.g. 'reading RSI in a trend'"
},
"top_k": {
"type": "integer",
"description": "How many passages to return (default 6)"
}
},
"required": [
"query"
]
}Output Schema
{
"type": "object",
"properties": {
"error": {
"type": "string"
},
"message": {
"type": "string"
}
},
"additionalProperties": true
}π’get_monitoring_options(intent)
Returns available options for ongoing monitoring β price alerts, idea tracking, watchlist monitoring, scheduled digests β with setup instructions and channels (email/Telegram). Call only when the user asks for ongoing monitoring or notifications; never needed to answer a question.
Input Schema
{
"type": "object",
"properties": {
"intent": {
"type": "string",
"enum": [
"alert",
"track_idea",
"watchlist",
"digest",
"memory"
],
"description": "Which monitoring the user asked for."
}
}
}Output Schema
{
"type": "object",
"properties": {
"intent": {
"type": "string"
},
"message": {
"type": "string"
},
"register_url": {
"type": "string"
},
"channels": {
"type": "array",
"items": {}
}
},
"additionalProperties": true
}Recommended Prompts
public_search_newspublic_search_newsget_price_historyget_price_historypublic_search_newsget_price_historyCommunity
Evidence