Skip to main content
Glama

Whale trades in a time window

get_whalewatch_feed_window
Read-only

Every tracked-whale buy and sell inside one time window (at most 48 hours), for bulk reads such as 'everything whales did in the last 6 hours'. Unlike get_whalewatch_feed, it returns ONE ROW PER SWAP (the plain feed repeats a swap once per whale list the wallet is on; list_id here is one of the matching lists), and pages with a cursor: pass next_cursor from the previous response as cursor until it is null. Rows are newest first and new trades never shift a page. Filter by side, minimum trade size, minimum market cap, trade actions, whale list_ids and min_days_since_prev_trade (wallets waking up after a quiet spell). A window longer than 48h is rejected. Rows sort by timestamp (block time, whole seconds), then sequence (the order Moby ingested the trades): several trades by one wallet in the same second come back in the order their position-before values chain. Every row has wallet_list_type (whale, trader or kol). SELL rows carry held_seconds (since the wallet's first buy of the token) and quick_flip: true when it sold within 15 minutes — check for it before treating that wallet's buy as conviction; buy rows leave both null. include_context=true adds a per-row context block: pnl_pct_vs_entry (the trade price vs the wallet's own average entry, as a fraction), tags (what the trade looked like, e.g. profit taking), hold_days_at_trade, share_sold_of_position, position_before_usd, entry_vwap_before, days_since_prev_trade + prev_trade_at (how long the WALLET was quiet before this trade, any token) and wallet_win_rate + wallet_realized_pnl_30d_usd (the wallet's 30-day quality). Unknown values are null — pnl_pct_vs_entry is null whenever the wallet's entry was never seen, days_since_prev_trade when Moby has no earlier trade for the wallet. Wallet quality: use get_whale_wallet_track_record(wallet_address) for a wallet's win rate and PnL. This is public market data about the whole market — it is NOT about the user's own wallet or holdings. Tools whose names start with get_my_ are the ones that return the user's own data.

Input Schema

NameRequiredDescriptionDefault
limitNoSwaps per page, 1-1000. Keep it small unless you need the whole window.
cursorNo`next_cursor` from the previous page. Omit for the first page.
actionsNoWhat the trade did to the wallet's position: `first_buy`, `re_entry`, `add`, `trim`, `close`, `sell_unknown_entry`. Omit for all.
networkNosolana
list_idsNoWhale list ids from `get_whalewatch_lists`. Omit for all lists.
min_amount_usdNoOnly trades of at least this many USD.
after_timestampYesWindow start (inclusive). At most 48h before the window end. ISO 8601 UTC, e.g. `2026-08-11T14:30:00Z`.
include_contextNoAdd the per-row `context` block (position/PnL facts for each trade).
before_timestampNoWindow end (inclusive). Omit for now. ISO 8601 UTC, e.g. `2026-08-11T14:30:00Z`.
transaction_typesNo`buy` and/or `sell`. Omit for both.
min_market_cap_usdNoOnly trades in tokens whose market cap at trade time was at least this.
min_days_since_prev_tradeNoOnly trades by a wallet that had been quiet at least this many days before the trade (no tracked trade on this network, any token), e.g. 14 for 'woke up after two weeks'. Trades with no earlier trade on record do not match. Omit for all.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare read-only/non-destructive/open-world; the description adds substantial behavior: cursor pagination protocol, stable paging ('new trades never shift a page'), newest-first sort with `timestamp` then `sequence` tiebreaking, the 48h rejection, null-value semantics, and `quick_flip`/`held_seconds` semantics on SELL rows. This is exactly the beyond-annotation context the dimension rewards.

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?

Purpose and the sibling differentiation are front-loaded, and the long context-field sentence is genuinely informative rather than filler. The output is dense and near the edge of what one paragraph should carry; a few clauses could be split or trimmed, keeping it just below 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?

For a 12-parameter, cursor-paginated feed tool, the description covers the window constraint, pagination loop, ordering, filtering dimensions, row-level fields, and null behavior. With an output schema present, it appropriately does not restate the return envelope, and nothing needed 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.

Parameters4/5

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

Schema coverage is 92%, so the baseline is 3; the description adds real value by explaining `include_context`'s per-row block field-by-field (pnl_pct_vs_entry, tags, hold_days_at_trade, share_sold_of_position, days_since_prev_trade, wallet_win_rate) and the 'wallets waking up after a quiet spell' interpretation of `min_days_since_prev_trade`. It doesn't restate all filter parameters, but it compensates well where the schema is thin.

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 first sentence names a specific verb+resource+scope ('every tracked-whale buy and sell inside one time window, at most 48 hours') and explicitly contrasts with sibling `get_whalewatch_feed` (one row per swap vs. repeated per list). An agent can distinguish it from the other whalewatch feed tools without opening a schema.

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 says when to use it ('bulk reads such as everything whales did in the last 6 hours'), when not to (the plain feed for non-deduplicated reads), and routes to `get_whale_wallet_track_record(wallet_address)` for wallet quality. It also pre-empts a likely misuse by clarifying this is public market data, not `get_my_*` user data.

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