Agents

Whale Watch

Shows what the big wallets are doing with a token.

Reads onchain flows through NOWNodes: large transfers tagged with exchange names, net flows onto or off exchanges compared with the token's own 7-day pattern, exchange reserve trends and, live from the chain, who the biggest unlabelled wallets are. Returns ACCUMULATING, DISTRIBUTING or NEUTRAL with the moves behind it.

When to use it #

  • Before a large position, to see whether big holders are buying or selling.
  • To explain a move: are coins leaving or entering exchanges?

Built for: Trading-agent developers · Funds & market makers

How it decides #

  • Compares today's net exchange flow with its own daily history (a z-score) and checks whether exchange reserves agree.
  • DISTRIBUTING when coins flow onto exchanges unusually and reserves are not falling; ACCUMULATING for the reverse.
  • Profiles the wallets behind the largest transfers live.

Verdicts #

VerdictMeaning
ACCUMULATINGCoins are leaving exchanges: holders taking custody.
DISTRIBUTINGCoins are moving onto exchanges: possible selling ahead.
NEUTRALFlows are within the normal range.
NO_DATAThe token's chain is not covered on chain.

Input #

POST/v1/agents/whale-watch

Body

  • tokenstringrequired

    Token: CoinGecko id (chainlink), symbol (LINK) or contract address

Examples #

Real runs, captured from the live service.

Chainlink

Request
curl -X POST "https://coingraph.ai/api/v1/agents/whale-watch" \
  -H "content-type: application/json" \
  -d '{"token":"chainlink"}'
