OptionsBell Options Flow
Unusual options activity on 7,000+ US stocks: top prints, streaks, IV rank, sentiment, sectors.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin get_symbol_flow
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"options-flow": {
"url": "https://optionsbell.com/mcp"
}
}
}Remote-Endpunkte
https://optionsbell.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (13)
🟢ping
Liveness check for the OptionsBell MCP server. No API key required.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_dataset_stats
Discover what data is available before querying: date ranges, contract counts, symbol counts and sector coverage for the unusual-activity dataset and its daily aggregates. Call this first when unsure about available history.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡get_unusual_activity(symbols, type, min_voloi, min_premium, min_iv, ...)
Contract-level unusual options activity scan across 7,000+ US stocks (the dataset behind OptionsBell alerts). Filter by symbols, side and thresholds: Vol/OI ratio, premium (USD), IV, days-to-expiration, volume, open interest. Rows include strike, expiry, volume, open interest, IV, delta, sector and an estimated premium. Use for questions like 'what unusual put buying hit TSLA today?'
Eingabe-Schema
{
"type": "object",
"properties": {
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
},
"type": {
"description": "Side: c = calls, p = puts (default all).",
"type": "string",
"enum": [
"c",
"p",
"all"
]
},
"min_voloi": {
"description": "Minimum volume/open-interest ratio, e.g. 5.",
"type": "number"
},
"min_premium": {
"description": "Minimum estimated premium in USD, e.g. 250000.",
"type": "number"
},
"min_iv": {
"description": "Minimum implied volatility in percent, e.g. 60.",
"type": "number"
},
"max_dte": {
"description": "Maximum days to expiration, e.g. 30.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"min_volume": {
"description": "Minimum contract volume.",
"type": "number"
},
"min_oi": {
"description": "Minimum open interest.",
"type": "number"
},
"raw": {
"description": "true = skip the always-on base floor (Vol/OI>=1.5, OI>=100, premium>=$25k).",
"type": "boolean"
},
"since": {
"description": "ISO-8601 timestamp; only contracts last seen intraday at or after this time (for polling).",
"type": "string"
},
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"description": "Max rows (default 300).",
"type": "integer",
"minimum": 1,
"maximum": 1000
},
"offset": {
"description": "Rows to skip for paging; the response reports filtered_total and has_more.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_symbol_flow(symbol, type, min_voloi, min_premium, date, ...)
Every unusual contract on a single ticker, ranked by score (Vol/OI weighted by premium). Use when the question is about one specific stock's unusual options flow.
Eingabe-Schema
{
"type": "object",
"properties": {
"symbol": {
"type": "string",
"minLength": 1,
"maxLength": 10,
"description": "Single ticker, e.g. 'TSLA'."
},
"type": {
"type": "string",
"enum": [
"c",
"p",
"all"
]
},
"min_voloi": {
"type": "number"
},
"min_premium": {
"type": "number"
},
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500
}
},
"required": [
"symbol"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_top_prints(date, type, symbols, min_premium, limit, ...)
The day's biggest options bets ranked by estimated premium - the same view OptionsBell alert emails lead with. Perfect for 'what were the largest options trades today?'
Eingabe-Schema
{
"type": "object",
"properties": {
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"type": {
"type": "string",
"enum": [
"c",
"p",
"all"
]
},
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
},
"min_premium": {
"description": "Minimum premium in USD (default 25000).",
"type": "number"
},
"limit": {
"description": "Max rows (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"offset": {
"description": "Rows to skip for paging; the response reports filtered_total and has_more.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_flow_history(symbol, date_from, date_to, limit)
End-of-day series of one symbol's UNUSUAL options flow (aggregated from the contracts that passed the unusual filter - not the full tape): daily call/put volume, premium, C/P ratios, average IV, net delta and the consecutive-day streak. ~75 trading days - the series behind back-tests and 'how has unusual flow on NVDA developed?'
Eingabe-Schema
{
"type": "object",
"properties": {
"symbol": {
"type": "string",
"minLength": 1,
"maxLength": 10,
"description": "Single ticker, e.g. 'TSLA'."
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"description": "Max rows, newest first (default 90).",
"type": "integer",
"minimum": 1,
"maximum": 200
}
},
"required": [
"symbol"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_flow_streaks(min_streak, side, symbols, date, min_volume, ...)
Symbols with unusual options activity on N+ consecutive trading days, with the dominant side (call/put). Persistent unusual flow is a stronger signal than a single print - use for 'where does money keep showing up?'
Eingabe-Schema
{
"type": "object",
"properties": {
"min_streak": {
"description": "Minimum consecutive days (default 3).",
"type": "integer",
"minimum": 1,
"maximum": 365
},
"side": {
"description": "Dominant side by C/P volume ratio.",
"type": "string",
"enum": [
"call",
"put",
"all"
]
},
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
},
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"min_volume": {
"type": "number"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 200
},
"offset": {
"description": "Rows to skip for paging; the response reports filtered_total and has_more.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_expiry_concentration(date, symbols)
Where the day's unusual premium sits along the expiry axis, in DTE buckets (0-7, 8-30, 31-90, 90+) with call/put splits. Heavy short-dated premium reads as event bets; heavy long-dated as positioning.
Eingabe-Schema
{
"type": "object",
"properties": {
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_flow_sentiment(symbol, side, signal_only, min_strength, min_premium, ...)
Bullish/bearish classification of each symbol's unusual flow with a 0-9 strength score, based on call/put volumes, premium and net delta. Pass a symbol for that ticker's sentiment time series (date_from, date_to, limit apply); omit it for the cross-market snapshot (filterable by sector, side, minimum strength or premium).
Eingabe-Schema
{
"type": "object",
"properties": {
"symbol": {
"description": "Single ticker for its sentiment series; omit for the market-wide snapshot.",
"type": "string"
},
"side": {
"description": "Only rows classified with this signal side (snapshot only).",
"type": "string",
"enum": [
"bullish",
"bearish"
]
},
"signal_only": {
"description": "Only rows with an active bullish/bearish signal (snapshot only).",
"type": "boolean"
},
"min_strength": {
"description": "Snapshot only; rows without a signal count as 0.",
"type": "integer",
"minimum": 0,
"maximum": 9
},
"min_premium": {
"description": "Minimum call+put premium in USD (snapshot only).",
"type": "number"
},
"sector": {
"description": "GICS sector name, e.g. 'Information Technology' (snapshot only).",
"type": "string"
},
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
},
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500
},
"offset": {
"description": "Snapshot only. Rows to skip for paging; the response reports filtered_total and has_more.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡get_iv_rank(symbol, side, min_rank, max_rank, lookback_days, ...)
IV rank and IV percentile per symbol against its rolling history (needs 20+ days). Pass a symbol for its IV-rank time series (lookback_days, limit apply); omit it for a ranked snapshot (e.g. side=put&min_rank=0.8 finds elevated put IV; side=both ranks by the higher of call/put IV rank).
Eingabe-Schema
{
"type": "object",
"properties": {
"symbol": {
"description": "Single ticker for its IV-rank series; omit for the snapshot.",
"type": "string"
},
"side": {
"description": "Snapshot only (default both).",
"type": "string",
"enum": [
"call",
"put",
"both"
]
},
"min_rank": {
"description": "Snapshot only.",
"type": "number",
"minimum": 0,
"maximum": 1
},
"max_rank": {
"description": "Snapshot only.",
"type": "number",
"minimum": 0,
"maximum": 1
},
"lookback_days": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡get_oi_changes(symbol, symbols, side, min_prev_oi, min_change_pct, ...)
Day-over-day open-interest change per symbol (total, calls, puts) - fresh positioning being built or unwound. Pass a symbol for its OI-change series (date_from, date_to, limit apply); omit it for market-wide gainers/losers.
Eingabe-Schema
{
"type": "object",
"properties": {
"symbol": {
"description": "Single ticker for its OI-change series; omit for the market-wide view.",
"type": "string"
},
"symbols": {
"description": "Comma-separated tickers, e.g. 'AAPL,NVDA,TSLA'.",
"type": "string"
},
"side": {
"description": "Market-wide view only.",
"type": "string",
"enum": [
"gainers",
"losers",
"all"
]
},
"min_prev_oi": {
"description": "Minimum prior-day OI to filter low-base noise (default 1000; market-wide only).",
"type": "number"
},
"min_change_pct": {
"description": "Minimum absolute day-over-day change, e.g. 0.5 = 50% (market-wide only).",
"type": "number"
},
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500
},
"offset": {
"description": "Market-wide view only. Rows to skip for paging; the response reports filtered_total and has_more.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_sector_flow(date, limit)
Which sectors the day's unusual options premium is concentrating in: total premium, volume, average net delta and bullish/bearish symbol counts per sector label (11 GICS sectors plus Diversified, Unknown and Unclassified; only labels with activity, at most 14 rows).
Eingabe-Schema
{
"type": "object",
"properties": {
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"description": "Default 50 returns every group.",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_market_regime(date, date_from, date_to, limit)
Market-wide breadth of unusual flow per trading day: breadth score 0-100, aggregate call/put ratio, regime label (bullish/bearish/mixed) and signal counts. Use for 'what's the overall tone of the unusual-flow tape?'
Eingabe-Schema
{
"type": "object",
"properties": {
"date": {
"description": "Trading day, YYYY-MM-DD. Defaults to the latest available day.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_from": {
"description": "Range start, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"date_to": {
"description": "Range end, YYYY-MM-DD inclusive.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"limit": {
"description": "Max daily rows, newest first (default 30).",
"type": "integer",
"minimum": 1,
"maximum": 365
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis