mcp-server-madeonsol
MCP serverDatabases & datamadeonsol adds Solana trading intelligence to your AI, covering what influencers are trading and analytics on who deployed each token. Once added, your AI can pull this data when you ask about a token, a trader, or who is behind a launch. You can connect with an API key or pay per use.
Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.
Add to setup to save this item as a reference. Ahel cannot run it, and signing in will not install it.
What your AI can do with it
- See what Solana influencers are trading
- Research the deployer behind a Solana token
- Get trading intelligence on tokens before you trade
- Connect with an API key or pay per use
Getting started
- Save this item in Your setup as a reference.
- Read the source or reference documentation for its setup requirements. Saving it here does not connect it to your AI.
- Check this page for availability before trying to install it through Ahel.
From the project's README
As published by madeonsol/mcp-server-madeonsol in README.md.
β‘ Install via Smithery Β· π€ Use in Claude Desktop Β· π±οΈ Use in Cursor Β· π API docs Β· π° Free API key Β· π On Glama
MCP server for MadeOnSol Solana KOL intelligence API. Use from Claude Desktop, Cursor, or any MCP-compatible client.
Real-time Solana trading intelligence: track 1,069 KOL wallets with <3s latency on paid keys and x402 pay-per-call (free-tier live feeds are 5-min delayed), score 23,000+ Pump.fun deployers, surface deshred deploy signals ~500ms before on-chain confirmation, detect multi-KOL coordination, surface bundle-cohort holdings (which same-slot wallets still hold a token's supply), verify any wallet's CURRENT on-chain holdings straight from its token accounts, and stream every DEX trade across 9+ programs. Free tier: 200 requests/day across 40+ endpoints (live feeds 5-min delayed) β no signup payment. Get a key at madeonsol.com/pricing.
New in 1.27.0 β top traders, sniper watchlist management, and two update tools (104 tools total). Six additions found by an internal agentic-infra coverage audit.
madeonsol_token_top_traders(GET /tokens/{mint}/top-traders, PRO/ULTRA) ranks a token's wallets by realized PnL or ROI, enriched with KOL/alpha-wallet identity β this endpoint already existed on the REST API and x402 rail but had no MCP tool.madeonsol_sniper_watchlist_list/_add/_remove(PRO+/ULTRA) manage your custom sniper-deploy watchlist (madeonsol_sniper_recent(watchlist: true)narrows to it) β previously only reachable via raw HTTP.madeonsol_update_webhook(PATCH) changes a webhook's URL, events, or active state without deleting and recreating it.madeonsol_wallet_tracker_relabel(PATCH) renames or clears a tracked wallet's label.New in 1.26.0 β deployer reputation as-of a date, and creator-fee rewards. Two new tools (PRO+, keyed
msk_API only β no x402 route).madeonsol_deployer_as_ofbindsGET /deployer-hunter/{wallet}/as-of: the deployer's reputation exactly as it stood ondate(default today, UTC) β the latest write-on-change snapshot at or before it, so an agent backtests without look-ahead bias.snapshot.snapshot_datecan predatedate(write-on-change);snapshot.carried: truemarks that. No snapshot at or beforedateβas_of: false, snapshot: nullβ nothing is ever synthesized.datemust be β₯ 2026-04-07 and not in the future.madeonsol_deployer_rewardsbindsGET /deployer-hunter/{wallet}/rewards: pump.fun creator-fee rewards, answered two ways that are never merged βcollected(what actually reached the wallet: direct vault claims kept 90 days, social-handle claims, shareholder payouts on any token) andattributed(every payout on the tokens it deployed, splitto_self/to_others+redirected_pct). Every money field is{sol, usdc, usd};usdisnull(never a silent 0) when a SOL amount exists and no SOL price was available.top_tokens/top_recipients(β€10, USD-sorted) show where attributed fees went. Works for non-deployers too (is_deployer: false,attributedempty).
New in 1.25.0 β token surges & revivals: momentum fires with the honest half attached. The new
madeonsol_tokens_surgestool bindsGET /tokens/surges(PRO+, keyedmsk_API only β no x402 route): every token momentum fire, newest first. Two kinds, one row shape.surgeβ a token < 30 min old whose market cap runs hard against its launch MC, in three tiers that each fire at most once per mint:early(β€10 min, β₯$12k, β₯3Γ launch),strong(β€30 min, β₯$30k, β₯6Γ launch and β₯2Γ the lowest sample of the last 3 min β it is climbing now),breakout(β€2 min, β₯$45k, β₯8Γ). A tier must be sustained (current tick and a sample β₯10 s older; nothing fires before 20 s of age) β a same-slot bundle marked to $475k at age 1 s is a spike, not a surge.revivalβ a token with no 1-minute trade candle for β₯24 h that starts trading again, confirmed only by the tape (β₯5 buys, β₯$500 buy volume, MC β₯1.5Γ the pre-dormancy close), never by the price mark;tierisnull. Hard gates on both: liquidity β₯$1.5k and β₯2 % of MC, and the MC gained must be paid for by buy volume (a price mark in a spoof pool moves MC on ~$0). Every row carries the bursttape(sourcecandles / wallet_trades;unique_buyersonly where the mint is in trade coverage βwallet_data_available:falseotherwise, never an inferred zero),kolbuyers, the first-20early_buyerscohort (bundled / sold / sniper wallets),deployerreputation andrisk_flags[](bundled_launch,few_buyers,wash_pattern,thin_liquidity,cold_deployer,sniper_heavy,early_buyers_exiting,sell_pressure,no_tape_trades,no_prior_price,mint_authority_active,transfer_feeβ empty means no flag raised, not verified clean). Rows β₯65 min old carry the +1 houtcome;stats=1prints per-(kind, tier) hit-rates (up_1h_pct,median_peak_multiple,doubled_1h_pct) β out-of-sample by construction. Filterskind,tier,mint,launchpad,deployer_tier,min_mc_usd/max_mc_usd,min_buys,exclude_flags,only_clean; cursorssince/before. Pushed live on the newtoken:surgesWS channel (eventstoken:surge/token:revival; subscribe filterskinds[],tiers[],launchpads[],exclude_flags[],min_mc_usd/max_mc_usd,deployer_tier[]) and accepted bymadeonsol_create_webhookas eventstoken:surge/token:revivalwith the same filters. The response echoes the live thresholds indefinitions.
New in 1.24.1 β stream tokens never expire.
madeonsol_stream_token(POST /stream/token) now returns the same token on every call, forever. It stops working only if your subscription lapses or you call the tool withrotate: trueto replace it (the previous value keeps working for 60 s).expires_atand the newnext_refresh_atare alwaysnull(kept for wire compatibility β do not schedule refreshes on them); the response gainsrotated(boolean) andlifetime(string). The server never rotates on its own and never sendstoken_refreshunless you rotated; a4001close means "mint again" (lapsed or rotated), never a timer. PreferAuthorization: Bearer <token>on the WebSocket handshake β?token=still works and is masked in access logs.
New in 1.24.0 β token locks & vesting, upcoming unlocks, and pump.fun creator-fee sharing / claims. Five new tools (all PRO+, keyed
msk_API only β no x402 route).madeonsol_token_locksbindsGET /tokens/{mint}/locks: every on-chain lock / vesting contract on a mint (Streamflow, Jupiter Lock, Bonfida vesting) with the schedule, the terms (cancelable_by_sender= the locker can pull it β funds are locked against the recipient, not the locker) and a live-derived view (locked_*,claimable_*,next_unlock) plus asummarywith 7d / 30d forward unlock totals.madeonsol_token_locks_feed(GET /tokens/locks) is the cross-token feed of NEW contracts (cursorpagination.next_since, or push on WS channeltoken:locks),madeonsol_token_unlocks(GET /tokens/unlocks) lists upcoming unlock EVENTS (cliff / period / final / tranche) inside a 1hβ90d window sorted by soonest / largest_usd / largest_pct. LP locks are not included β token/vesting locks only.madeonsol_token_fee_shares(GET /tokens/{mint}/fee-shares) decodes a pump.fun coin's on-chainSharingConfigβ shareholders withshare_bps,is_admin,is_social_pda(fees earmarked for an X identity:social.platform2 = X,user_id= the numeric platform id, not the handle),redirected_bps,is_default: true= 100% to the creator β plus a distributions rollup and config history;madeonsol_token_fee_claims(GET /tokens/fee-claims) is the fee-event feed (distributionwith per-addresspayouts[],social_claim,shares_created/updated/reset,creator_transferred,creator_claimonly when asked viatype=), pushed on WS channeltoken:fee_claims. Fee-event history starts 2026-08-17. All base-unit amounts are digit strings; ui / usd / pct arenullwhen decimals or price are unknown.
New in 1.23.0 β live holder census: exact holder count, labelled holders, and pools that are named, not just excluded. The new
madeonsol_token_holderstool bindsGET /tokens/{mint}/holders(PRO+): every token account of the mint read from the ledger atconfirmedand merged per owner, soconcentration.holder_countis EXACT (distinct non-zero owners minus pools / bonding curves / burns) β never a trade-derived estimate; it isnullonly when the provider refuses the census for a mega-cap, in which case you get the top-20 view andsource.census_fallback_reasonsays so. Each disclosed owner carries our labels (deployer/kol/early_buyer/bundle/bot/dump_clusterβ empty means unknown to us, not clean), andexcluded[]NAMES what was taken out of the circulating denominator:reason=pool(withdex+pool_address),bonding_curve(pump.fun / LaunchLab),burn, orprogram_accountonly when we genuinely cannot attribute the PDA;pool_pct/burned_pct/program_pctsplit the exclusion. Amounts are raw u64 strings. Disclosure: PRO ranks 1β10, ULTRA 1β50, BUSINESS 1β100 β the maths is tier-independent. Big tokens take 5β30 s upstream: you get503 holder_scan_in_progresswithretry_after_seconds: 20while the scan finishes into the cache, and the retry is instant.
New in 1.22.0 β two prices on the trade tape, and the right one is now the default. The trade tape now tells you what a trade actually cost.
price_sol/price_usdon each trade are THIS trade's executed price βsol_amount / token_amount, reconciling exactly with the amounts on the same row and with the PnL endpoints. Becausesol_amountis the wallet's net SOL movement, that is the trader's all-in effective rate: swap fee and any account rent included, not the pool mid. The market-cap tracker's canonical pool price moved to the newmarket_price_sol/market_price_usdfields β it is sampled once per token per pool update, so every trade in the same slot shares it. Until nowprice_solcarried that canonical value and disagreed with the row's own amounts by a 7.9% median (p90 ~74%): a stale market price reads low in a pump and high in a dump, so anything you averaged out of the tape inherited the bias instead of cancelling it. Useprice_solfor cost basis, fills and PnL;market_price_solfor a per-token series independent of trade size and direction. Bothmadeonsol_token_tradesandmadeonsol_wallet_tradescarry all four fields, and both tool descriptions spell out which price to use so an agent does not average the wrong one.
New in 1.21.0 β the Deployer Hunter surface completed. Seven new operations that existed on the API but had no SDK binding:
madeonsol_deployer_leaderboard,madeonsol_deployer_stats,madeonsol_deployer_profile,madeonsol_deployer_tokens,madeonsol_deployer_alert_stats,madeonsol_deployer_best_tokensandmadeonsol_deployer_recent_bonds. Readbonding_rate(lifetime) againstrecent_bond_rate(rolling) β the gap between them is the signal, not either number alone.runner_rateonly means something oncelabeled_tokens >= 3, and an untracked wallet returns a profile with zeroed counters, not a 404, so checktotal_deployedbefore reading a 0% bond rate as a track record. Dependency ranges are now bounded to the versions actually tested (@x402/*^2.x,@solana/kit^5.5.1) instead of open-ended>=0.0.1, and the lazily-imported x402 peers are marked optional β a keyed install no longer pulls the whole Solana stack.
New in 1.20.0 β Token depth / price impact + deployer self-activity on risk. New tool
madeonsol_token_depth(GET /tokens/{mint}/depth) β per-pool price-impact / slippage: "how much SOL moves this token's price N%", per pool (NOT router-optimal). Pass up to 8 SOL buysizes(each >0 and β€10000; default[0.5, 1, 5, 10]); every computable pool returnsspot_price_sol,fee_pct, aquotes[]entry per size (size_sol,tokens_out,avg_price_sol,price_impact_pct), andto_move_priceβ the SOL required to move price 1% / 5% / 10%. Constant-product AMMs are served from stream reserves (source: "stream"withreserves_age_ms); pump.fun/bonk bonding curves from a live read of the curve's virtual reserves (source: "live_rpc"). Pools that can't be priced honestly β concentrated CLMM/Orca/DLMM, Meteora-DBC curves, unclassified models β come back inunsupported_pools[]with areason(e.g.concentrated_liquidity_depth_not_supported,curve_graduated_use_amm_pool) instead of a wrong number;primary_poolnames the deepest computable pool,found: falsemeans no pools tracked. PRO/ULTRA only. Andmadeonsol_token_risknow returns a top-leveldevblock (deployer self-activity;nullwhen the mint has no deployer-pipeline row): the create-tx self-buy snapshot (buy_sol,buy_tokens,buy_supply_pct), the post-create rollup (bought_tokens_afterβ catches the same-second-separate-tx dev buy the create snapshot reads as 0 βsold_tokens,sold_sol,first_sell_at/last_sell_at), live on-chain holdings (holdings_tokens,holdings_supply_pctβ pump.fun 1B denominator, null elsewhere βwallet_empty: is the dev wallet empty NOW), andtransferred_out(tokens left without a sell;null= unknown, never a guess), plusas_of.deployer:alertwebhook/WS payloads gaindev_buy_sol+dev_buy_supply_pct.New in 1.19.0 β Batch wallet classification + token trade tape + bigger keyless catalog. New tool
madeonsol_wallet_batch_classifyβ reputation flags for 1β100 wallets in one call (counts as one request): per walletis_sniper/is_bundler/is_dumper/is_kol(+kol_name),bot_confidence(string enumnone/low/medium/high,nullwhen not alpha-tracked), and adump_clusterblock (dump_cohorts,runner_cohorts,total_cohorts,as_of). Flags are pump.fun-pipeline scoped βfalse= not observed, NOT verified clean;is_bundleris lifetime,is_dumperis a rolling 42d window. New toolmadeonsol_token_tradesβ mint-scoped cursor-paginated trade tape (the backfill complement to the live firehose):tx_signature,wallet_address,action,sol_amount,token_amount,price_sol/price_usd,early_buyer_rank,slot,block_time,traded_at; filtersaction/wallet/sinceβuntil(default FULL history β capture starts 2026-04-12), plus acoveragehonesty block. Both PRO/ULTRA.madeonsol_wallet_statsflags gainis_sniper/is_bundler/is_dumper+dump_cluster, andbot_confidenceis now correctly typed as a string enum (it was documented as a number and always came backnulldue to a server bug β now returns real values).madeonsol_token_riskinputs andmadeonsol_sniper_recentdeploys gain the slot-windowsniper_footprint/footprintrollup (buys,buyers,sol,supply_pct,sniper_wallet_buys,data_available,as_ofβnull= not observable, not zero). The keyless x402 catalog grows 18 β 25 endpoints: token candles ($0.01), almost-bonded ($0.01), top-traders ($0.02), cap-table ($0.02), sniper recent ($0.01), token flow ($0.01), deployer trajectory ($0.01) βmadeonsol_sniper_recentandmadeonsol_deployer_trajectorynow work keyless via x402 too.New in 1.18.0 β Verified on-chain wallet holdings. New tool
madeonsol_wallet_holdingsβ the wallet's CURRENT holdings read straight from chain: its actual SPL + Token-2022 token accounts and SOL balance, each enriched with ourprice_usd/value_usd/market_cap_usd/name/symbol/is_bonded, plustransfer_delta(on-chain amount β trade-derived net position β exposes non-swap flows like airdrops, insider funding, and wallet-hopping). Distinct frommadeonsol_wallet_positions(trade-derived FIFO): this is what the wallet actually holds right now. Params:limit(1β500, default 200),min_value_usd(default 0). Returns{ address, sol_balance, holdings[], summary, verified_at, trade_window_days, cache_hit, ttl_seconds }. ULTRA only.New in 1.17.0 β Bundle-cohort holdings. New tool
madeonsol_token_bundleβ which same-slot "bundle" wallets bought a token and how much of supply they still hold (the incumbents' "current held %" rug/insider signal, from confirmed on-chain data). Returns abundleblock (wallet_count,bundle_kindatomic_tx/same_slot/none,held_ratio,held_pct_of_supplyβ the headline, net held / circulating supply, null if unknown βfully_exited,buy_volume,tokens_held) plus awallets[]array (rank,wallet,held_ratio,has_sold,atomic,is_kol). BASIC get the bundle block only (emptywallets[]); PRO adds top-10 flags-only wallets; ULTRA returns the full cohort with enriched identities (kol_name,win_rate,bot_confidence,tokens_held).New in 1.16.0 β Batch risk scoring + live stream-session control. New tool
madeonsol_tokens_batch_riskβ bulk rug-risk/safety scoring for up to 50 mints in one call, returning the same per-mint shape asmadeonsol_token_risk(0β100 score,band, explainablefactors[], rawinputs) plus anas_oftimestamp; untracked mints come back as{ mint, error: "not_tracked" }without failing the batch, and the whole call counts as one request against quota. Plus two WebSocket session tools:madeonsol_stream_sessions_list(list your live sessions βid,service,tier,channels,connected_at,remote_ip,messages_sent) andmadeonsol_stream_session_kill(force-disconnect a session by id to free its connection slot, e.g. a ghost socket). PRO/ULTRA only.New in 1.15.0 β Almost-bonded discovery + trending sorts. New tool
madeonsol_almost_bondedβ pre-bond pump.fun tokens near graduation, ranked by velocity (Ξprogress/min): "95% and accelerating" beats "92% stalled". Each token carriesprogress_pct,velocity_pct_per_min,eta_minutes,stalled,real_sol_reserves,market_cap_usd,liquidity_usd,authorities_revoked,deployer_tier, andage_minutes. Params:min_progress,max_progress,min_velocity_pct_per_min,max_age_minutes,deployer_tier,authority_revoked,min_liq,sort(velocity_desc / progress_desc / eta_asc),limit. PRO/ULTRA only. Plusmadeonsol_tokens_listgains four momentum sorts βmc_change_5m_desc,mc_change_1h_desc,volume_1h_desc, andtrending(composite recent-volume Γ positive-momentum rank).New in 1.14.0 β Token trade flow. New tool
madeonsol_token_flowβ a trade-flow aggregate (organic-vs-fake volume) over a1h/24hwindow:unique_wallets/unique_buyers/unique_sellers,buy_count/sell_count/total_trades,buy_sol/sell_sol/net_sol(sell β buy; positive = net SOL leaving the pool), andtrades_per_wallet(wash-trading proxy). PRO/ULTRA only. Deployer alerts (madeonsol_deployer_alerts) now carrydeployers.deployer_sol_balanceβ the deployer wallet's SOL balance at alert time (null for historical rows).New in 1.13.0 β Token OHLCV candles. New tool
madeonsol_token_candlesβ historical price candles (1m/5m/15m/1h/4h/1d) aggregated from the on-chain trade firehose. Each candle hast/open/high/low/close/volume_usd/trades/market_cap_usd. PRO returns OHLCV for the last 30 days; ULTRA adds buy/sell volume + count splits, net flow, MEV volume, open/close liquidity, high/low MC, and full history. PRO/ULTRA only.New in 1.12.0 β Token risk score. New tool
madeonsol_token_riskβ a transparent 0β100 rug-risk/safety score (higher = riskier) with aband(safe/caution/danger), an explainablefactors[]array, and the rawinputs(mint/freeze authority, liquidity, liq-to-MC ratio, transfer fee, launch cohort, deployer bond rate, KOL signal, blacklist). PRO/ULTRA only.New in 1.11.0 β
madeonsol_tokens_listgains three new filter params:min_liq_mc_ratio,max_liq_mc_ratio, anddeployer_tier. Response items now includeliquidity_to_mc_ratioanddeployer_tier. New tool:madeonsol_signal_performanceβ evaluate signal efficacy (hit rate, sample size, median outcome) before acting on any signal. KOL leaderboard entries now includemedian_hold_minutes_30dandpercentile_early_entry_30d.New in 1.10.4 β Deployer alerts/profiles now expose
runner_rate+labeled_tokens(fraction of a deployer's labeled tokens that ran vs dumped, gate onlabeled_tokensβ₯3) plusavg_time_to_bond_minutes.
New in 1.10.3 β Dump-cluster detection.
madeonsol_token_buyer_qualitybreakdown now includesdump_cluster_count(3+ dump-cluster wallets in the first-20 β 94% historical dump rate vs 61% base) andrecycled_early_buyer_count. Full breakdown is returned on all tiers. Also: the API now pushes every pump.fun graduation in real time (token:graduationsWS channel).
New in 1.10 β Deshred Sniper Alerts.
madeonsol_sniper_recentsurfaces pump.fun deploys from shred-level data ~500ms before on-chain confirmation. PRO: elite/good deployers. ULTRA: all tiers + custom watchlist. Usesniper:deploysWebSocket orsniper:deploywebhook for live push.New in 1.9 β Price alerts, scout leaderboard, coordination history.
madeonsol_price_alerts_*CRUD (PRO=5, ULTRA=25).madeonsol_scout_leaderboardranks top scouts by first-touch follow-on rate.madeonsol_coordination_historyandmadeonsol_peak_historyexpose the historical record.madeonsol_wallet_statsnow returnsderived: win_rate, roi, verdict, biggest_miss.New in 1.8 β Universal Wallet API.
madeonsol_wallet_stats,madeonsol_wallet_pnl,madeonsol_wallet_positions,madeonsol_wallet_tradesβ FIFO cost-basis PnL and cursor-paginated raw trades for any Solana wallet. PRO+. Cache hits don't count against quota.New in 1.7.0 (2026-05-12) β Two new tools:
madeonsol_me(account/quota introspection β read tier, remaining requests, and per-feature usage without parsing rate-limit headers) andmadeonsol_tokens_list(PRO+ filtered, sortable token directory β MC band, liquidity floor, primary DEX, authority/safety flags, plus computed 1h volume / MEV-share / MC-change deltas). Token responses now expose velocity / MEV-share fields. Token directory defaults tomin_liq=2000to skip phantom-MC dust β passmin_liq=0to opt out./token/{mint}now returns structured 400 errors (code/reason/example/docs) instead of plain strings. Deprecatedavg_entry_mc_usdfield fully removed from KOL/alpha leaderboards.
Install via Smithery (one line)
Smithery is the easiest path β it writes the config for you and handles the install:
Shortened here. Read the whole README on GitHub.
Signals
- GitHub stars
- 2
- Last commit
- Oct 2026
- Weekly downloads
- 964
- Weekly_downloads
- 964 weekly_downloads
Advanced
- Delivery
- madeonsol MCP server β your Ahel connector (mcp.ahel.ai) β your AI.
- Item type
- mcp-server
- Key
io-github-madeonsol-madeonsol- Source
- github.com/madeonsol/mcp-server-madeonsol
github.com/madeonsol/mcp-server-madeonsol
More in Databases & data
MCP server
More in Databases & dataAIOProductOS MCP
MCP server Β· aioproductos
More in Databases & dataQuantRisk
MCP server Β· 78degrees
More in Databases & dataPostHog MCP Server
MCP server Β· posthog
More in Databases & dataAppfigures
MCP server Β· appfigures
More in Databases & dataRun402
MCP server Β· kychee-com
More in Databases & data