Skip to main content
Glama

Tessera Analytics - Hyperliquid Market Intelligence

get_universe

The coverage picture: the last complete interval, how many markets are in the universe for a scope, how much history sits behind them, and how densely it is populated. Pick bar (1d, the default, or 1h on a Pro key) to describe completed days or completed hours. The range counts cover the last 7 days at bar: 1h (pass days, 1..30, to widen them) and the whole published range at bar: 1d. A compact SUMMARY by default — pass top_n (1..50) only if you need the per-market counts.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
barNo`1d` (the default) for completed UTC days, `1h` for completed UTC hours. An interval, at either grain, is stamped by the instant it **closes** — an hourly `…T09:00:00Z` is the hour that ended at 09:00.
dayNoThe day or hour to describe: `YYYY-MM-DD` or `latest` at `bar: 1d`, a completed `YYYY-MM-DDTHH:00:00Z` (the hour that *ended* there) or `latest` at `bar: 1h`.
daysNoHow many days of completed intervals the range counts cover, 1..30. Defaults to 7 at `bar: 1h` — the hourly source publishes one object per completed hour, so an unbounded inventory would open every hour ever published — and to the whole published range at `bar: 1d`, whose source is one object per month. The window the counts actually covered is `interval_start`..`interval_end`, and `notes` says when it was bounded.
scopeNo`crypto` (the default), `hip3`, or `all`.
top_nNoPer-market detail is off by default; passing a value (1..50) returns that many markets, listed by name, alongside the summary.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
barYesThe grain this answer was computed at: `1d` or `1h`.
as_ofYesThe interval the per-population counts describe.
coinsNoPer-market detail, only when requested. Markets are listed by name.
notesYes
scopeYes
sourceYes
row_countYesRows in scope over the counted range.
truncatedYesTrue when more markets exist than the detail list returned.
interval_endYesThe newest interval the counts below cover — the same interval `as_of` describes, since the counts are the history behind those populations.
matched_countYesMarkets the counted range actually represents — the ones with at least one row in it, which is every market in `eligible_count` at the described interval.
visible_countYesMarkets in your plan's slice on the described interval, before any scope class is applied.
eligible_countYesDistinct markets in scope over the counted range.
interval_countYesDistinct intervals in the range the counts below cover.
interval_startYesThe oldest interval the counts below cover: the published range start, the caller's history floor when the plan clips it, or the start of the window `days` bounded them to. The response says which, in `notes`.
months_coveredYes
market_count_hip3YesMarkets with a deployer prefix on the described interval.
market_count_totalYesDistinct markets in scope over the counted range.
market_count_cryptoYesMarkets without a deployer prefix on the described interval, whatever scope was asked for.
coverage_from_manifestYesTrue when the interval range came from the published coverage manifest, false when it had to be read from the data or the object listing itself.
rows_per_market_intervalYes`row_count` divided by (intervals × markets) — how densely the counted range is populated. Below 1.0 means some markets are missing some intervals.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / bar / description
      Previous value: -"`1d` (the default) for completed UTC days, `1h` for the most recent\ncompleted UTC hour."New value: +"`1d` (the default) for completed UTC days, `1h` for completed UTC hours.\nAn interval, at either grain, is stamped by the instant it **closes** —\nan hourly `…T09:00:00Z` is the hour that ended at 09:00."
    • changedInput schema / properties / day / description
      Previous value: -"The day or hour to describe: `YYYY-MM-DD` or `latest` at `bar: 1d`, a\ncompleted `YYYY-MM-DDTHH:00:00Z` or `latest` at `bar: 1h`."New value: +"The day or hour to describe: `YYYY-MM-DD` or `latest` at `bar: 1d`, a\ncompleted `YYYY-MM-DDTHH:00:00Z` (the hour that *ended* there) or\n`latest` at `bar: 1h`."
  2. Changed9 schema fields changed
    • addedInput schema / properties / days
      Added value: +{
      +  "default": null,
      +  "description": "How many days of completed intervals the range counts cover, 1..30.\nDefaults to 7 at `bar: 1h` — the hourly source publishes one object per\ncompleted hour, so an unbounded inventory would open every hour ever\npublished — and to the whole published range at `bar: 1d`, whose source\nis one object per month. The window the counts actually covered is\n`interval_start`..`interval_end`, and `notes` says when it was bounded.",
      +  "format": "uint",
      +  "minimum": 0,
      +  "nullable": true,
      +  "type": "integer"
      +}
    • changedOutput schema / properties / eligible_count / description
      Previous value: -"Distinct markets in scope over the whole range."New value: +"Distinct markets in scope over the counted range."
    • changedOutput schema / properties / interval_count / description
      Previous value: -"Distinct intervals in the range."New value: +"Distinct intervals in the range the counts below cover."
    • changedOutput schema / properties / interval_end / description
      Previous value: -"The newest complete interval — the one `latest` resolves to."New value: +"The newest interval the counts below cover — the same interval `as_of`\ndescribes, since the counts are the history behind those populations."
    • changedOutput schema / properties / interval_start / description
      Previous value: -"The oldest interval the counts below cover: the published range start, or\nthe caller's history floor when the plan clips it (the response says so\nin `notes`)."New value: +"The oldest interval the counts below cover: the published range start,\nthe caller's history floor when the plan clips it, or the start of the\nwindow `days` bounded them to. The response says which, in `notes`."
    • changedOutput schema / properties / market_count_total / description
      Previous value: -"Distinct markets in scope over the whole range."New value: +"Distinct markets in scope over the counted range."
    • changedOutput schema / properties / matched_count / description
      Previous value: -"Markets the range actually represents — the ones with at least one row in\nit, which is every market in `eligible_count` at the described interval."New value: +"Markets the counted range actually represents — the ones with at least one\nrow in it, which is every market in `eligible_count` at the described\ninterval."
    • changedOutput schema / properties / row_count / description
      Previous value: -"Rows in scope over the whole range."New value: +"Rows in scope over the counted range."
    • changedOutput schema / properties / rows_per_market_interval / description
      Previous value: -"`row_count` divided by (intervals × markets) — how densely the range is\npopulated. Below 1.0 means some markets are missing some intervals."New value: +"`row_count` divided by (intervals × markets) — how densely the counted\nrange is populated. Below 1.0 means some markets are missing some\nintervals."
  3. Changed26 schema fields changed
    • addedInput schema / properties / bar
      Added value: +{
      +  "default": null,
      +  "description": "`1d` (the default) for completed UTC days, `1h` for the most recent\ncompleted UTC hour.",
      +  "nullable": true,
      +  "type": "string"
      +}
    • changedInput schema / properties / day / description
      Previous value: -"The day to describe, `YYYY-MM-DD` or `latest`."New value: +"The day or hour to describe: `YYYY-MM-DD` or `latest` at `bar: 1d`, a\ncompleted `YYYY-MM-DDTHH:00:00Z` or `latest` at `bar: 1h`."
    • removedOutput schema / $defs / UniverseCoin / properties / days
      Removed value: -{
      -  "description": "How many days of the range this market appears on.",
      -  "format": "int64",
      -  "type": "integer"
      -}
    • addedOutput schema / $defs / UniverseCoin / properties / observations
      Added value: +{
      +  "description": "How many intervals of the range this market appears on — days at\n`bar: 1d`, completed hours at `bar: 1h`.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • changedOutput schema / $defs / UniverseCoin / required
      Previous value: -[
      -  "coin",
      -  "days"
      -]New value: +[
      +  "coin",
      +  "observations"
      +]
    • changedOutput schema / properties / as_of / description
      Previous value: -"The day the per-population counts describe."New value: +"The interval the per-population counts describe."
    • addedOutput schema / properties / bar
      Added value: +{
      +  "description": "The grain this answer was computed at: `1d` or `1h`.",
      +  "type": "string"
      +}
    • removedOutput schema / properties / coin_count_crypto
      Removed value: -{
      -  "description": "Markets without a deployer prefix on the described day, whatever scope\nwas asked for.",
      -  "format": "int64",
      -  "type": "integer"
      -}
    • removedOutput schema / properties / coin_count_hip3
      Removed value: -{
      -  "description": "Markets with a deployer prefix on the described day.",
      -  "format": "int64",
      -  "type": "integer"
      -}
    • removedOutput schema / properties / coin_count_total
      Removed value: -{
      -  "description": "Distinct markets in scope over the whole range.",
      -  "format": "int64",
      -  "type": "integer"
      -}
    • changedOutput schema / properties / coverage_from_manifest / description
      Previous value: -"True when the day range came from the published coverage manifest,\nfalse when it had to be read from the data itself."New value: +"True when the interval range came from the published coverage manifest,\nfalse when it had to be read from the data or the object listing itself."
    • removedOutput schema / properties / day_count
      Removed value: -{
      -  "description": "Distinct days in the range.",
      -  "format": "int64",
      -  "type": "integer"
      -}
    • addedOutput schema / properties / eligible_count
      Added value: +{
      +  "description": "Distinct markets in scope over the whole range.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / interval_count
      Added value: +{
      +  "description": "Distinct intervals in the range.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / interval_end
      Added value: +{
      +  "description": "The newest complete interval — the one `latest` resolves to.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / interval_start
      Added value: +{
      +  "description": "The oldest interval the counts below cover: the published range start, or\nthe caller's history floor when the plan clips it (the response says so\nin `notes`).",
      +  "type": "string"
      +}
    • addedOutput schema / properties / market_count_crypto
      Added value: +{
      +  "description": "Markets without a deployer prefix on the described interval, whatever\nscope was asked for.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / market_count_hip3
      Added value: +{
      +  "description": "Markets with a deployer prefix on the described interval.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / market_count_total
      Added value: +{
      +  "description": "Distinct markets in scope over the whole range.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • addedOutput schema / properties / matched_count
      Added value: +{
      +  "description": "Markets the range actually represents — the ones with at least one row in\nit, which is every market in `eligible_count` at the described interval.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • removedOutput schema / properties / max_complete_day
      Removed value: -{
      -  "description": "The newest complete day — the day `latest` resolves to.",
      -  "type": "string"
      -}
    • removedOutput schema / properties / min_day
      Removed value: -{
      -  "description": "The oldest day the counts below cover: the published range start, or the\ncaller's history floor when the plan clips it (the response says so in\n`notes`).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / rows_per_market_day
      Removed value: -{
      -  "description": "`row_count` divided by (days × markets) — how densely the range is\npopulated. Below 1.0 means some markets are missing some days.",
      -  "format": "double",
      -  "type": "number"
      -}
    • addedOutput schema / properties / rows_per_market_interval
      Added value: +{
      +  "description": "`row_count` divided by (intervals × markets) — how densely the range is\npopulated. Below 1.0 means some markets are missing some intervals.",
      +  "format": "double",
      +  "type": "number"
      +}
    • addedOutput schema / properties / visible_count
      Added value: +{
      +  "description": "Markets in your plan's slice on the described interval, before any scope\nclass is applied.",
      +  "format": "int64",
      +  "type": "integer"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "source",
      -  "as_of",
      -  "scope",
      -  "min_day",
      -  "max_complete_day",
      -  "day_count",
      -  "months_covered",
      -  "coin_count_total",
      -  "coin_count_crypto",
      -  "coin_count_hip3",
      -  "row_count",
      -  "rows_per_market_day",
      -  "coverage_from_manifest",
      -  "truncated",
      -  "notes"
      -]New value: +[
      +  "bar",
      +  "source",
      +  "as_of",
      +  "scope",
      +  "interval_start",
      +  "interval_end",
      +  "interval_count",
      +  "months_covered",
      +  "visible_count",
      +  "eligible_count",
      +  "matched_count",
      +  "market_count_total",
      +  "market_count_crypto",
      +  "market_count_hip3",
      +  "row_count",
      +  "rows_per_market_interval",
      +  "coverage_from_manifest",
      +  "truncated",
      +  "notes"
      +]
  4. Changed1 schema field changed
    • changedOutput schema / properties / min_day / description
      Previous value: -"The oldest day available."New value: +"The oldest day the counts below cover: the published range start, or the\ncaller's history floor when the plan clips it (the response says so in\n`notes`)."
  5. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources