solenrich

Solana onchain intelligence for AI agents: wallet risk, due-diligence, perps funding, smart money.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
95%
Naming quality
82%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'token_trend' description lacks action verbin token_trend
  • LOWTool 'perps_cross_venue_funding' description lacks action verbin perps_cross_venue_funding

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~8,423Tokens (tool definitions)
~1.2 KBTypical response size
Significant attention impact (6.58% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "solenrich": {
      "url": "https://api.solenrich.com/mcp"
    }
  }
}

Remote endpoints

https://api.solenrich.com/mcpstreamable-http

What it can do

Tool inventory

Tools (46)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢enrich_wallet(address, depth)

Get a Solana wallet profile: SOL balance, token holdings, DeFi positions, labels (whale, active_trader, defi_user), risk score, and risk level.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address (base58, 32-44 chars)"
    },
    "depth": {
      "default": "light",
      "description": "light = basic profile, full = includes DeFi positions and connected wallets",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢enrich_token(mint, include_holders)

Analyze a Solana SPL token: price, market cap, liquidity, holder concentration (top 1/5/10%), slippage estimates at 4 position sizes ($100/$1K/$10K/$100K), risk flags, and Jupiter verification.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address (base58)"
    },
    "include_holders": {
      "default": false,
      "description": "Include top 20 holders with balances and % supply",
      "type": "boolean"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢parse_transaction(signature)

Parse a Solana transaction: type, protocol, SOL/token transfers, accounts involved, and fee details.

Input Schema

{
  "type": "object",
  "properties": {
    "signature": {
      "type": "string",
      "description": "Transaction signature (base58, 87-88 chars)"
    }
  },
  "required": [
    "signature"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪whale_watch(mint, threshold_usd, lookback_hours)

Track top token holders: balances, % supply, buy/sell volumes, accumulation vs distribution signals.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address (base58)"
    },
    "threshold_usd": {
      "default": 10000,
      "description": "Minimum USD value to qualify as whale activity",
      "type": "number"
    },
    "lookback_hours": {
      "default": 24,
      "description": "How many hours to look back (1-168)",
      "type": "number"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪due_diligence(mint)

Comprehensive token research: security audit, holder concentration, whale activity, risk score with level (LOW-CRITICAL), and SAFE/CAUTION/RISKY verdict.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address (base58)"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢wallet_graph(address, depth)

Map wallet connections: find counterparties, detect clusters of coordinated wallets, and identify suspicious patterns.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address (base58)"
    },
    "depth": {
      "default": 1,
      "description": "Hop depth (1 or 2)",
      "type": "number"
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢copy_trade_signals(address, lookback_days)

Analyze a wallet's trading performance: win rate, PnL, consistency, hold time, and smart_money classification.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address (base58)"
    },
    "lookback_days": {
      "default": 30,
      "description": "Days to analyze (1-90)",
      "type": "number"
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪batch_enrich(addresses, type, depth)

Enrich multiple wallets or tokens in a single call (1-25). Returns parallel results.

Input Schema

{
  "type": "object",
  "properties": {
    "addresses": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Array of Solana addresses (1-25)"
    },
    "type": {
      "type": "string",
      "enum": [
        "wallet",
        "token"
      ],
      "description": "Address type: wallet or token"
    },
    "depth": {
      "default": "light",
      "description": "Enrichment depth",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    }
  },
  "required": [
    "addresses",
    "type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪compare_tokens(mints)

Side-by-side comparison of 2-3 tokens: price, liquidity, volatility, holder concentration, risk. Rankings and summary picks.

Input Schema

{
  "type": "object",
  "properties": {
    "mints": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "2-3 token mint addresses to compare"
    }
  },
  "required": [
    "mints"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪compare_wallets(addresses, depth)

Side-by-side comparison of 2-3 wallets: portfolio, activity, risk, labels. Rankings and summary picks.

Input Schema

{
  "type": "object",
  "properties": {
    "addresses": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "2-3 wallet addresses to compare"
    },
    "depth": {
      "default": "light",
      "description": "Enrichment depth",
      "type": "string",
      "enum": [
        "light",
        "full"
      ]
    }
  },
  "required": [
    "addresses"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪token_trend(mint, lookback)

Token metrics over time: daily snapshots with direction indicators (improving/declining/stable) per metric.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address (base58)"
    },
    "lookback": {
      "default": "7d",
      "description": "Lookback period",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪wallet_history(address, lookback)

Wallet portfolio over time: snapshots with position changes (added/removed holdings) and direction indicators.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address (base58)"
    },
    "lookback": {
      "default": "7d",
      "description": "Lookback period",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡portfolio_history(address, period)

Full portfolio time-series for a wallet: daily snapshots of value, balance, holdings, and risk score over 7/14/30 days, plus summary stats (peak, trough, max drawdown, average, change vs period start). For charting and PnL tracking.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address (base58)"
    },
    "period": {
      "default": "7d",
      "description": "Lookback period",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪new_tokens(min_liquidity_usd, max_risk_score, limit)

Discover recently launched Solana tokens. Filters by liquidity and risk score, ranked safest first.

Input Schema

{
  "type": "object",
  "properties": {
    "min_liquidity_usd": {
      "default": 1000,
      "description": "Minimum liquidity in USD",
      "type": "number"
    },
    "max_risk_score": {
      "default": 0.8,
      "description": "Maximum risk score (0-1)",
      "type": "number"
    },
    "limit": {
      "default": 10,
      "description": "Number of tokens to return (1-20)",
      "type": "number"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪protocol_profile(protocol, include_yields)

DeFi protocol analytics: TVL, yield pools, on-chain activity, health signals. Supports Raydium, Orca, marginfi, Drift, Jupiter, Kamino, Marinade, Jito, and more.

Input Schema

{
  "type": "object",
  "properties": {
    "protocol": {
      "type": "string",
      "description": "Protocol slug (e.g. \"raydium\", \"orca\") or Solana program ID"
    },
    "include_yields": {
      "default": true,
      "description": "Include yield pool data",
      "type": "boolean"
    }
  },
  "required": [
    "protocol"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢query(question)

Ask a plain English question about any Solana wallet, token, or market. Single-intent routes to one enricher; compound intents chain 2-3 in parallel and return a unified briefing. Examples: "should I buy <mint>?" (DD + trend + whales), "wallet deep dive on <addr>" (profile + history + perps), "is <mint> safe?", "what's trending right now", "SOL-PERP funding rate".

Input Schema

{
  "type": "object",
  "properties": {
    "question": {
      "type": "string",
      "description": "Natural language question about a Solana wallet or token"
    }
  },
  "required": [
    "question"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_market_structure

Per-market OI, utilization, borrow APR, skew, OI caps, and health flags across Jupiter Perps SOL/BTC/ETH. Reads on-chain Anchor accounts directly.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_trader_profile(address)

Open positions across BOTH Jupiter Perps and Adrena for a wallet. Per-venue breakdown plus combined totals. Each position tagged with venue. Trader classification (scalper/swing/position), directional bias, multi-venue exposure flag, and risk flags (high leverage, approaching liquidation, concentrated market). Adrena PnL needs mark prices for jitoSOL/WBTC/BONK and is null when unavailable.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Solana wallet address"
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hyperliquid_trader_profile(address)

Live Hyperliquid perp positions for an EVM (0x) address, read from HL's public on-chain state. Per-position side, leverage, notional, entry, unrealized PnL, distance-to-liquidation, and risk flags. Account value, directional bias, profile (directional/market-neutral/diversified), and realized+unrealized PnL over week/month/all-time. The building block for HL smart-money tracking.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Hyperliquid EVM (0x) address"
    }
  },
  "required": [
    "address"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪hyperliquid_smart_money(market, top_traders)

Where Hyperliquid smart money is positioned. Filters the HL leaderboard to consistent directional traders (excludes market-makers + dust), then aggregates their live positions into a per-coin consensus (long/short counts, net notional, bias, conviction) plus a top-trader drill-down. Optionally focus one coin via `market`. A positioning signal, not a trade — use as confluence/risk context, not a standalone entry.

Input Schema

{
  "type": "object",
  "properties": {
    "market": {
      "description": "Optional single-coin focus, e.g. HYPE/BTC/ETH",
      "type": "string"
    },
    "top_traders": {
      "description": "How many top traders to include (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_basis_signal(asset, min_yield_apr_pct)

Computes perp mark vs spot price across venues and surfaces actually-earnable yield. Funding-rate venues (HL, dYdX) generate real yield; pool perps (Jupiter, Adrena) flagged as not viable because they charge borrow on both sides. Returns per-venue trade + filtered opportunities + best trade.

Input Schema

{
  "type": "object",
  "properties": {
    "asset": {
      "type": "string",
      "enum": [
        "SOL",
        "BTC",
        "ETH",
        "BONK"
      ],
      "description": "Asset to scan"
    },
    "min_yield_apr_pct": {
      "default": 5,
      "description": "Minimum net yield (APR %) for an opportunity to surface",
      "type": "number",
      "minimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "asset"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_market_trend(lookback)

Per-symbol (SOL/BTC/ETH) deltas for mark price, total open interest, long/short skew, utilization, and borrow APR over 7/14/30 days. Direction indicators per metric and per market. Overall direction excludes mark price. Use for regime detection — bots that adjust behavior based on whether markets are growing, stressed, or rebalancing.

Input Schema

{
  "type": "object",
  "properties": {
    "lookback": {
      "default": "7d",
      "description": "History window",
      "type": "string",
      "enum": [
        "7d",
        "14d",
        "30d"
      ]
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_venue_comparison(market, size_usd, side)

Where to trade this market at this size. Builds on cross-venue funding with spot slippage, per-venue fee, OI cap headroom, and total entry cost. Returns rankings + recommendation with warnings.

Input Schema

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "enum": [
        "SOL",
        "BTC",
        "ETH",
        "BONK"
      ],
      "description": "Asset to query"
    },
    "size_usd": {
      "type": "number",
      "minimum": 100,
      "maximum": 10000000,
      "description": "Position size in USD"
    },
    "side": {
      "default": "long",
      "description": "Side being sized",
      "type": "string",
      "enum": [
        "long",
        "short"
      ]
    }
  },
  "required": [
    "market",
    "size_usd"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪perps_cross_venue_funding(market, include_reference)

Compare borrow/funding APR + OI across Solana on-chain venues (Jupiter Perps, Adrena) and cross-chain reference (Hyperliquid, dYdX v4). Returns best entry per side, basis vs Hyperliquid, and arbitrage opportunities. SOL/BTC/ETH/BONK supported (with venue-specific availability).

Input Schema

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "enum": [
        "SOL",
        "BTC",
        "ETH",
        "BONK"
      ],
      "description": "Asset to query"
    },
    "include_reference": {
      "default": true,
      "description": "Include Hyperliquid + dYdX v4 reference rates",
      "type": "boolean"
    }
  },
  "required": [
    "market"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢trending_signals(min_liquidity_usd, max_risk_score, limit, include_whale_watch)

Ranked list of Solana tokens worth paying attention to right now. Composes DexScreener trending + risk scoring + whale-flow into a composite signal with reasoning.

Input Schema

{
  "type": "object",
  "properties": {
    "min_liquidity_usd": {
      "default": 10000,
      "description": "Minimum liquidity in USD",
      "type": "number"
    },
    "max_risk_score": {
      "default": 0.7,
      "description": "Maximum risk score (0-1)",
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "limit": {
      "default": 10,
      "description": "Number of tokens to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "include_whale_watch": {
      "default": true,
      "description": "Include whale flow signal",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪smart_money_flow(wallets, lookback_days, min_win_rate, top_n_tokens, include_graph)

Where high-performing Solana wallets are moving. Scores seed wallets by copy-trade metrics, surfaces tokens they're accumulating, and maps wallet clusters.

Input Schema

{
  "type": "object",
  "properties": {
    "wallets": {
      "description": "Optional wallet addresses to score (curated default used if omitted)",
      "maxItems": 30,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "lookback_days": {
      "default": 14,
      "description": "Copy-trade lookback window",
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    },
    "min_win_rate": {
      "default": 0.55,
      "description": "Minimum win rate to qualify",
      "type": "number",
      "minimum": 0,
      "maximum": 1
    },
    "top_n_tokens": {
      "default": 10,
      "description": "Max accumulated tokens to surface",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "include_graph": {
      "default": true,
      "description": "Include wallet cluster analysis",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡smart_money_trenches(hours_back, max_token_age_hours, min_buyers, limit)

Which proven-winner wallets are aping fresh (<6h) memecoin launches right now, and what are they buying? Vetted realized-PnL winner seed set (bot-filtered), recent buys overlaid against token launch times, ranked by distinct smart buyers + recency. Pre-ape attention signal.

Input Schema

{
  "type": "object",
  "properties": {
    "hours_back": {
      "default": 12,
      "description": "How far back to scan seed-wallet buys (hours)",
      "type": "integer",
      "minimum": 1,
      "maximum": 48
    },
    "max_token_age_hours": {
      "default": 6,
      "description": "Max token age in hours to count as fresh",
      "type": "number",
      "minimum": 1,
      "maximum": 72
    },
    "min_buyers": {
      "default": 1,
      "description": "Min distinct smart buyers per token",
      "type": "integer",
      "minimum": 1,
      "maximum": 14
    },
    "limit": {
      "default": 10,
      "description": "Max tokens to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪runner_scan(max_token_age_hours, min_liquidity_usd, min_volume_h1_usd, limit)

Which fresh Solana memecoins are ACCELERATING right now? Measures buy-rate acceleration (5m vs 1h, 1h vs 6h), buy pressure, volume/price velocity, holder growth and liquidity trend, then classifies each token RUNNING / IGNITING / PARABOLIC_LATE / FADING with a 0-1 score and reasoning. Flags already-ran tokens as entry risk and liquidity pulls as rugs.

Input Schema

{
  "type": "object",
  "properties": {
    "max_token_age_hours": {
      "default": 24,
      "description": "Max token age in hours since first pair",
      "type": "number",
      "minimum": 0.1,
      "maximum": 168
    },
    "min_liquidity_usd": {
      "default": 10000,
      "description": "Minimum pool liquidity in USD",
      "type": "number",
      "minimum": 0,
      "maximum": 10000000
    },
    "min_volume_h1_usd": {
      "default": 5000,
      "description": "Minimum 1h volume in USD",
      "type": "number",
      "minimum": 0,
      "maximum": 10000000
    },
    "limit": {
      "default": 15,
      "description": "Max tokens to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡feed_latest(since)

Daily intelligence brief — pre-computed ranking of trending Solana tokens with composite-signal scoring. Cached 24h, lazy-populated on cache miss. Pass `since` (ISO 8601) to short-circuit on no-change polls.

Input Schema

{
  "type": "object",
  "properties": {
    "since": {
      "description": "Optional ISO 8601 timestamp of last successful poll. If brief is not newer, response sets unchanged=true with empty payload.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_alerts(tokens, wallets, since)

Poll-based event detection covering spot + Jupiter Perps. Pass a watchlist (token mints + wallet addresses) and a since timestamp; receive alerts graded by severity. Spot alerts: price spike/drop, risk change, whale flow, concentration shift, portfolio value change, position add/remove. Jupiter Perps alerts per wallet: position opened, position closed, at-risk (high leverage or underwater), liquidation approaching, PnL swing. Stateless — caller owns the cursor.

Input Schema

{
  "type": "object",
  "properties": {
    "tokens": {
      "default": [],
      "description": "Token mints to watch (max 10)",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "wallets": {
      "default": [],
      "description": "Wallet addresses to watch — spot + Jupiter Perps (max 10)",
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "since": {
      "type": "string",
      "description": "ISO 8601 timestamp — return alerts fired since this moment"
    }
  },
  "required": [
    "since"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢consensus_signal(type, address, window, limit)

What tokens or wallets are being queried by other agents right now. Proprietary data derived from SolEnrich's own query stream. Pass `address` for that entity's rank/percentile/trend; omit it for top-N. Windows: 1h, 6h, 24h.

Input Schema

{
  "type": "object",
  "properties": {
    "type": {
      "default": "token",
      "description": "Entity type to query",
      "type": "string",
      "enum": [
        "token",
        "wallet"
      ]
    },
    "address": {
      "description": "Optional Solana address — single-entity report when provided",
      "type": "string"
    },
    "window": {
      "default": "1h",
      "description": "Lookback window",
      "type": "string",
      "enum": [
        "1h",
        "6h",
        "24h"
      ]
    },
    "limit": {
      "default": 10,
      "description": "Top-N size when address is omitted",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢trenches_check(mint)

Before you ape, run the check: pass a token mint and get a HIGH_CONFLUENCE / MODERATE / SINGLE_SIGNAL / NO_SIGNAL verdict with reasoning. Runs on-chain velocity (runner stage + score), proven-winner wallet buys, and agent attention against that specific token. Pairs with due_diligence (structural safety) for a full pre-entry read. NFA.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address to check"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢exit_signal(mint, entry_price_usd)

The sell-side verdict for a token you hold: pass a mint, get EXIT / DERISK / HOLD with a 0-1 exit score and reasoning. Reads sell pressure, buy-rate deceleration, volume fade, distribution into strength, top-holder flow (whales distributing vs accumulating), liquidity trend, and holder churn. Rug triggers (LP pull, active dump) override everything. Works on tokens of any age. NFA.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "Token mint address you hold"
    },
    "entry_price_usd": {
      "description": "Optional entry price in USD — adds unrealized-PnL context",
      "type": "number",
      "exclusiveMinimum": 0
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢trenches_scan(max_token_age_hours, min_liquidity_usd, limit)

The full memecoin pre-ape scan in one call: on-chain velocity (runner detection), proven-winner wallet buys (smart-money), and agent attention, composited into a ranked list with per-token reasoning and HIGH_CONFLUENCE / MODERATE / SINGLE_SIGNAL verdicts. Confluence across independent signals is the edge. NFA.

Input Schema

{
  "type": "object",
  "properties": {
    "max_token_age_hours": {
      "description": "Max token age in hours (default 24)",
      "type": "number",
      "minimum": 1,
      "maximum": 72
    },
    "min_liquidity_usd": {
      "description": "Liquidity floor in USD (default 5000)",
      "type": "number",
      "minimum": 0
    },
    "limit": {
      "description": "Max picks returned (default 10)",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡attention_momentum(window, limit)

Tokens ranked by ACCELERATION of agent attention (query velocity change across three consecutive windows), overlaid with price change over the same window. Divergence classes: early_signal (attention up, price flat — agents researching before the market moves), confirmed_momentum, distribution_risk (attention cooling while price pumps), fading. Proprietary — derived from SolEnrich's own query stream. Windows: 1h, 6h, 24h.

Input Schema

{
  "type": "object",
  "properties": {
    "window": {
      "default": "6h",
      "description": "Window size — acceleration compares three consecutive windows of this size",
      "type": "string",
      "enum": [
        "1h",
        "6h",
        "24h"
      ]
    },
    "limit": {
      "default": 10,
      "description": "Max ranked entries",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪gacha_ev_scan(machine, franchise, exit_strategy, min_edge_pct)

Scan Jupiter Gacha (Collector Crypt) tokenized-card packs for net-of-exit expected value. Per machine: gross insured EV vs the guaranteed instant-buyback floor (85-93% of insured value, ≤72h) vs a marketplace sale (insured value minus 2% fee, fill-risk). Returns a POSITIVE_EV / HOUSE_EDGE / NEGATIVE_EV verdict — the realizable EV the platform hides behind its gross-EV headline. NFA.

Input Schema

{
  "type": "object",
  "properties": {
    "machine": {
      "description": "Restrict to one machine code (e.g. pokemon_50); omit to scan all",
      "type": "string"
    },
    "franchise": {
      "default": "all",
      "description": "Franchise filter",
      "type": "string",
      "enum": [
        "pokemon",
        "onepiece",
        "all"
      ]
    },
    "exit_strategy": {
      "default": "both",
      "description": "Which exit path to rank/verdict against",
      "type": "string",
      "enum": [
        "buyback",
        "marketplace",
        "both"
      ]
    },
    "min_edge_pct": {
      "description": "Only surface machines with net edge ≥ this %",
      "type": "number",
      "minimum": -100,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢stonk_pairs(category, launchable_only)

FREE. List the quote assets a StonkFun (stonkfun.xyz) coin can be launched against — xStocks like NVDAX/SPYX/TSLAX, Backpack pre-stocks, currencies, custom mints — with normalized categories and an is_agent_launchable flag. Call this BEFORE sizing or preflighting a launch: the quoteMint must be one of these, and only launchLabReady pairs can be built on-chain.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "description": "Normalized category filter",
      "type": "string",
      "enum": [
        "xstock",
        "prestock",
        "currency",
        "leverage",
        "solana",
        "collectible",
        "custom"
      ]
    },
    "launchable_only": {
      "default": false,
      "description": "Only pairs an agent can launch against right now",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢stonk_reward_risk(mint)

Call BEFORE sizing a StonkFun reward-coin position. Returns payout status — PAYING (holders got a payout in the last 24h), STALE, NEVER, NOT_REWARD — the trading cost (transfer-tax bps and round-trip %), and a 0-100 health score read from the chain: fee bps + cap, withdraw authority (must be StonkFun's distributor), fee mutability, distributions + last payout, flywheel, holders + concentration, quote category, age.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "StonkFun coin mint address (base58)"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_yield(mint)

Trailing 7d / 30d / lifetime holder yield for a StonkFun reward coin: rewards paid in the quote asset, priced in USD, divided by average market cap over the window. The annualized figure carries an explicit caution flag when the window is under 7 days. Also explains quote exposure — the holder is long both the coin and its quote asset (e.g. NVDAX), and rewards accrue in that asset. Use when asked "what does this coin pay holders?"

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "StonkFun reward coin mint address (base58)"
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_alerts(mints, since, min_holders_change_pct, stale_after_hours)

What changed for up to 25 StonkFun reward coins since your last check: payout landed, payout went stale (no payout for 24h+), stopped trading (no 24h volume), holders moved 10%+, and rewards paid to holders since then in the quote asset and USD. Also the current payout status of each coin. Pass the previous checked_at as `since` on each poll. Use for "did my reward coins pay today?" or to watch a stonk portfolio.

Input Schema

{
  "type": "object",
  "properties": {
    "mints": {
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Reward coin mints to watch (up to 25)"
    },
    "since": {
      "type": "string",
      "description": "ISO time of your last check, e.g. 2026-09-23T00:00:00Z"
    },
    "min_holders_change_pct": {
      "default": 10,
      "description": "holders_change threshold in %",
      "type": "number",
      "minimum": 1,
      "maximum": 1000
    },
    "stale_after_hours": {
      "default": 24,
      "description": "Hours without a payout that count as stale",
      "type": "number",
      "minimum": 1,
      "maximum": 168
    }
  },
  "required": [
    "mints",
    "since"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_yield_batch(mints, quote_mint, category, min_holders, max_age_days, ...)

stonk_yield for up to 25 StonkFun reward coins in one call: 7d / 30d / lifetime holder yield per coin, annualized with caution flags, plus reward asset, market cap, holders and last payout. Pass `mints` (up to 25), or the screener filters (quote mint, category, holders, age, volume, market cap, paying_only, live_only, sort) to pick the coins. Use for "what do the paying NVDAX coins yield?" or to compare yields across a shortlist, instead of calling stonk_yield once per coin.

Input Schema

{
  "type": "object",
  "properties": {
    "mints": {
      "description": "Up to 25 reward coin mints; when given, the filters are ignored",
      "minItems": 1,
      "maxItems": 25,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "quote_mint": {
      "description": "Only coins paired against this quote mint",
      "type": "string"
    },
    "category": {
      "description": "Quote category filter",
      "type": "string",
      "enum": [
        "xstock",
        "prestock",
        "currency",
        "leverage",
        "solana",
        "collectible",
        "custom"
      ]
    },
    "min_holders": {
      "description": "Minimum reward-receiving holders",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "max_age_days": {
      "description": "Maximum coin age in days",
      "type": "number",
      "minimum": 0
    },
    "max_market_cap_usd": {
      "description": "Maximum market cap in USD",
      "type": "number",
      "minimum": 0
    },
    "paying_only": {
      "default": false,
      "description": "Only coins that paid holders in the last 24h",
      "type": "boolean"
    },
    "live_only": {
      "default": false,
      "description": "Only coins that traded AND paid in the last 24h",
      "type": "boolean"
    },
    "sort": {
      "default": "volume24h",
      "description": "Ranking key",
      "type": "string",
      "enum": [
        "yield7d",
        "yield30d",
        "rewardsUsd",
        "volume24h",
        "lastPayout",
        "holders",
        "priceChange24h"
      ]
    },
    "limit": {
      "default": 25,
      "description": "Coins to return (max 25)",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_screener(quote_mint, category, min_holders, min_age_days, max_age_days, ...)

Screen every StonkFun reward coin with payout status (PAYING / STALE / NEVER), a live flag (traded AND paid in 24h), and the round-trip transfer-tax cost per row. Filters: quote mint, category, holders, age (min/max), 24h volume, market cap, paying_only, live_only. Sort by volume24h (default), lastPayout, holders, priceChange24h, yield7d, yield30d, rewardsUsd. Use for "which coins on NVDAX paid holders today?" or "live xStock coins under $1M". Served from a 10-minute ingest. Use stonk_gems for a ranked shortlist.

Input Schema

{
  "type": "object",
  "properties": {
    "quote_mint": {
      "description": "Only coins paired against this quote mint",
      "type": "string"
    },
    "category": {
      "description": "Quote category filter",
      "type": "string",
      "enum": [
        "xstock",
        "prestock",
        "currency",
        "leverage",
        "solana",
        "collectible",
        "custom"
      ]
    },
    "min_holders": {
      "description": "Minimum reward-receiving holders",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "min_age_days": {
      "description": "Minimum coin age in days",
      "type": "number",
      "minimum": 0
    },
    "max_age_days": {
      "description": "Maximum coin age in days",
      "type": "number",
      "minimum": 0
    },
    "min_volume_24h_usd": {
      "description": "Minimum 24h volume in USD",
      "type": "number",
      "minimum": 0
    },
    "max_market_cap_usd": {
      "description": "Maximum market cap in USD",
      "type": "number",
      "minimum": 0
    },
    "paying_only": {
      "default": false,
      "description": "Only coins that paid holders in the last 24h",
      "type": "boolean"
    },
    "live_only": {
      "default": false,
      "description": "Only coins that traded AND paid in the last 24h",
      "type": "boolean"
    },
    "sort": {
      "default": "volume24h",
      "description": "Ranking key",
      "type": "string",
      "enum": [
        "yield7d",
        "yield30d",
        "rewardsUsd",
        "volume24h",
        "lastPayout",
        "holders",
        "priceChange24h"
      ]
    },
    "limit": {
      "default": 25,
      "description": "Rows to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢stonk_gems(quote_mint, category, max_age_days, min_holders, max_market_cap_usd, ...)

Find gems on StonkFun: reward coins that look early, real, and paying. Ranks every reward coin 0-100 on recent holder payout, holders, market cap headroom, 24h turnover, age, momentum, quote-asset strength, and flywheel — stages GEM / WATCH / NOISE with plain reasons and warnings, plus the round-trip tax cost. Use for "what should I look at on StonkFun right now?" Follow up with trenches_check on a GEM and stonk_reward_risk before sizing.

Input Schema

{
  "type": "object",
  "properties": {
    "quote_mint": {
      "description": "Only coins paired against this quote mint",
      "type": "string"
    },
    "category": {
      "description": "Quote category filter",
      "type": "string",
      "enum": [
        "xstock",
        "prestock",
        "currency",
        "leverage",
        "solana",
        "collectible",
        "custom"
      ]
    },
    "max_age_days": {
      "default": 14,
      "description": "Ignore coins older than this",
      "type": "number",
      "minimum": 0,
      "maximum": 90
    },
    "min_holders": {
      "default": 25,
      "description": "Ignore coins with fewer reward-receiving holders",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "max_market_cap_usd": {
      "default": 5000000,
      "description": "Ignore coins above this market cap",
      "type": "number",
      "minimum": 0
    },
    "limit": {
      "default": 15,
      "description": "Rows to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_launch_intel(category, min_coins, sort, limit)

What to launch on StonkFun and against which quote asset. Per quote: coins, launches (24h/7d), share trading today, share paying holders today, survival past day 3, median holders and market cap, 100 vs 300 bps tax mix with trading and paying rates, crowding, and a 0-100 demand score — plus overall stats and plain recommendations. Use BEFORE stonk_pairs / stonk_preflight when deciding what to launch.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "description": "Quote category filter",
      "type": "string",
      "enum": [
        "xstock",
        "prestock",
        "currency",
        "leverage",
        "solana",
        "collectible",
        "custom"
      ]
    },
    "min_coins": {
      "default": 5,
      "description": "Only quotes with at least this many reward coins",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "sort": {
      "default": "demand",
      "description": "Ranking key",
      "type": "string",
      "enum": [
        "demand",
        "survival",
        "volume",
        "launches",
        "paying"
      ]
    },
    "limit": {
      "default": 20,
      "description": "Rows to return",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪stonk_preflight(unsigned_transaction, quote_mint, mode, launch_params)

Call BEFORE broadcasting a self-built Raydium LaunchLab launch meant for StonkFun. Pass the base64 unsigned transaction, the quote mint, and the mode; it decodes the initialize instruction and diffs every parameter against StonkFun's /launchlab/pricing — GlobalConfig, platform id per mode, curve, supply, totalSellA, raise, 6-decimal Token-2022 base mint, quote token program, curve-rule account last, and the reward-mode transfer fee (including Raydium's transferFeeBasePoints / maxinumFee spelling). Returns ok, mismatches with fixes, warnings. A mismatched pool is never adopted: the tax goes to nobody.

Input Schema

{
  "type": "object",
  "properties": {
    "unsigned_transaction": {
      "type": "string",
      "description": "Base64 unsigned transaction (legacy or v0) with the LaunchLab initialize instruction"
    },
    "quote_mint": {
      "type": "string",
      "description": "Quote mint the launch is priced against"
    },
    "mode": {
      "type": "string",
      "enum": [
        "standard",
        "reward"
      ],
      "description": "Launch mode"
    },
    "launch_params": {
      "description": "Optional: the params object you passed to the SDK, linted for misspelled fee fields",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    }
  },
  "required": [
    "unsigned_transaction",
    "quote_mint",
    "mode"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢stonk_quote(mint, size_usd, hold_days)

What one StonkFun trade costs at a given size and what the position is expected to pay back while held. Entry and exit cost (transfer tax + price impact at size), round-trip % and breakeven price move, pro-rata payout share with a dust warning, expected payout over the hold from real yield history, and a PAYS / MARGINAL / COSTS / NOT_PAYING verdict with breakeven hold days. No swap. Use before sizing any reward-coin position; follow with trenches_check to time the entry.

Input Schema

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "description": "StonkFun reward coin mint address (base58)"
    },
    "size_usd": {
      "default": 100,
      "description": "Position size in USD",
      "type": "number",
      "minimum": 1,
      "maximum": 1000000
    },
    "hold_days": {
      "default": 7,
      "description": "Intended holding period in days",
      "type": "number",
      "minimum": 0.25,
      "maximum": 365
    }
  },
  "required": [
    "mint"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded46 tools
verifiedversion not recorded44 tools