accueil / serveurs / Recherche & Web / com.firmtape/spx-options-gamma
com.firmtape/spx-options-gamma
serveur MCP (Model Context Protocol) · firmtape 0.2.8
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que com.firmtape/spx-options-gamma est sûr ?
Au dernier audit MCP Hub, le serveur MCP « com.firmtape/spx-options-gamma » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 14 outils
- fetch≈ 242 tokens
Retrieve the full text of one FirmTape document by the id `search` returned: `session:YYYY-MM-DD` for a finished trading session, `page:/path` for an explainer or research page. A FirmTape URL or a bare YYYY-MM-DD trading day is accepted too. Use when: you hold an id from `search`, or a client that only speaks search/fetch (ChatGPT). Not for: structured numbers — get_session and get_levels answer the same day with fields instead of prose. Limits: public FirmTape documents only; long pages are truncated with a link to the rest.
Paramètres, retour & exemple (1)
Paramètresid· string · requis
An id from `search`, a FirmTape URL, or a YYYY-MM-DD trading day
Exemple d'appel{"name": "fetch", "arguments": {"id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_coverage≈ 797 tokens
What the free FirmTape SPX archive holds: the first and last finished session, how many sessions, and the NYSE trading days in that span that are MISSING from it (weekdays minus US market holidays; early closes count as trading days), optionally inside a from/to window. Use when: 'is 2024-03-15 in the archive', 'how complete is 2023', 'which days are missing' before a study that needs every session. Not for: the newest days themselves (list_sessions) or any measurement (get_session). Limits: the trading calendar covers 2022 to 2026; missing days are reported, never filled in.
Paramètres, retour & exemple (2)
Paramètresto· string · optionnel
Last day of the window, YYYY-MM-DD (default: the archive's last session)from· string · optionnel
First day of the window, YYYY-MM-DD (default: the archive's first session)
Exemple d'appel{"name": "get_coverage", "arguments": {"to": "texte", "from": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"window": {}, "missing": [], "summary": "texte", "calendar": "texte", "sessions": 1, "unchecked": [], "data_as_of": "texte", "last_session": "texte", "trading_days": 1, "first_session": "texte", "server_version": "texte"}} - get_events≈ 972 tokens
The scheduled US market events for a window of days, from the same calendar the FirmTape terminal draws: FOMC decisions, press conferences and minutes, CPI, payrolls, PCE, PPI, GDP, retail sales, JOLTS, ISM, the Fed Chair's speeches, the Beige Book, 10/20/30-year Treasury auctions, mega-cap earnings, monthly and quarterly expiration and early closes. Each event carries its minute in ET, a link to its source, and, where the archive has measured it, what usually follows, what the dealer book did, and for the releases the forecast, the prior and the actual print. Use when: 'what is on the calendar this week', 'when is the next FOMC', 'is there anything at 14:00 today'. Not for: session measurements (get_session) or levels (get_levels). Limits: US only, 2019 to about a year ahead, at most 31 days per call.
Paramètres, retour & exemple (3)
Paramètresto· string · optionnel
Last day, YYYY-MM-DD (default from + 6 days; at most 31 days)from· string · optionnel
First day, YYYY-MM-DD (default today, ET)impact· string · optionnel · high | med | low
Lowest impact to include (default med: high and medium)
Exemple d'appel{"name": "get_events", "arguments": {"to": "texte", "from": "texte", "impact": "high"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"to": "texte", "from": "texte", "events": [], "summary": "texte", "data_as_of": "texte", "server_version": "texte"}} - get_gex_profile≈ 1904 tokens
The SPX dealer gamma LADDER for one minute of a finished session: gamma by strike around spot, the level set, and the heaviest strikes. Read by default as the VOLUME book, the one the terminal's chart draws; also as the MEASURED book (signed off the trade tape, FirmTape's own read) or the OPEN_INTEREST convention every other public GEX chart draws — the same minute through three lenses. The level set is the volume book's whichever ladder is read. Use when: the question is about SHAPE — where gamma sits, how heavy a wall is, how far the three conventions disagree — or about one moment inside a session rather than the day as a whole. Not for: a day's headline numbers (get_session), the level set alone (get_levels), or movement across days (get_level_history). ES: pass symbol ES (or MES) for ES strikes, the SPX ladder moved by the ES basis at the frame's minute. Limits: finished sessions only, one frame every 5 minutes (a requested minute snaps back to the frame at or before it), published window ±2.5% of spot; the three books are not comparable in magnitude. Measurements only, no buy/sell signals.
Paramètres, retour & exemple (7)
Paramètresday· string · requis
A finished trading day, YYYY-MM-DD. Call list_sessions if unsure which days exist.book· string · optionnel · measured | open_interest | volume
Which book's ladder to read (default volume, the chart's book). open_interest is the convention rival tools print.minute· string · optionnel
ET minute HH:MM inside 09:30-16:00. Snaps back to the frame at or before it, so quote the minute the answer returns. Default: the last frame of the session.symbol· string · optionnel
SPX (default), or ES / MES: every strike, spot and level moved by the ES basis at the frame's minute. A day without a measured basis answers with SPX strikes and says so.contract· string · optionnel
Optional dated contract for a future symbol. Default is the front contract; in the two weeks before a roll the next one is measured too.expiry_scope· string · optionnel · all | 0dte
all = every expiry the session's book was pulled with (default); 0dte = the same-day slice alonestrikes_around_spot· integer · optionnel
How many strikes to return each side of spot (default 20). Raise it for the whole published window, which is +/-2.5% of spot.
Exemple d'appel{"name": "get_gex_profile", "arguments": {"day": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"day": "texte", "book": "texte", "note": "texte", "spot": 1, "unit": "texte", "basis": {}, "levels": {}, "minute": "texte", "replay": "texte", "symbol": "texte", "strikes": [], "summary": "texte"}} - get_level_history≈ 1845 tokens
How the SPX dealer-positioning levels MOVED across recent finished sessions: the zero-gamma flip, call wall and put wall day by day, each session's change from the one before, and summary statistics for the window (flip range, net drift, mean daily movement, how often price closed above the flip). Use when: the question is about a trend or a window — has the flip been climbing, how far does it travel in a week — instead of calling get_levels once per day. Not for: one day (get_levels / get_session) or anything inside a session (get_gex_profile). ES: pass symbol ES (or MES) for the same series in E-mini prices, each session moved by its own ES basis. Limits: finished sessions only, max 40 per call; days absent from the archive are reported in `missing`, never interpolated. Measurements only — no buy/sell signals, no forecast.
Paramètres, retour & exemple (5)
Paramètresto· string · optionnel
End of an explicit window, YYYY-MM-DD (inclusive). Defaults to the newest finished session.days· integer · optionnel
How many of the most recent finished sessions to read (default 20, max 40). Ignored when `from` is given.from· string · optionnel
Start of an explicit window, YYYY-MM-DD (inclusive). Overrides `days`.symbol· string · optionnel
SPX (default), or ES / MES: each session's levels and close moved by that session's ES basis at its close. Sessions without a measured basis are left out and listed in no_basis; with fewer than two measured, the answer is SPX's and says so.contract· string · optionnel
Optional dated contract for a future symbol. Default is the front contract; in the two weeks before a roll the next one is measured too.
Exemple d'appel{"name": "get_level_history", "arguments": {"to": "texte", "days": 1, "from": "texte", "symbol": "texte", "contract": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"to": "texte", "from": "texte", "note": "texte", "basis": {}, "symbol": "texte", "missing": [], "summary": "texte", "movement": {}, "no_basis": [], "sessions": [], "data_as_of": "texte", "server_version": "texte"}} - get_levels≈ 1238 tokens
Only the dealer-positioning level set for one finished SPX session: zero-gamma flip, call wall, put wall, plus where the session closed relative to them. A strict subset of get_session. Use when: the levels are the whole question and the rest of the session would be noise. Not for: OHLC, flip crossings, net-gamma percentile or ATM IV (get_session); more than one day (get_level_history); gamma by strike (get_gex_profile). ES: pass symbol ES (or MES) for ES gamma levels, the SPX levels moved by the day's ES basis (future minus index from put-call parity; no CME data); NQ levels come from get_symbol_gamma. Limits: finished sessions only, one day per call.
Paramètres, retour & exemple (3)
Paramètresday· string · requis
A finished trading day, YYYY-MM-DD. Weekends, holidays and days before coverage return an error — call list_sessions to see which days exist.symbol· string · optionnel
SPX (default), or ES / MES for the E-mini: the SPX book moved by the day's ES basis (future minus index from put-call parity). A day without a measured basis answers with SPX index levels and says so.contract· string · optionnel
Optional dated contract for a future symbol. Default is the front contract; in the two weeks before a roll the next one is measured too.
Exemple d'appel{"name": "get_levels", "arguments": {"day": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"day": "texte", "note": "texte", "basis": {}, "close": 1, "levels": {}, "replay": "texte", "symbol": "texte", "summary": "texte", "data_as_of": "texte", "server_version": "texte", "close_minus_flip": 1, "requested_symbol": "texte"}} - get_market_moving_minutes≈ 1094 tokens
The minutes of one finished SPX session that the tape itself marked as market-moving, with what stood beside each: the scheduled event that owned the minute, the moment two or more public news desks carried an item (timed to the second, labelled by class, never the headline's text), or the honest reading that no headline existed and the dealer book moved on its own. Each minute carries the index move over the next 5 and 15 minutes and the flip at that minute. Use when: 'what moved SPX at 14:25 on 2026-09-10', 'were there news-driven minutes yesterday', 'which afternoon moves had no headline'. Not for: the scheduled calendar itself (get_events) or the day's levels (get_levels). Limits: finished sessions only (the live day is part of the paid live stream), sessions from 2022-04 on, ET clock.
Paramètres, retour & exemple (2)
Paramètresday· string · optionnel
The session, YYYY-MM-DD (default: the last finished session)tape_only· boolean · optionnel
Only minutes the tape confirmed (default true; false adds the flashes the tape ignored and the calendar events it did not react to)
Exemple d'appel{"name": "get_market_moving_minutes", "arguments": {"day": "texte", "tape_only": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"day": "texte", "minutes": [], "summary": "texte", "data_as_of": "texte", "server_version": "texte"}} - get_session≈ 1687 tokens
Everything FirmTape measured for ONE finished SPX session: OHLC and VWAP, the zero-gamma flip and how often price crossed it, call/put walls, net-gamma percentile, ATM IV at the open. Use when: you want a whole day in a single call. Not for: the level set alone (get_levels returns the same day, narrower), how the levels moved across days (get_level_history), or gamma by strike (get_gex_profile). ES: pass symbol ES (or MES) for the same day in E-mini prices, the SPX book moved by the day's ES basis. Limits: finished sessions only, one day per call. Measurements only — FirmTape deliberately publishes no buy/sell signals.
Paramètres, retour & exemple (3)
Paramètresday· string · requis
A finished trading day, YYYY-MM-DD. Weekends, holidays and days before coverage return an error — call list_sessions to see which days exist.symbol· string · optionnel
SPX (default), or ES / MES for the E-mini: the SPX book moved by the day's ES basis (future minus index from put-call parity). A day without a measured basis answers with SPX index levels and says so.contract· string · optionnel
Optional dated contract for a future symbol. Default is the front contract; in the two weeks before a roll the next one is measured too.
Exemple d'appel{"name": "get_session", "arguments": {"day": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"day": "texte", "note": "texte", "basis": {}, "events": [], "replay": "texte", "symbol": "texte", "session": {}, "summary": "texte", "data_as_of": "texte", "server_version": "texte", "requested_symbol": "texte", "dealer_positioning": {}}} - get_symbol_gamma≈ 548 tokens
The latest dealer gamma picture for a symbol OTHER than the SPX archive: index, ETF and stock option chains (for example QQQ, SPY, IWM, NDX, RUT, NVDA, TSLA, GLD, TLT), and the E-mini futures ES, NQ and RTY (MES, MNQ, M2K): ES/NQ/RTY are the SPX/NDX/RUT books moved by the day's basis (future minus index, from put-call parity on the index options; no CME data). Returns spot, the zero-gamma flip, call and put walls and net gamma for the VOLUME book and the OPEN_INTEREST book, the heaviest strikes, a per-expiry table and a trust grade. Use when: the question is about a ticker's gamma exposure, flip or walls right now or at the last close, including ES, NQ or RTY gamma levels. Not for: SPX or ES history or a past date (get_session, get_levels, get_gex_profile, which take symbol ES for past days); anything inside a past session. Limits: latest snapshot only (rebuilt every few minutes in session hours); calls count as dealer-long and puts as dealer-short, which is a convention, not a measurement, and on single stocks it is an approximation (see trust.grade: A and B are indices and ETFs, C and D single stocks). Units: US dollars of dealer delta per 1% move.
Paramètres, retour & exemple (2)
Paramètressymbol· string · requis
The ticker, or ES / MES / NQ / MNQ / RTY / M2K (a dated code such as ESZ26 or RTYZ26 works too). Carried symbols are listed at https://firmtape.com/gex; an unknown ticker returns an error naming that page.contract· string · optionnel
Optional dated contract for a future symbol. Default is the front contract; in the two weeks before a roll the next one is measured too.
Exemple d'appel{"name": "get_symbol_gamma", "arguments": {"symbol": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_watched_sites≈ 974 tokens
Oil refineries, export terminals, LNG plants, fuel depots and oil ports that FirmTape Geo watches by satellite, mainly in Russia, Crimea and the Gulf: NASA FIRMS thermal anomalies at each site measured against that site's own normal, dated Sentinel-2 images (true colour and SWIR, latest and before/after each anomaly) and, for ports, large vessels counted by Sentinel-1 radar as a weekly median against the port's own trailing 8 weeks. Every site has a page to cite. Use when: 'was there a fire at the Tuapse refinery', 'which Russian refineries had thermal anomalies this month', 'how many tankers are waiting at Fujairah'. Not for: strike confirmation. A thermal anomaly is heat seen at a pass (flaring, an upset or a fire read alike); fires put out between passes are missed, and a quiet site is no reading, never proof nothing happened. Images are context, not damage evidence. Limits: the curated list only (about 110 sites); FIRMS from the day each site's watch began.
Paramètres, retour & exemple (4)
Paramètresq· string · optionnel
Part of a site's name, e.g. 'Tuapse'id· string · optionnel
One site's id (from a list call) for its full readingskind· string · optionnel · refinery | terminal | lng | depot | port
Only this kind of sitecountry· string · optionnel
Only this country, ISO 3166-1 alpha-2 (e.g. RU, SA, AE)
Exemple d'appel{"name": "get_watched_sites", "arguments": {"q": "texte", "id": "texte", "kind": "refinery", "country": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"sites": [], "detail": {}, "summary": "texte", "data_as_of": "texte", "attribution": [], "server_version": "texte"}} - list_sessions≈ 478 tokens
List the finished SPX trading sessions in the free FirmTape archive, newest first, with the total count and how far back coverage runs. Every listed day can be fetched with get_session / get_levels and replayed free at FirmTape. Use when: you need to know which days exist, or the size and span of the archive, before asking about one. Not for: any measurement about a day — call get_session with that date instead. Limits: finished sessions only (today's session appears after the close), max 50 days per call.
Paramètres, retour & exemple (1)
Paramètreslimit· integer · optionnel
How many days to return (default 10, max 50)
Exemple d'appel{"name": "list_sessions", "arguments": {"limit": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"newest": [], "summary": "texte", "data_as_of": "texte", "server_version": "texte", "total_sessions": 1}} - screen_sessions≈ 1759 tokens
Filter the finished SPX sessions in the FirmTape archive by their closing measurements and count them: regime at the close and at the open, zero-gamma flip crossings, direction and size of the move, net-gamma percentile, 0DTE ATM IV at the open, the calendar event, weekday and year. Returns how many sessions match, two shares over them (closed above the flip, mean absolute move) printed next to the same shares over the whole archive, and the matched days. A matched share close to the archive's share is a base rate, not a pattern. Use when: 'how often did FOMC days close in negative gamma', 'the days that closed below the flip with the percentile under 20', 'largest moves on CPI days since 2024'. Not for: one day's numbers (get_session), gamma by strike (get_gex_profile), or testing a rule with out-of-sample statistics (the Lab). Limits: counts over finished sessions' closing measurements only, no per-strike data; at most 50 sessions listed per call. Counts, not investment advice.
Paramètres, retour & exemple (12)
Paramètresiv· string · optionnel · lt10 | 10-15 | 15-20 | gt20
0DTE ATM implied vol at the open: under 10%, 10-15%, 15-20%, 20% and abovedir· string · optionnel · up | down
Direction of the open-to-close movedow· string · optionnel · mon | tue | wed | thu | fri
Day of the weekgpct· string · optionnel · lt20 | 20-50 | 50-80 | gt80
Net-gamma percentile at the close: under 20, 20 to 50, 50 to 80, 80 and abovemove· string · optionnel · lt05 | gt05 | gt1 | gt2
Size of the open-to-close move: under 0.5%, 0.5% or more, 1% or more, 2% or moreopen· string · optionnel · pos | neg
Regime at the open: pos = opened above the flip, neg = belowsort· string · optionnel · newest | oldest | move | gpct
Order of the sessions list: newest (default), oldest, move (largest absolute move first), gpct (highest percentile first)year· string · optionnel
Calendar year, e.g. 2025; a year outside the archive is droppedcross· string · optionnel · 0 | 1 | 2
Flip crossings in the session: 0 = none, 1 = exactly one, 2 = two or moreevent· string · optionnel · fomc | cpi | nfp | pce | ppi | gdp | retail | jolts
Event the day carried: fomc (decision days), cpi, nfp (payrolls), pce, ppi, gdp, retail (retail sales), jolts, ism, claims, auctions (Treasury), fed (speeches, Beige Book), opex (expiration), vix (VIX settlement), umich, confidence, eia, halts (halt in a top name), housing (housing and durables), refunding, rebalances (index), none (no event of these kinds)limit· integer · optionnel
How many matched sessions to list (default 20, max 50); the counts always cover every matchregime· string · optionnel · pos | neg
Regime at the close: pos = closed above the zero-gamma flip, neg = below
Exemple d'appel{"name": "screen_sessions", "arguments": {"iv": "lt10", "dir": "up", "dow": "mon", "gpct": "lt20", "move": "lt05", "open": "pos"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"url": "texte", "label": "texte", "shares": {}, "source": "texte", "filters": {}, "matched": 1, "summary": "texte", "archived": 1, "screened": 1, "sessions": [], "truncated": true, "data_as_of": "texte"}} - search≈ 280 tokens
Search FirmTape for documents about SPX dealer positioning: the explainer pages, the dated research measurements, and the archive of finished trading sessions. Returns ids to pass to `fetch`. A date in the query ("2026-08-24", "August 24 2026", "August 2026") finds the session or sessions for it. Clients that can call the specific tools should prefer list_sessions / get_session / get_levels / get_level_history / screen_sessions instead — those return structured numbers rather than documents. Not for: fetching a document you already have the id for (`fetch`) or any measurement you can name a date for. Limits: FirmTape's own public pages and finished sessions only, ranked by keyword — it searches no other site.
Paramètres, retour & exemple (1)
Paramètresquery· string · requis
A topic, a question, or a trading date
Exemple d'appel{"name": "search", "arguments": {"query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - similar_days≈ 1327 tokens
Find the finished SPX sessions whose state at the same time of day was nearest to one moment, and what the rest of each of those days did. The state is eight volume-book measurements: distance from the zero-gamma flip, move since the open, distance from the session mean, net-gamma percentile, 0DTE ATM IV and its change since the open, the range so far, and the time spent above the flip. Returns the nearest days (one moment each, with a replay link), their shares (rest of day up, mean move to the close, closed above the flip) and the SAME shares over every archived moment in the same quarter-hours: a matched share close to the archive's is a base rate, not a pattern. Use when: 'what happened on days like this', 'days that looked like 2026-10-14 at 11:00'. Not for: filtering by named conditions such as FOMC or a percentile band (screen_sessions), or testing a rule out of sample (the Lab). Limits: finished sessions from 09:45 to 15:30 ET, SPX only. Similar on these eight numbers and nothing else; history, not a forecast and not investment advice.
Paramètres, retour & exemple (4)
Paramètresk· integer · optionnel
How many similar days to return (default 15)day· string · requis
The trading day of the moment, YYYY-MM-DDlanes· object · optionnel
Only for a session still running, which the archive does not hold yet: the day's minute series from 09:30, one entry per minute (volume-book flip and percentile). FirmTape's own terminal sends these.minute· string · optionnel
The ET minute, HH:MM; default the last minute with a full state (the close for a finished day)
Exemple d'appel{"name": "similar_days", "arguments": {"day": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"day": "texte", "days": [], "state": {}, "minute": "texte", "window": "texte", "archive": {}, "matched": {}, "summary": "texte", "features": {}, "data_as_of": "texte", "server_version": "texte"}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».