OptionsBell Options Flow

Unusual options activity on 7,000+ US stocks: top prints, streaks, IV rank, sentiment, sectors.

사용해야 할까요

품질 및 안전성

A
설명 품질
98%
스키마 완전성
80%
이름 품질
98%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (1)

  • LOWTool 'get_symbol_flow' description lacks action verbget_symbol_flow에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,366토큰 (도구 정의)
~2.1 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.63%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "options-flow": {
      "url": "https://optionsbell.com/mcp"
    }
  }
}

원격 엔드포인트

https://optionsbell.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (13)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢ping

Liveness check for the OptionsBell MCP server. No API key required.

입력 스키마

{
  "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.

입력 스키마

{
  "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?'

입력 스키마

{
  "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.

입력 스키마

{
  "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?'

입력 스키마

{
  "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?'

입력 스키마

{
  "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?'

입력 스키마

{
  "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.

입력 스키마

{
  "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).

입력 스키마

{
  "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).

입력 스키마

{
  "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.

입력 스키마

{
  "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).

입력 스키마

{
  "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?'

입력 스키마

{
  "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#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 13개
검증됨버전이 기록되지 않음도구 13개