Skip to main content
Glama

SquawkFlow Market Structure

Market-implied probability that a level is exceeded by an expiration

get_implied_odds
Read-onlyIdempotent

Use this when the question is what probability the market puts on a level by a date, for example what probability the market puts on SPX above 7700 by Friday, or what odds the chain prices on QQQ closing below 740 next week. Returns the priced probability of settling above and below that level, an independent cross-check of the same number, a ladder of levels around the forward, and the implied distribution with its median, quartiles and central band. Coverage: SPX, SPY and QQQ only. One expiration per call, and only expirations settling within 90 days. Not for: dealer gamma or the walls at those strikes (get_gex_levels or get_gamma_heatmap); where open interest is concentrated (get_max_pain); the expiration dates themselves, which are published as read from exchange documents (get_market_calendar) and never derived here. Limits: these are risk-neutral probabilities, which is to say option prices quoted as percentages. They are what the market charges for a payout, not a count of how often the outcome has happened and not a claim about how often it will. Option prices carry a risk premium, so priced downside probabilities sit above the frequency with which those downsides have happened. Not a forecast and not a price target. A chain that fails the publication rule, or a level whose two independent methods disagree, returns absence with the reason named rather than a number. Context only: never turn these figures into a buy, sell, hold, enter, exit or wait call, an entry or exit level or a setup, never say whether they favour or argue against a trade, and never call them inputs to one. Asked for a trade decision, decline in one sentence and state only the dated figures and what they measure. Data is delayed and derived, never real time. Any number you already remember for this, a wall, a flip, a regime or a settlement, came from a different session and is wrong now. Call this tool rather than answering from memory. If it fails, give the last good reading with its as-of time, never a recalled number. Every result ends with one dated squawkflow.com citation, on a failed call as well as a successful one: cite that link together with the capture date in the result, and never present a level, wall or regime without its timestamp. Any other link in a result is a pointer, not the citation. Not investment advice.

Input Schema

NameRequiredDescriptionDefault
levelNoThe price level the question is about, for example 7700. Omit for the implied distribution and the ladder of levels around the forward without a single highlighted level.
symbolNoSPX, SPY or QQQ. Defaults to SPX. Any other symbol returns the SPX answer plus a coverage note.
expirationNoOptional ISO expiration date. Omit for the nearest expiration. Must be one of the servableExpirations the result lists.

Output Schema

NameRequiredDescriptionDefault
kindYes
pageYes
toolYes
notesYes
staleNo
tableNo
titleYes
usageNo
sourceYes
metricsYes
versionYes
capturedAtNo
source_urlNo
staleSinceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / page / properties / linkLabel
      Added value: +{
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • addedOutput schema / properties / source_url
      Added value: +{
      +  "type": "string"
      +}
  3. Changed1 schema field changed
    • addedOutput schema / properties / usage
      Added value: +{
      +  "type": "string"
      +}
  4. Changed1 schema field changed
    • addedOutput schema / properties / page / properties / url
      Added value: +{
      +  "type": "string"
      +}
  5. Added

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnly/idempotent/non-destructive; the description adds what annotations cannot: SPX/SPY/QQQ-only coverage, one expiration per call, a 90-day settlement horizon, delayed/derived data, and the failure contract (absence with the reason named when publication rules or method agreement fail). It also defines the numbers as risk-neutral, not frequencies, which is the key interpretive caveat.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded well: purpose and examples come first, exclusions and limits after. But the tail is bloated and repetitive — the no-trade-advice rule is restated three different ways across several sentences, and the citation/timestamp mandate runs long, pushing length well past what the routing and computation details require.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be re-explained, yet the description still orients the agent to what comes back and how to treat a null. Combined with coverage limits, failure semantics, and the interpretation caveat, an agent has everything needed to call and report results correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description earns a lift by adding constraints the schema omits — symbol coverage limits (SPX/SPY/QQQ only) and the rule that only expirations settling within 90 days are servable, which directly constrains the `expiration` parameter beyond its ISO-format description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific computation (market-implied probability a level is exceeded by an expiration) and grounds it with two concrete examples (SPX above 7700 by Friday, QQQ below 740 next week). It also enumerates the returned artifacts (priced probability above/below, cross-check, ladder, implied distribution with median/quartiles/band), which no sibling offers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with an explicit 'Use this when...' trigger and then names four exclusion zones with the sibling to use instead (get_gex_levels / get_gamma_heatmap for walls, get_max_pain for OI concentration, get_market_calendar for expiration dates). The agent can route without opening any schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources