Skip to main content
Glama

Holders and clusters (bubble map)

token_holders
Read-only

Who holds a token and how the holders are connected: the top 40 holders with their share of supply, marked pool (venue), dev, contract or wallet, and clusters of wallets linked by moving the token between themselves (one sent tokens to another). Also the top-10 share outside pools. Use for 'who holds it?', 'is the supply concentrated?', 'bubble map'. Also takes a Solana mint: its 20 largest holders by owner, marked wallet, pool (labelled pump.fun, PumpSwap, Raydium, Orca or Meteora when known) or contract; linked wallets aren't read on Solana yet. Works for 0x tokens on Robinhood Chain, Ethereum and Base (pass chain, or it finds the chain); on Ethereum and Base the dev is whoever created the token's contract, and a very busy token is read from its most recent transfers. Premium: 2¢ a call from prepaid agent credits (3 free premium calls a day). Send your agent key as Authorization: Bearer .

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "token": "<token>"
    },
    "name": "token_holders"
  }
}

Input Schema

NameRequiredDescriptionDefault
chainNoFor a 0x address: the chain. Default: Robinhood Chain if the token is there, else Ethereum, else Base
tokenYesToken contract address (0x...) on Robinhood Chain, Ethereum or Base, or a Solana mint

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / chain
      Added value: +{
      +  "description": "For a 0x address: the chain. Default: Robinhood Chain if the token is there, else Ethereum, else Base",
      +  "enum": [
      +    "robinhood",
      +    "ethereum",
      +    "base"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / token / description
      Previous value: -"Token contract address (0x...) on Robinhood Chain, or a Solana mint"New value: +"Token contract address (0x...) on Robinhood Chain, Ethereum or Base, or a Solana mint"
  2. Changed1 schema field changed
    • changedInput schema / properties / token / description
      Previous value: -"Token contract address (0x...) on Robinhood Chain"New value: +"Token contract address (0x...) on Robinhood Chain, or a Solana mint"
  3. Added

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only say readOnly and openWorld; the description adds substantial context beyond that: a 2¢ per-call premium price with 3 free calls a day, the required 'Authorization: Bearer <key>' header, automatic chain resolution order, and a documented limitation that linked wallets are not read on Solana yet. It also discloses a fallback behavior (reading a very busy token from its most recent transfers) and who counts as 'dev' on each chain.

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

Conciseness3/5

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

The purpose is front-loaded, but the body is a dense run-on that packs Solana behavior, chain routing, dev definition, transfer-window fallback, and payment mechanics into one long stream. It is informative but the pricing/auth sentence could be separated or trimmed for faster scanning.

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?

With no output schema, the description carries the return-value burden and does so: top-40 holders with supply share, role labels, cluster definitions, and top-10 share outside pools. Combined with pricing, auth, and per-chain caveats, an agent has everything needed to call it and interpret results.

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 100%, so the baseline is 3, but the prose still adds meaning: the token parameter accepts either a 0x contract or a Solana mint, and the chain parameter's default resolution order (Robinhood Chain, then Ethereum, then Base) is restated in operational terms. The added value is real but modest since the schema already enumerates chains.

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 opening clause states a specific verb-and-resource pair ('Who holds a token and how the holders are connected') and immediately quantifies the payload: top 40 holders, share of supply, labels (pool/dev/contract/wallet), and wallet clusters. The Solana and 0x variants are spelled out separately, so an agent can tell exactly what it gets 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It supplies concrete trigger phrases ('who holds it?', 'is the supply concentrated?', 'bubble map') that map a user question to this tool. It does not, however, name a sibling to route away from (e.g. token_risk or token_report), so the boundary with adjacent token tools is left to inference.

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.