Response · real, captured 2026-10-06 23:24 UTC · long lists trimmed
{
  "object": "agent_run",
  "id": "run_48dec4bc48c0e251f157",
  "as_of": "2026-10-06T23:23:14.649Z",
  "data": {
    "run_id": "run_48dec4bc48c0e251f157",
    "agent": "whale-watch",
    "agent_version": "1.0.0",
    "as_of": "2026-10-06T23:23:14.649Z",
    "verdict": "NEUTRAL",
    "summary": "LINK: no unusual whale behaviour; exchange flows are within the normal range.",
    "result": {
      "token": {
        "id": "chainlink",
        "symbol": "LINK"
      },
      "exchange_flows": {
        "1h": {
          "inflow_usd": 229715,
          "outflow_usd": 185150,
          "net_usd": 44565.4
        },
        "24h": {
          "inflow_usd": 2109570,
          "outflow_usd": 2521420,
          "net_usd": -411856
        },
        "7d": {
          "inflow_usd": 2109570,
          "outflow_usd": 2521420,
          "net_usd": -411856
        },
        "typical_15m_abs_net_usd": 5718.98,
        "note": "positive net = coins arriving on exchanges (sell-side supply)"
      },
      "net_24h_zscore": null,
      "daily_net_7d": [
        {
          "day": "2026-10-06T00:00:00.000Z",
          "net_usd": -411856.47481999773
        }
      ],
      "reserves_7d_change_pct": 0,
      "deposits": [
        {
          "chain": "eth",
          "tx": "0xa0423df53fb86396d790da00e7b828afeef65d96562b9fdc554bc4d87c042629",
          "at": "2026-10-06T16:31:23.000Z",
          "from": "0xd8009f850a4626b501185216a5de7b2507a8e1fa",
          "to": "0x0d0707963952f2fba59dd06f2b425ace40b492fe",
          "amount": 30855.5,
          "usd": 429200,
          "from_entity": null,
          "to_entity": "gate",
          "direction": "to_exchange"
        },
        {
          "chain": "eth",
          "tx": "0xb6762d014bfbf0ec3317e9232cfc87646a46f3cd2abbbde71b1d81316170aee3",
          "at": "2026-10-06T15:12:11.000Z",
          "from": "0x55a116ecb13d4cd1a47afe03c58ba6ede362dcbe",
          "to": "0xa9d1e08c7793af67e9d92fe308d5697fb81d3e43",
          "amount": 16941,
          "usd": 239037,
          "from_entity": null,
          "to_entity": "coinbase",
          "direction": "to_exchange"
        }
      ],
      "withdrawals": [
        {
          "chain": "eth",
          "tx": "0x8009c29870273a899e9eeeb4b40f0f4b3c34c0a786fa1bb069a140b1b1e94ec4",
          "at": "2026-10-06T15:01:11.000Z",
          "from": "0xa9d1e08c7793af67e9d92fe308d5697fb81d3e43",
          "to": "0xa47445f9170c17b64dee893463563fd3ee2b7fa9",
          "amount": 16941,
          "usd": 239037,
          "from_entity": "coinbase",
          "to_entity": null,
          "direction": "from_exchange"
        },
        {
          "chain": "eth",
          "tx": "0xf458eda96a71ec35d5064dab2633bda520aab8fd661ca25a2a5a49b3819c3c7e",
          "at": "2026-10-06T17:08:11.000Z",
          "from": "0xa9d1e08c7793af67e9d92fe308d5697fb81d3e43",
          "to": "0xf64d262b2ace1e11f7cfa7a41b54fc23d26cf492",
          "amount": 16525.1,
          "usd": 228873,
          "from_entity": "coinbase",
          "to_entity": null,
          "direction": "from_exchange"
        },
        {
          "chain": "eth",
          "tx": "0xd562d5ee81942b64f473852e51bd396ccf192a92ac0da390e1f9f1bbf6766313",
          "at": "2026-10-06T20:22:47.000Z",
          "from": "0xa9d1e08c7793af67e9d92fe308d5697fb81d3e43",
          "to": "0xf64d262b2ace1e11f7cfa7a41b54fc23d26cf492",
          "amount": 11385.2,
          "usd": 159280,
          "from_entity": "coinbase",
          "to_entity": null,
          "direction": "from_exchange"
        }
      ],
      "other_large_moves": [
        {
          "chain": "eth",
          "tx": "0xebd8f46d5ef99ca6a1a3d9d226eb789350aaca7aa08adaedf3c6026b770869c1",
          "at": "2026-10-06T20:16:59.000Z",
          "from": "0x000000000004444c5dc75cb358380d2e3de08a90",
          "to": "0x72655b3926db3afbe914a53b0604905af7ce11a5",
          "amount": 138615,
          "usd": 1939230,
          "from_entity": null,
          "to_entity": null,
          "direction": "other"
        },
        {
          "chain": "eth",
          "tx": "0x50b0589c576dd17086bf74cf0b43b5a9f2dea2d3a341aa46dd8f4da79103348f",
          "at": "2026-10-06T20:38:11.000Z",
          "from": "0x99b23f1b1e66eca4d0fbedb5ce9eb77a3c8ed56c",
          "to": "0x4a4aaa0155237881fbd5c34bfae16e985a7b068d",
          "amount": 138615,
          "usd": 1937840,
          "from_entity": null,
          "to_entity": null,
          "direction": "other"
        },
        {
          "chain": "eth",
          "tx": "0xb620cc4dce7197af7ab4f25cfa7bb8ce0ad50162fe0525f0cebd2db199c5915a",
          "at": "2026-10-06T20:37:47.000Z",
          "from": "0x72655b3926db3afbe914a53b0604905af7ce11a5",
          "to": "0x99b23f1b1e66eca4d0fbedb5ce9eb77a3c8ed56c",
          "amount": 138614,
          "usd": 1937830,
          "from_entity": null,
          "to_entity": null,
          "direction": "other"
        },
        "… 2 more"
      ],
      "wallet_profiles": [
        {
          "address": "0x99b23f1b1e66eca4d0fbedb5ce9eb77a3c8ed56c",
          "chain": "eth",
          "role": "sender",
          "type": "established wallet",
          "tx_count": 66,
          "label": "unlabelled"
        }
      ]
    },
    "reasons": [
      {
        "text": "Net $411.9K withdrawn from exchanges in 24h",
        "source": "nownodes:eth_getLogs"
      },
      {
        "text": "Exchange reserves 0% over 7 days",
        "source": "nownodes:blockbook:/address"
      },
      {
        "text": "Largest deposit: $429.2K → gate",
        "source": "nownodes:onchain_transfers"
      },
      "… 1 more"
    ],
    "warnings": [],
    "links": {},
    "disclaimer": "CoinGraph never trades, holds funds or gives financial advice. The caller decides.",
    "hash": "f7ebac67b82a4181c01a42e11fffa0eb5acf878b9d8a2690d050fc5e8d5d4b42",
    "verify_url": "https://coingraph.ai/api/v1/verify/run_48dec4bc48c0e251f157"
  },
  "sources": []
}

Result fields #

Inside data.result:

FieldContents
exchange_flows, net_24h_zscore, daily_net_7dNet exchange flow, how unusual today is, and the last 7 days.
reserves_7d_change_pctChange in exchange reserves.
deposits, withdrawals, other_large_movesLargest transfers to, from and outside exchanges.
wallet_profilesLive profiles of the wallets involved.

Use it from Claude #

With CoinGraph connected (how), ask in plain words, or call the tool directly:

MCP tools/call
{
  "name": "run_whale_watch",
  "arguments": {
    "token": "chainlink"
  }
}

The proof for any run: https://coingraph.ai/proof/run_…