cabal-hunter-mcp 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -28,11 +28,11 @@ Your autonomous trading agent is reading rug.check scores, liquidity locks, and
28
28
 
29
29
  **None of that catches a cabal.**
30
30
 
31
- A cabal is 15 fresh wallets all funded from the same master wallet, all buying in the first 90 seconds of launch quietly accumulating 25-40% of supply before your bot sees the first candle. Contract clean. LP burned. Everything green.
31
+ A handful of wallets take the bottom of a launch, the chart looks clean contract fine, LP burned, everything greenand then they sell into whoever bought after them. You are the exit liquidity.
32
32
 
33
- Then they dump. Simultaneously. Into your liquidity.
33
+ This template integrates **[Cabal-Hunter](https://api.cabal-hunter.com)** as a pre-trade safety check, so your agent can see who is holding and who has already positioned to sell before it signs a swap.
34
34
 
35
- This template integrates **[Cabal-Hunter](https://api.cabal-hunter.com)** a live on-chain funding tracer as a pre-trade safety check so your agent catches coordinated launches before it signs a swap.
35
+ > **A note on what we do and don't claim.** This README used to open with "15 fresh wallets funded from the same master wallet, accumulating 25-40% of supply." We went looking for that pattern and could not find it. Tracing 323 pump.fun launches at the bonding curve turned up **zero coordinated funding clusters**, and showed why: the median launch has about **five successful buyers**, because on one representative token **1,260 of the curve's 1,266 transactions failed**. Launch capture is a sniper *race* between competing bots, not a quiet cabal. The detection layers below are the ones we can actually evidence — holder concentration, same-block bundles, coordinated selling and deployer history. The pre-launch funding tracer was withdrawn; the [full write-up is here](https://github.com/paulf280-ui/cabal-hunter-mcp#a-note-on-the-withdrawn-trace_funding-tool).
36
36
 
37
37
  ---
38
38
 
@@ -40,7 +40,7 @@ This template integrates **[Cabal-Hunter](https://api.cabal-hunter.com)** — a
40
40
 
41
41
  The classic pump.fun exit-liquidity setup: wallets positioned before the crowd take the bottom of a launch, then dump on the retail (and bots) that pile in after. Cabal-Hunter's headline output is a single **Exit-Liquidity Risk** verdict (`LOW | ELEVATED | HIGH`) that synthesises every signal below into the only thing that matters before you sign a swap: *are the insiders positioned to dump on you?*
42
42
 
43
- ## What Cabal-Hunter Does — Seven Detection Layers
43
+ ## What Cabal-Hunter Does
44
44
 
45
45
  ```
46
46
  Token mint address
@@ -50,9 +50,14 @@ Token mint address
50
50
  rug dev) into LOW | ELEVATED | HIGH: are insiders set up to dump on
51
51
  a buyer? The one number a trading agent needs.
52
52
 
53
- 1. FUNDING TRACE — top holders walked back to launch: who was funded
54
- by the same source wallet? (classic cabal signature). Every cluster
55
- carries evidence_txs[] the actual funding transactions on Solscan.
53
+ 1. HOLDER FUNDING LINEAGEthe CURRENT top holders walked back: were
54
+ they seeded by the same wallet? Only System-owned accounts count as
55
+ a funder, so pools, vaults and routers can never be mistaken for a
56
+ person (that mistake is exactly what got our pre-launch tracer
57
+ withdrawn). Every cluster carries evidence_txs[] — the actual
58
+ funding transactions on Solscan. This layer is genuinely rare to
59
+ fire; treat a hit as significant and its absence as no evidence
60
+ either way.
56
61
 
57
62
  2. SAME-BLOCK BUNDLE DETECTION — holders whose token accounts were
58
63
  created in the EXACT same slot bought in one Jito bundle. Catches
@@ -165,7 +170,7 @@ Your agent will call `check_cabal_risk(mintAddress)` before any swap and abort i
165
170
 
166
171
  ### 4. Direct REST API
167
172
 
168
- For headless scripts, custom bots, or any language. **The first 100 calls/month are free — no key, no signup.** Just call it:
173
+ For headless scripts, custom bots, or any language. **The first 250 calls/month are free — no key, no signup.** Just call it:
169
174
 
170
175
  ```bash
171
176
  curl "https://api.cabal-hunter.com/api/scan-cabal?mintAddress=YOUR_MINT_ADDRESS"
@@ -353,7 +358,7 @@ After that, pick whatever matches how hard your bot works (priced at cost — it
353
358
 
354
359
  Prepaid keys: send USDC once → `POST /api/buy-key` with the tx signature → use header `X-API-Key` on every scan. Or pay per-call via x402 (`X-Payment-Signature` header). No credit card, no account, no lock-in.
355
360
 
356
- **Does it pay for itself?** A bot sniping $1 positions loses ~$40/month to rugs it never saw coming rugs are the #1 way snipers bleed money. Cabal-Hunter flags them _before_ the buy. Dodge just 9 and the Unlimited tier has already paid for itself; every rug after that is capital back in your pocket, redeployed into trades that can actually run.
361
+ **Does it pay for itself?** Work it out with your own numbers rather than ours: the Unlimited tier is $9 a month, so it pays for itself the first time it keeps you out of a position bigger than $9 that goes to zero. Whether that happens once a month or once a week depends on what you trade and how often we are not going to invent an average for you.
357
362
 
358
363
  Payment is native on Solana — no credit card, no account, no subscription lock-in.
359
364
 
@@ -2,8 +2,9 @@
2
2
  Cabal-Hunter API demo — Python
3
3
  Checks a Solana token for coordinated wallet clusters before buying.
4
4
 
5
- First 100 queries/month are FREE — no payment required.
6
- After that: $0.05 USDC per query via X-Payment-Signature header.
5
+ First 250 scans/month are FREE — no signup, no API key, no payment.
6
+ After that: $0.001 USDC per scan via X-Payment-Signature, or a prepaid
7
+ key ($9/month unlimited, fair use 50k) via X-API-Key.
7
8
 
8
9
  Run: python demo/python_demo.py
9
10
  """
@@ -20,7 +21,8 @@ DEMO_MINT = "Axpzs7FEMYzpcfqVcDjDMQb2rsgMYVJADNpUZe7bpump"
20
21
  def check_token(mint: str) -> dict:
21
22
  """
22
23
  Query Cabal-Hunter for a token.
23
- Free for first 100 queries/month. After that, pass X-Payment-Signature.
24
+ Free for the first 250 scans/month. After that, pass X-Payment-Signature
25
+ or X-API-Key.
24
26
  """
25
27
  resp = requests.post(API, json={"mintAddress": mint}, timeout=30)
26
28
 
@@ -54,7 +56,7 @@ if __name__ == "__main__":
54
56
 
55
57
  free_left = report.get("free_queries_remaining")
56
58
  if free_left is not None:
57
- print(f"✅ Free tier — {free_left} free queries remaining this month\n")
59
+ print(f"✅ Free tier — {free_left} free scans remaining this month\n")
58
60
 
59
61
  print(f"Token: {report.get('token_name', '?')}")
60
62
  print(f"Risk: {report.get('risk')}")
@@ -2,8 +2,9 @@
2
2
  * Cabal-Hunter API demo — TypeScript/Node.js
3
3
  * Checks a Solana token for coordinated wallet clusters before buying.
4
4
  *
5
- * First 100 queries/month are FREE — no payment required.
6
- * After that: $0.05 USDC per query via X-Payment-Signature header.
5
+ * First 250 scans/month are FREE — no signup, no payment required.
6
+ * After that: $9/month unlimited, or $0.001 USDC per scan via x402
7
+ * (X-Payment-Signature header).
7
8
  *
8
9
  * Run: npx tsx demo/typescript_demo.ts
9
10
  */
@@ -66,7 +67,7 @@ async function main() {
66
67
  if (!report) process.exit(1)
67
68
 
68
69
  if (report.free_queries_remaining !== undefined) {
69
- console.log(`✅ Free tier — ${report.free_queries_remaining} free queries remaining this month\n`)
70
+ console.log(`✅ Free tier — ${report.free_queries_remaining} free scans remaining this month\n`)
70
71
  }
71
72
 
72
73
  console.log(`Token: ${report.token_name}`)
package/example_bot.py CHANGED
@@ -1,7 +1,8 @@
1
1
  """
2
2
  Example: Integrate Cabal-Hunter into a Solana trading bot.
3
3
  Checks for coordinated wallet clusters before executing any swap.
4
- Cost: $0.05 USDC per check. Pays for itself the first time it blocks a rug.
4
+ Cost: 250 scans/month free, then $0.001 USDC per check (or $9/month
5
+ unlimited). Pays for itself the first time it blocks a rug.
5
6
  """
6
7
 
7
8
  import requests
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cabal-hunter-mcp",
3
- "version": "1.0.1",
4
- "description": "Local stdio MCP server for Cabal-Hunter on-chain Solana token cabal & rug detection. Proxies to api.cabal-hunter.com.",
3
+ "version": "1.0.2",
4
+ "description": "MCP server for Cabal-Hunter \u2014 Solana token rug & cabal detection for AI agents. Wallet clusters, same-block bundles, deployer track record with peak market caps, honeypot and authority traps. 250 free scans/month, no signup.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "cabal-hunter-mcp": "server/index.mjs"
@@ -24,5 +24,10 @@
24
24
  "trading",
25
25
  "model-context-protocol"
26
26
  ],
27
- "license": "MIT"
27
+ "license": "MIT",
28
+ "repository": {
29
+ "type": "git",
30
+ "url": "git+https://github.com/paulf280-ui/solana-safe-sniper-mcp-template.git"
31
+ },
32
+ "homepage": "https://api.cabal-hunter.com"
28
33
  }
package/server/index.mjs CHANGED
@@ -10,9 +10,10 @@
10
10
  * pump-and-dump history) and live coordinated dumps on any Solana mint before it
11
11
  * signs a swap.
12
12
  *
13
- * Free tier: 100 scans/month. Beyond that, scans are $0.02 USDC via x402 on
14
- * Solana when a scan needs payment the API returns HTTP 402 with the payment
15
- * instructions, which this tool surfaces to the caller.
13
+ * Free tier: 250 scans/month per IP, no signup. Beyond that it is $9/month
14
+ * unlimited (fair use), or $0.001 USDC per scan via x402 on Solana when a
15
+ * scan needs payment the API returns HTTP 402 with the payment instructions,
16
+ * which this tool surfaces to the caller.
16
17
  *
17
18
  * Uses the low-level Server API + JSON-Schema tool definitions for maximum
18
19
  * compatibility across @modelcontextprotocol/sdk versions.