Robinhood Contract Creator
robinhood_contract_creatorWHO CREATED a Robinhood (robinhood, rh, Robinhood Chain) contract, and what a creator deployed. Answers "who created / deployed
this token", "who is behind this contract", "what else did this deployer launch", and
"were these tokens made by the same person" (serial deployers, rug and clone farms).
NOT who funded a wallet → use robinhood_first_funder.
On this chain a token IS a contract, so pass the TOKEN'S CONTRACT ADDRESS in contracts.
TWO WAYS TO CALL IT, pick one - setting both is refused, because the two answer different questions and their shared-creator counters would be mixed:
contracts="0x..|0x.." - up to 50 contracts, one row each: Creator (the address whose
code ran CREATE), Signer, Created_At, Block_Number, Tx, Deploy_Value, Gas_Used and
Deploy_Success. Rows whose creator or signer is SHARED come first: Creator_Shared /
Signer_Shared count how many of the requested contracts have that same creator / signer, which
is what exposes one person behind many tokens. A longer list is not an error: the first
50 distinct addresses are used and the rest ignored - compare Contracts_Requested
with Contracts_Used and split a longer list into several calls.
creator="0x.." - the contracts THAT address deployed, newest first, inside the window (days,
after_time, before_time), at most limit rows. Use it on the Creator or Signer a first call
returned, to see the rest of that deployer's output. Creator_Shared is empty in this form -
every row has the same creator by construction, so the counter would only repeat the row count.
Creator_Is_Contract = 1 means the contract was deployed BY OTHER CONTRACT CODE - a
token factory, a launchpad or a DEX pair factory - and then Creator is that factory, which is the
SAME address for every token it ever made, while Signer is the person who asked for it. On a
factory-made token read Signer, not Creator. Deploy_Depth is how deep inside the transaction the
deployment happened (0 = the transaction itself) and Call_Index is the deployment's position in
that transaction - one transaction can deploy several contracts, and Call_Index is what tells
those rows apart when everything else about them looks the same.
Status = NOT_FOUND means no deployment is recorded for that address: it is a plain wallet, not a
contract, or the deployment is older than the recorded history of this chain. Creations is
normally 1; a higher number means the address was created more than once (destroyed and
redeployed), and the row describes the EARLIEST creation.
THE CREATOR'S STORY IS NOT IN THIS TOOL - build it from the returned addresses:
labels_for_addresses (is the creator a known entity, exchange or scammer), robinhood_first_funder
(who funded the creator, and whether several creators share one sponsor), robinhood_address_profile
and robinhood_transfers_in / robinhood_transfers_out (what that wallet does), robinhood_flows_between
(what moved between the creator and the token). The token's own name, symbol, price and market
cap come from find_token_by_address; its first buyers from early_buyers.
Amounts are the native coin, never USD. COST: a contract lookup has to walk every call that address
ever received, so a handful of ordinary tokens answer in a second or two while one exchange-scale
contract can take ~20 s on its own. If you already know roughly when the contract appeared, bound it
with after_time / before_time - that alone took one busy token from 21 s to 2 s. A row-limit error
("Limit for rows ... exceeded") means the batch is too busy: bound it that way, or split the list.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "robinhood_contract_creator"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Creator lookup only: window length in days ending at before_time (or now), 1-3660. Ignored when after_time is set, and ignored entirely when contracts is set (a contract lookup searches the whole recorded history). | |
| limit | No | Max contracts to return for a creator lookup, newest first. At most 1000. Ignored when contracts is set. | |
| format | No | Shape of the returned data. "rows" (the default) returns one item per row. "columnar" returns a single item, {"columns":[...],"rows":[[value,...],...]}, naming the columns once and listing each row's values in that order; it is more compact for large results and carries the same values. | rows |
| creator | No | Look up the contracts THIS address deployed instead, 0x-hex (case-insensitive). Pass a Creator or Signer returned by a contracts call. Empty (default) = look up contracts instead. Setting neither returns no rows. | |
| contracts | No | Contract addresses to look up the creator of, 0x-hex (case-insensitive), separated by "|" - up to 50; addresses after the 50th distinct one are ignored (compare Contracts_Requested with Contracts_Used). For a token, this is the token's contract address. Empty = use creator instead. | |
| after_time | No | Only deployments at/after this UTC time (e.g. "2026-01-01"). Works in BOTH modes: on a creator lookup it overrides days, and on a contract lookup it is the cheapest way to make a busy address fast. Empty = no lower bound on a contract lookup, the last `days` days on a creator lookup. | |
| before_time | No | Only deployments strictly before this UTC time. Works in both modes. On a creator lookup set it to a row's Window_From to search the next older window. Empty = up to now. Format: YYYY-MM-DD, YYYY-MM-DD HH:MM[:SS], ISO-8601 like 2026-09-20T00:00:00Z (fraction or +02:00 offset allowed) or 10-digit unix seconds. |