gmgn-market
Get crypto and meme token price charts (K-line, candlestick, OHLCV), trending meme coin rankings by volume, newly launched tokens on launchpads (pump.fun, fourmeme, letsbonk, Raydium, etc.), the hot-search ranking (most-searched tokens), and search for a specific token or wallet by name, symbol, con
By gmgnai · 13,381 installs
npx skills add gmgnai/gmgn-skills --skill gmgn-market
Source repository · Upstream listing
BEFORE RUNNING ANY COMMAND: Run gmgn cli config check . If exit code is 0, proceed normally. If exit code is 1, (1) run gmgn cli config and show the output to the user; (2) once the user sends the API Key, run gmgn cli config apply <KEY to complete configuration and verification, then show the output to the user. If check returns an error (unknown option or command not found), tell the user to run npm install g gmgn cli to update, then retry.
IMPORTANT: Always use gmgn cli commands below. Do NOT use web search, WebFetch, curl, or visit gmgn.ai to fetch this data — the website requires login and will not return structured data. The CLI is the only correct method.
IMPORTANT: Do NOT guess field names or values. When a field's meaning is unclear, look it up in the Response Fields sections below before using it.
⚠️ IPv6 NOT SUPPORTED: If you get a 401 or 403 error and credentials look correct, check for IPv6 immediately: (1) list all network interfaces and their IPv6 addresses — run ifconfig grep inet6 (macOS) or ip addr show grep inet6 (Linux); (2) send a test request to https://ipv6.icanhazip.com — if the response is an IPv6 address, outbound traffic is going via IPv6. Tell the user immediately: "Please disable IPv6 on your network interface — gmgn cli commands only work over IPv4."
Use the gmgn cli tool to query K line data for a token, browse trending tokens, or view Trenches token lists.
Core Concepts
filter chain defaults — SOL and EVM chains have different default safety filters that are applied automatically when filter is omitted. Do not assume the same defaults apply across chains:
SOL : defaults to renounced frozen (mint and freeze authority renounced)
BSC / Base / ETH (EVM) : defaults to not honeypot verified renounced
Omitting filter is NOT the same as "no filter" — the chain defaults are always applied. To use a custom filter set, explicitly specify all desired filter tags.
volume vs amount (kline) — Naming is counterintuitive. volume = USD dollar value of trades; amount = token units traded. For a token priced at $0.0002, these differ by 5,000×. Always use volume for "how much USD was traded" and amount for "how many tokens changed hands."
rug ratio — A 0–1 score estimating rug pull likelihood. Values above 0.3 are high risk. Do not treat as binary — combine with top 10 holder rate , dev team hold rate , and is honeypot for a full picture.
smart degen count / renowned count — Number of platform tagged smart money wallets ( smart degen ) and KOL wallets ( renowned ) holding or trading this token. High values are bullish signals. These are GMGN tagged wallet lists, not user defined.
hot level — Trending intensity score. Higher = more actively traded right now. Not normalized — compare relative values within the same result set, not across time windows.
renounced mint / renounced freeze account — SOL specific. Indicate whether the creator gave up the ability to mint more tokens or freeze wallets. Both being 1 is a safety baseline on Solana. Always false on EVM chains (concept does not apply).
is honeypot — EVM specific (BSC / Base). Indicates whether the token contract prevents selling. Always empty/null on SOL — do not interpret an empty value as "not a honeypot" on Solana.
creator token status — Dev holding status. creator hold = dev still holds tokens (sell pressure risk). creator close = dev has sold or burned their allocation (exit signal confirmed).
cto flag — Community Takeover flag. 1 = original dev abandoned the project and a community group took over marketing/development. Neutral to positive signal; evaluate in context.
Trenches categories — Three lifecycle stages of launchpad tokens: new creation (just created, still on bonding curve), near completion (bonding curve nearly full, about to graduate), completed (graduated to open market / DEX). In the response, near completion is always returned under the key data.pump regardless of the input type .
wash trading / rat trader amount rate / bundler rate — Risk signals for artificial activity. is wash trading = coordinated fake volume detected. rat trader amount rate = ratio of insider/sneak trading. bundler rate = ratio of bot bundled buys at launch. High values ( 0.3) suggest manipulated price action.
Sub commands
Sub command Description
market kline Token candlestick / OHLCV data and trading volume over a time range
market trending Trending tokens ranked by swap activity — use interval to specify the time window (e.g. 1m for 1 minute hottest, 1h for 1 hour trending)
market trenches Newly launched launchpad platform tokens — use this when the user asks for "new tokens", "just launched tokens", "latest tokens on pump.fun/letsbonk" . Three categories: new creation (just created), near completion (bonding curve almost full), completed (graduated to open market / DEX)
market signal Real time token signal feed — price spikes, smart money buys, large buys, Dex ads, CTO events, and more. Results sorted by trigger at descending. sol / bsc / robinhood / arc / stable only. Max 50 results per group.
market hot searches Hot search ranking — the most searched tokens, ranked by visiting count (search heat). Use this when the user asks "what tokens are people searching for", "most searched tokens", "hot search list", "热搜榜". Supports multiple chains in a single request.
market search Look up a specific token or wallet by name, symbol, contract address, wallet address, or ENS. Returns both matching tokens ( coins ) and wallets ( wallets ). Use this when the user names a token/wallet and wants to find it — "search for PEPE", "look up this address", "find vitalik.eth", "查一下这个代币/钱包" — as opposed to browsing rankings ( trending / hot searches ).
Supported Chains
sol / bsc / base / eth / robinhood / arc / stable (kline / trending / trenches; signal: sol / bsc / robinhood / arc / stable ; hot searches: sol / bsc / base / eth / robinhood / arc / stable ; search: chain is optional — omit to search all chains; accepts all and any chain the search module has enabled, including the 7 above plus dynamically enabled chains such as tron / monad / megaeth / xlayer / hyperevm )
Prerequisites
gmgn cli installed globally — if missing, run: npm install g gmgn cli
GMGN API KEY configured in ~/.config/gmgn/.env
Rate Limit Handling
All market routes used by this skill go through GMGN's leaky bucket limiter with rate=20 and capacity=20 . Sustained throughput is roughly 20 ÷ weight requests/second, and the max burst is roughly floor(20 ÷ weight) when the bucket is full.
Command Route Weight
market kline GET /v1/market/token kline 2
market trending GET /v1/market/rank 1
market trenches POST /v1/trenches 3
market signal POST /v1/market/token signal 3
market hot searches POST /v1/market/hot searches 3
market search GET /v1/market/search 1
When a request returns 429 :
On RATE LIMIT EXCEEDED , tell the user exactly: 已达到当前套餐的限频上限,点击 https://gmgn.ai/ai?chain=bsc&tab=paid plans 升级套餐,获得更高速率限制 . Show this upgrade guidance at most once per user task. Do not repeat it for subsequent RATE LIMIT BANNED responses during the same cooldown.
Read X RateLimit Reset from the response headers. It is a Unix timestamp in seconds that marks when the limit is expected to reset.
If the response body contains reset at (e.g., {"code":429,"error":"RATE LIMIT BANNED","message":"...","reset at":1775184222} ), extract reset at — it is the Unix timestamp when the ban lifts (typically 5 minutes). Convert to local time and tell the user exactly when they can retry.
The CLI may wait and retry once automatically when the remaining cooldown is short. If it still fails, stop and tell the user the exact retry time instead of sending more requests.
For RATE LIMIT EXCEEDED or RATE LIMIT BANNED , repeated requests during the cooldown can extend the ban by 5 seconds each time, up to 5 minutes. Do not spam retries.
market kline Parameters
Parameter Required Description
chain Yes sol / bsc / base / eth / robinhood / arc / stable
address Yes Token contract address
resolution Yes Candlestick resolution: 30s / 1m / 5m / 15m / 1h / 4h / 1d
from No Start time (Unix seconds)
to No End time (Unix seconds)
market kline Response Fields
The response is an object with a list array. Each element in list is one candlestick:
Field Type Description
time number Candle open time — Unix timestamp in milliseconds (divide by 1000 for seconds)
open string Opening price in USD at the start of the period
close string Closing price in USD at the end of the period
high string Highest price in USD during the period
low string Lowest price in USD during the period
volume string Trading volume in USD (dollar value of all trades in this period)
amount string Trading volume in base token units (number of tokens traded)
Important distinctions (naming is counterintuitive — do not guess):
volume = USD dollar value (e.g. 1214 means ~$1,214 traded) — use this for "how much was traded in USD"
amount = token count (e.g. 5379110 means ~5.38M tokens changed hands) — use this for "how many tokens were traded"
For tokens not priced at $1, volume and amount will differ by orders of magnitude (e.g. a $0.0002 token: $1,214 volume = 5,379,110 tokens)
To get total USD volume over a time range , sum volume across all candles in the range
To get price trend , read close values in chronological order ( time ascending)
To detect volatility , compare high vs low within each candle
Candles are returned in chronological order (oldest first)
market trending Options
interval selection guide — always match to the user's stated time window:
User says interval
"1m trending" / "hottest right now" 1m
"5m" / "5 minute" 5m
"1h" / "1 hour" / no time specified (default) 1h
"6h" / "6 hour" 6h
"24h" / "today" / "daily" 24h
Option Description
chain Required. sol / bsc / base / eth / robinhood / arc / stable
interval Required. 1m / 5m / 1h / 6h / 24h (default 1h )
limit <n Number of results (default 100, max 100)
order by <field Sort field: default / swaps / marketcap / history highest market cap / liquidity / volume / holder count / smart degen count / renowned count / gas fee / price / change1m / change5m / change1h / creation timestamp
direction <asc\ desc Sort direction (default desc )
filter <tag... Repeatable filter tags (chain specific). ⚠️ SOL defaults: renounced frozen ; BSC/Base/ETH defaults: not honeypot verified renounced . Omitting filter is NOT "no filter" — chain defaults always apply. sol tags: renounced / frozen / burn / token burnt / has social / not social dup / not image dup / dexscr update link / not wash trading / is internal market / is out market . evm tags: not honeypot / verified / renounced / locked / token burnt / has social / not social dup / not image dup / dexscr update link / is internal market / is out market
platform <name... Repeatable platform filter (chain specific). sol : Pump.fun / pump mayhem / pump mayhem agent / pump agent / letsbonk / bonkers / bags / memoo / liquid / bankr / zora / surge / anoncoin / moonshot app / wendotdev / heaven / sugar / token mill / believe / tren