Skip to main content
Glama

whale_activity

Read-onlyIdempotent

Get whale activity aggregated by chain and direction — movement COUNTS by day over 1-30 days (not individual transfers; use whale_movements for individual records with amounts) — Aggregated, bounded time-series of recorded whale movements across all 14 supported chains, sourced from our internal signal-history archive. Returns honest movement COUNTS grouped by chain, by money-flow direction (inflow/outflow/transfer/unknown), and by day over a recent window — no per-transaction detail, wallet addresses or explorer links (those stay subscriber-gated at /api/whale-history). Use ?window=N to set the look-back in days (1–30, default 7). Counts only; no USD volume is reported because the archive carries no structured per-move USD figure. Served from cache (no per-request cost). Cached ~5min. — Use this for the current aggregated whale-activity snapshot; use whale_movements for individual transfers or whale_daily_summary for stored daily totals.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
windowNoLook-back window in days (1–30, default 7). Values outside the range are clamped.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
byDayNo
totalNo
byChainNo
updatedAtNo
dataSourceNo
lastSeenAtNo
windowDaysNo
attributionNo
byDirectionNo
firstSeenAtNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "attribution": {
      +      "$ref": "#/components/schemas/Attribution"
      +    },
      +    "byChain": {
      +      "items": {
      +        "properties": {
      +          "chain": {
      +            "type": "string"
      +          },
      +          "count": {
      +            "type": "number"
      +          },
      +          "inflow": {
      +            "type": "number"
      +          },
      +          "outflow": {
      +            "type": "number"
      +          },
      +          "transfer": {
      +            "type": "number"
      +          },
      +          "unknown": {
      +            "type": "number"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "byDay": {
      +      "items": {
      +        "properties": {
      +          "count": {
      +            "type": "number"
      +          },
      +          "date": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "byDirection": {
      +      "properties": {
      +        "inflow": {
      +          "type": "number"
      +        },
      +        "outflow": {
      +          "type": "number"
      +        },
      +        "transfer": {
      +          "type": "number"
      +        },
      +        "unknown": {
      +          "type": "number"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "dataSource": {
      +      "type": "string"
      +    },
      +    "firstSeenAt": {
      +      "format": "date-time",
      +      "nullable": true,
      +      "type": "string"
      +    },
      +    "lastSeenAt": {
      +      "format": "date-time",
      +      "nullable": true,
      +      "type": "string"
      +    },
      +    "total": {
      +      "type": "number"
      +    },
      +    "updatedAt": {
      +      "format": "date-time",
      +      "type": "string"
      +    },
      +    "windowDays": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Adds substantial context beyond the annotations: no per-transaction detail, no wallet addresses/explorer links, no USD volume due to missing structured figures, served from cache with no per-request cost, and cached ~5min. These details inform the agent about latency, data freshness, and content limitations. No contradiction with readOnlyHint/idempotentHint.

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

Conciseness4/5

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

The description is dense and informative, with the core purpose and exclusion first, followed by behavioral details and sibling routing. While long, every clause earns its keep. The heavy use of em-dashes makes it slightly harder to parse than an ideal structured breakdown, so not a 5.

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?

Given a single parameter, rich annotations, and an output schema, the description covers all necessary operational context: data aggregation, look-back window, available chains, caching, subscriber gating, and how it differs from sibling tools. Nothing an agent needs to call it correctly is missing.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description mentions the ?window=N syntax and its range, but this effectively duplicates the schema's property description, which already covers the default, min, max, and clamping behavior. No new semantic meaning is added.

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?

The description begins with a specific verb and resource ('Get whale activity aggregated by chain and direction') and immediately clarifies the scope as movement COUNTS by day, not individual transfers. It distinguishes itself from whale_movements and whale_daily_summary, making the tool's purpose unambiguous and differentiated from siblings.

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?

Explicitly states when to use this tool ('for the current aggregated whale-activity snapshot') and names alternatives for different needs ('use whale_movements for individual transfers or whale_daily_summary for stored daily totals'). Also notes the subscriber-gated nature of detailed data, which prevents mis-selection.

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