Skip to content

Portfolio

ShipMyToken gives you a real-time portfolio view of all your tokens. Just ask your agent.

You: Show my tokens
Agent: Your token portfolio:
MoonCat (MCAT) — launched Jan 15
├ Status: Graduated (PumpSwap AMM)
├ Price: $0.0042
├ Market cap: $4,200,000
├ Pool reserves: 1,240 SOL / 295M MCAT
├ Unclaimed fees: 1.24 SOL
└ Your share: 90% (1.12 SOL claimable)
DogWif (DWF) — launched Feb 2
├ Status: Bonding curve (67% to graduation)
├ Estimated mcap: $12,400
├ Unclaimed fees: 0.08 SOL
└ Your share: 60% (0.05 SOL claimable)
Total claimable: 1.17 SOL
Wallet balance: 0.34 SOL
Want me to claim all fees?

When first launched, tokens trade on Pumpfun’s bonding curve. During this stage:

  • Progress is tracked as a percentage toward graduation (~85 SOL threshold)
  • Estimated market cap is calculated from the bonding curve’s virtual reserves
  • Creator fees accumulate in the Pump SDK’s creator vault

When a token raises ~85 SOL from selling ~793M tokens, it graduates to the PumpSwap AMM:

  • Price is derived from the AMM pool’s reserve ratio (quote/base)
  • Market cap is calculated from price multiplied by total supply (1B tokens)
  • Pool reserves show the exact SOL and token amounts in the liquidity pool
  • Creator fees accumulate in the PumpSwap creator vault

All portfolio data comes directly from the Solana blockchain — no third-party APIs, no caching.

DataSource
Graduation statuscanonicalPumpPoolPda(mint) — checked on-chain every time
Price / market capAMM pool reserve accounts
Bonding curve progressfetchBondingCurve(mint) → virtual SOL reserves
Unclaimed feesgetCreatorVaultBalanceBothPrograms(creator)
Wallet balanceconnection.getBalance()

Graduation status is never cached — it’s always checked live to avoid stale data.

  • Holder count — requires a third-party API (Bitquery, Helius). Not included to avoid paid dependencies.
  • 24h price change — requires historical price data not available on-chain.
  • Trading volume — requires indexer data.

These may be added in future versions.