Everything here works with zero signup — your first 250 scans each month are free, no API key needed. Pick your path below.
You don't need to be a developer to use Cabal-Hunter. The bubble map is free and shows you the wallet graph visually.
One GET request, any language. No auth needed for your free 250/month — the counter is per IP.
curl "https://api.cabal-hunter.com/api/scan-cabal?mintAddress=<MINT>"
import requests r = requests.get( "https://api.cabal-hunter.com/api/scan-cabal", params={"mintAddress": mint}, timeout=30, ).json() if r["recommendation"] == "AVOID" or r["cabal_score"] >= 65: abort_buy() # you were the exit liquidity
const r = await (await fetch( `https://api.cabal-hunter.com/api/scan-cabal?mintAddress=${mint}` )).json() if (r.recommendation === "AVOID" || r.cabal_score >= 65) { abortBuy() }
| Header | Meaning |
|---|---|
| X-Free-Queries-Remaining | Free scans left this month for your IP — watch this in your bot and top up before it hits zero. |
| X-Cabal-Recommendation | AVOID / CAUTION / LOW SIGNAL — gate on this without parsing the body. |
| X-Cabal-Score | The 0–100 score. |
| X-Key-Credits-Remaining | Balance left on your prepaid key (when sending X-API-Key). |
Cabal-Hunter is a hosted MCP server at https://api.cabal-hunter.com/mcp exposing one tool: check_cabal_risk(mintAddress). Your agent calls it before any swap — automatically.
claude mcp add --transport http cabal-hunter https://api.cabal-hunter.com/mcp
{
"mcpServers": {
"cabal-hunter": {
"command": "npx",
"args": ["mcp-remote", "https://api.cabal-hunter.com/mcp"]
}
}
}
"Check the cabal risk on Ad3wM19jfM6DGbGaoswz3orJ5WHXWEjBGKpRZ2ggpump before I buy."
A published npm plugin adds the CHECK_CABAL_RISK action to any Eliza agent.
npm install elizaos-plugin-cabal-hunter
import { cabalHunterPlugin } from "elizaos-plugin-cabal-hunter" export const character = { ... plugins: [cabalHunterPlugin], }
Two lines of HTML render a live verdict card — score circle, flags, live-map link — for any token, on any site. Works in plain HTML, React, anywhere.
<div class="cabal-hunter-badge" data-mint="YOUR_TOKEN_MINT"></div> <script src="https://api.cabal-hunter.com/widget.js" defer></script>
| Attribute | What it does |
|---|---|
| data-mint | Required. The Solana mint to scan and display. |
| data-refresh="120" | Re-scan every N seconds (min 60) — live verdicts while you trade. |
| data-api-key="ch_live_…" | Use your prepaid key once you're past the free tier. |
| Field | Meaning |
|---|---|
| cabal_score | 0–100. ≥65 = HIGH risk, ≥35 = CAUTION, below = low signal. |
| recommendation | AVOID / CAUTION / LOW SIGNAL — the one field to gate a buy on. |
| risk | HIGH / MEDIUM / CLEAN. |
| verdict | Plain-English summary of everything found — human-readable, log it. |
| time_sync | true = holders bought in the exact same block (bundled launch). |
| coordinated_exit | true = multiple holders dumping in the same block, right now. |
| top_holder_pct | Largest single non-LP holder's share of supply. |
| deployer.verdict | FIRST_LAUNCH / NORMAL / POOR_TRACK_RECORD / SERIAL_RUGGER — plus their launch history. |
| coordinated_clusters[] | Each cluster: type (funding / time_sync / coordinated_exit), combined % of supply, and evidence_txs[] — the proof transactions. |
| filtered_clusters[] | Clusters we excluded as CEX noise (e.g. shared Binance funding) — shown so you can verify we're not hiding anything. |
| honeypot_risk | Solana-native honeypot signals: live freeze authority, Token-2022 traps. |
| liquidity_usd · market_cap | Live from DexScreener at scan time. |
| free_queries_remaining | Free scans left this month for your IP. |
Priced at cost — each scan runs live Helius RPC calls. Nothing is ever auto-charged: crypto payments are push-only, so you always stay in control.
250 scans / month per IP. No signup, no key, no card. The free_queries_remaining field and X-Free-Queries-Remaining header show your balance on every response, and a warning field appears at 20 left.
$9/month Unlimited (fair use, 50k/mo) for 24/7 bots — or pay-as-you-go at $0.001/scan, any amount from $1. Either way it's one USDC payment from any Solana wallet.
Your IP used its 250 free scans this month. The response body lists both ways to keep going ($9 Unlimited or $0.001/scan). Counters reset on the 1st.
Cold tokens need a live on-chain trace (1–5s). Already-indexed tokens return in <100ms. Pass pairCreatedAt (DexScreener ms timestamp) to speed up cold scans.
CLEAN means no coordinated cabal — it can't predict a solo dev pulling liquidity with a clean wallet graph. Combine with top_holder_pct, deployer.verdict and liquidity for the full picture — and check the live demo for how it performs on our own bot.
Use the feedback box on the homepage — it comes straight to us — or ping @CabalhunterAPI.