Skip to content
Eden Engine

Market Fear & Greed Sentiment (Crypto & Stocks)

omnial/market-sentiment

Returns the current fear-and-greed sentiment score and label for crypto, US stocks, or both (asset_class), plus 7-day and 30-day trend data and, for stocks, the individual signals (market momentum, volatility, safe-haven demand, and more) that make up the score.

activeper callv1
Provider
Web & Business Data Network
Category
finance
Provider price
$0.075075 per call
Latency p50 / p95
— / —
Success rate
—
Verified
—

Provider list price; Omnial MCP charges provider cost plus a platform markup on top.

Contract

input_schema.json
{
  "type": "object",
  "required": [
    "asset_class"
  ],
  "properties": {
    "asset_class": {
      "enum": [
        "crypto",
        "stocks",
        "all"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
output_schema.json
{
  "type": "object",
  "required": [
    "count",
    "items"
  ],
  "properties": {
    "count": {
      "type": "number",
      "description": "Number of records in `items`; 1 on both real calls observed, regardless of asset_class."
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "type",
          "assetClass"
        ],
        "properties": {
          "vix": {
            "type": "object",
            "properties": {
              "reason": {
                "type": "string",
                "description": "Observed as \"upstream_rate_limited\" on the one call where available was false; other reason values are unconfirmed."
              },
              "available": {
                "type": "boolean"
              }
            },
            "description": "VIX volatility gauge component status, present alongside `stocks` on the one real call observed. On that call the upstream volatility feed was unavailable (reason \"upstream_rate_limited\"), so a genuinely available VIX reading was never observed and its shape when available is unconfirmed.",
            "additionalProperties": false
          },
          "type": {
            "type": "string",
            "description": "Record type, always \"market_sentiment\" on both real calls observed."
          },
          "crypto": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string",
                "description": "e.g. \"Greed\"."
              },
              "score": {
                "type": "number"
              },
              "source": {
                "type": "string",
                "description": "e.g. \"alternative.me\"."
              },
              "trend7d": {
                "type": "object",
                "properties": {
                  "to": {
                    "type": "number"
                  },
                  "from": {
                    "type": "number"
                  },
                  "change": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "trend30d": {
                "type": "object",
                "properties": {
                  "to": {
                    "type": "number"
                  },
                  "from": {
                    "type": "number"
                  },
                  "change": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "timestamp": {
                "type": "string",
                "description": "Unix epoch seconds encoded as a numeric string, e.g. \"1788825600\" -- confirmed numeric on the real fixture, not a phone number or other contact identifier."
              }
            },
            "description": "Crypto Fear & Greed index data, present on both real calls observed (asset_class=all and asset_class=crypto). Presence for asset_class=stocks alone is unconfirmed.",
            "additionalProperties": false
          },
          "stocks": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string",
                "description": "e.g. \"fear\"."
              },
              "score": {
                "type": "number"
              },
              "source": {
                "type": "string",
                "description": "e.g. \"cnn\"."
              },
              "trend7d": {
                "type": "object",
                "properties": {
                  "to": {
                    "type": "number"
                  },
                  "from": {
                    "type": "number"
                  },
                  "change": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "trend30d": {
                "type": "object",
                "properties": {
                  "to": {
                    "type": "number"
                  },
                  "from": {
                    "type": "number"
                  },
                  "change": {
                    "type": "number"
                  }
                },
                "additionalProperties": false
              },
              "timestamp": {
                "type": "string",
                "description": "ISO 8601 datetime with UTC offset, e.g. \"2026-09-04T23:59:43+00:00\"."
              },
              "components": {
                "type": "object",
                "properties": {
                  "junk_bond_demand": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "put_call_options": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "safe_haven_demand": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "stock_price_breadth": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "stock_price_strength": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "market_momentum_sp500": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "market_volatility_vix": {
                    "type": "object",
                    "properties": {
                      "score": {
                        "type": "number"
                      },
                      "rating": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "description": "The seven individual signals CNN's index blends into the overall stocks score, each with its own score and a text rating.",
                "additionalProperties": false
              },
              "previousClose": {
                "type": "number"
              }
            },
            "description": "CNN Fear & Greed index data for US equities, present on the one real call observed with asset_class=all; absent when asset_class=crypto. Presence for asset_class=stocks alone is unconfirmed.",
            "additionalProperties": false
          },
          "assetClass": {
            "type": "string",
            "description": "Echoes the requested asset_class filter. \"all\" and \"crypto\" observed directly; \"stocks\" is a documented input value not yet captured."
          }
        },
        "additionalProperties": false
      }
    }
  },
  "description": "The sentiment record set, as returned at routing.responseResultPath ($.output).",
  "additionalProperties": false
}

Pricing

Every real charge, itemised. A model that quietly omits one is a slow financial leak, so nothing here is rolled up, and a charge that only applies to some inputs says so rather than being added in.

Prices in this catalog are the provider's own list price, not your bill: Omnial MCP charges provider cost plus a platform markup on top, so what you are charged is higher than the figure shown. For the exact amount a specific call will cost, run omnial_execute with dry_run: true; that number includes the markup and is what we hold while the call runs. It is a quote, not a cap on the charge.

ChargeRate
Per call
Flat, regardless of what comes back
$0.075075
Cost basis
Not recorded

This tool's catalog entry does not record how its final bill is determined, so we will not tell you whether its cost is fixed before the call or reported by the provider afterwards. Either way what is held is a quote rather than a cap: you are charged what the call actually costs, bounded at 2x the quote.

Updated
Sep 23, 2026