# api.mlm.quest mlm.quest is a Solana launchpad where every buyer gets a referral code. Coins launch on Meteora's Dynamic Bonding Curve through one mlm.quest config. Buys through a code credit three levels up (100 / 25 / 10 percent). Each night at 00:00 UTC the Coach (coded rules) scores recruiters on real buyers who still hold, and the top ten of each coin split that coin's pot in SOL. Base URL: https://api.mlm.quest Cluster: mainnet Site: https://mlm.quest MCP: POST https://api.mlm.quest/mcp OpenAPI: https://api.mlm.quest/openapi.json SDK: https://api.mlm.quest/sdk.mjs Contracts: https://api.mlm.quest/contracts ## Fees (paid by traders and launchers) - Trading fee on the curve: 3.5% after a 60 second anti-sniper decay (50% in the first second, falling every second). Dynamic fee on in volatile minutes. - Of each trade: Meteora 0.7%, creator 0.28%, the coin's daily pot 0.5%, mlm.quest 2.02%. - Launch: 0.05 SOL, refunded in the daily run to creators holding $27 of $MLM. Graduation (about 85 SOL): 5% of the curve to mlm.quest. - After graduation: Meteora DAMM v2 pool, 4.25% LP fee, LP 60% mlm.quest (10% locked forever) / 40% creator. ## Endpoints - GET /health: ok, database, cluster, config address (null until created), worker heartbeat age, payouts live or dry - GET /config: cluster, programs, our config, partner + pot wallets, fees (sniper decay, split, launch, graduation, graduated pool), Coach rules, $MLM - GET /stats: coins live, members, buys today, volume 24h, pots today, paid out all time - GET /coins: coins launched on mlm.quest. ?sort=mcap|new|volume|progress ?q= ?limit= - GET /coins/{id}: one coin by mint or ticker: price, curve progress, pot today, top ten (live Coach), recent trades, holders - GET /leaderboard: Coach board for a coin and day. ?coin= ?day=YYYY-MM-DD (default today, live). Each row: rank, code, score, level counts, estimated share, plain reasons - GET /recruiters: top recruiters by real buyers. ?days=30 ?limit=30 - GET /members/{id}: a member by wallet or code: code, sponsor, upline (3), downline counts, earnings, payouts, bags, tree, referral link - GET /ticks: latest trades with the code they came through. ?limit= ?coin= - GET /payouts: daily pot payouts and launch-fee refunds, each with its Solana tx. ?limit= - GET /contracts: every program and wallet the product uses, plus one row per coin pool (also MCP list_contracts) - GET /pay-coins: tokens the site lets you pay with (live USD prices). SOL buys go straight to the curve; others swap to SOL through Jupiter first (mainnet) - GET /holder/{wallet}: $MLM holder check: holds $27 or more (launch fee refunded in the daily run) - GET /sign: the exact text to sign for a signed action. ?action=code.claim&wallet=&ts=&code= - POST /launch/tx: {wallet, name, symbol, description?, art?: "p_candle"|..., image?: data URL (png/jpg/webp <= 600 KB), firstBuySol?: 0 to 5, code?}. Returns one tx (base64, already signed by the new mint): sign and send it with your wallet. Costs 0.05 SOL launch fee + about 0.027 SOL rent + the first buy - POST /trade/tx: {wallet, coin: mint|ticker, side: "buy"|"sell", amount: SOL for buys / coins for sells (decimal string), code?, slippageBps? (default 300), payMint?}. Returns {txs: [base64...], quote}. The code rides in a memo; your first buy through a code sets your sponsor forever - POST /tx/confirm: {sig}: index a sent launch or trade right away (the worker also finds it within seconds) - POST /codes/claim: {wallet, ts, sig, code}: pick your own code once, before anyone joined under the old one. Message from GET /sign?action=code.claim - GET /events: SSE: launch, trade, graduated, payout - POST /mcp: MCP (streamable HTTP, JSON). Tools: list_coins, get_coin, leaderboard, get_member, recent_trades, list_payouts, list_contracts, build_buy_tx, build_launch_tx ## Flow for an agent 1. GET /coins, pick a coin. 2. POST /trade/tx {wallet, coin, side:"buy", amount:"0.1", code:""} -> sign + send the tx with the wallet. 3. POST /tx/confirm {sig}. 4. GET /members/ shows your own code and link. Share it; buys through it count for you.