An audit instrument for tokenized‑asset liquidity. RWA dashboards report TVL — how much was minted. This one measures the number that actually matters and that nobody publishes: how much can be exited, computed on‑chain, asset by asset, with spoofed and ticker‑collided liquidity stripped out first. It's the tool a chain or an issuer would run to verify its own RWA liquidity claims before putting them in a report. Track 1 is the finding; this is the instrument that produced it and keeps producing it — served as a live dashboard, a JSON API, a portable agent-skill spec any AI agent can load to query it live, and a working x402 USDC-payment demo on one endpoint.
TVL measures inventory, not exitability — so it hides phantom liquidity. This platform measures the other side of the trade:
Canonical‑address enforcement — we refuse to count phantom liquidity. It matches DEX pools by contract/mint address, never by ticker, and discards everything that doesn't match — the integrity step most tools skip. The dashboard's Phantom‑liquidity tab shows exactly what gets thrown away, side by side: a ticker search reports $13.0M of "USDY" but only $3.0M is the real mint (4× overstatement), gold $2.2B → $32.0M (69×), and SpaceX's $2.3B of ticker "SPCX" liquidity → $0 canonical because no canonical SpaceX mint exists on Solana (it is a private company) — and it lists the exact look‑alike pools we discard.
Real on‑chain exit slippage. A local Uniswap‑V3 multi‑tick swap simulator reads slot0 + tick data directly and walks the curve over pools discovered via factory.getPool — so "exit liquidity" is the actual USD you'd recover, not a vendor figure. USDY's true exit ceiling on Mantle is ~$1.6k (1 July 2026 snapshot, ~$1,625 tick simulation); a $10k sell ≈ 100% slippage.
Issued‑vs‑exitable + holder concentration. On‑chain supply vs exitable depth, plus current top holders (when the explorer API is available). syrupUSDT: ~all $80M sits in a single Aave market.
Cross‑chain exit benchmark. For each token we simulate a $1k / $10k / $100k sell on every chain it lives on, routing over real liquidity via DEX aggregators (LiFi on Mantle & Ethereum, Jupiter on Solana), canonical‑address filtered. The same assets exit a full $100k for under 1% slippage on their home chain — gold ~0.4% (Ethereum), syrupUSDT ~0.2%, Tesla ~0.7% and Nvidia ~0.8% (Solana), USDY near-zero (Solana) — while on Mantle a $1k USDY sell already costs ~5.8% and a $10k sell has no route at all. That is the proof the failure is Mantle‑specific distribution, not anything inherent to RWAs.
Exit‑capacity scoreboard. Every asset×chain graded by the largest sell that still clears under 1% / 5% slippage — A = a $100k institutional exit clears under 1%, F = even $1k can't. Mantle's RWAs grade F across the board; the same tokens grade A on Ethereum/Solana. It's the issued‑vs‑exitable scorecard the article argues chains should publish, made live.
Exit routes — the composability gap. Side by side per asset: the instant on‑chain DEX exit (≈$0 depth on Mantle) vs the primary redemption exit and its real terms — fiat‑wire / KYC / T+days for USDY, a ~400oz Swiss gold bar for XAUt, AP‑only for the xStocks and MI4. It puts on screen what the Track 1 piece argues in prose: no Mantle RWA has an exit that is both deep and composable on‑chain.
Net result, 1 July 2026: across all 164 Mantle RWAs (159 xStocks + 5 other RWAs) the single deepest exit pool is ~$5.2k (the SpaceX token, on Merchant Moe) and not one can clear even a $10k sale — let alone the $100k an institution needs. Every figure computed by us, canonical‑address filtered, not taken on faith.
TypeScript, fully dockerized: Postgres + a refresh worker + a Hono API + an nginx dashboard — one docker compose up -d --build.
Trust‑minimised data: the v3 quoter bulk‑fetches tick data in batched eth_calls and simulates the swap locally — no third‑party quote. Multi‑RPC failover (Goldsky primary, public fallback). DexScreener is kept only as a labelled cross‑check tab.
Honest about method. Where a Mantle pool exists (USDY) the exit figure is a tick‑by‑tick simulation — the real recoverable USD. The other 163 RWAs — including the full 159-token xStocks roster, pulled live from the xStocks asset API — have no v3 pool at all (confirmed via factory.getPool), so they're zero by construction, not estimated. Cross‑chain numbers use DEX‑aggregator routing (LiFi / Paraswap / Jupiter), labelled as such — we don't dress a vendor quote up as our own simulation.
Holders via RPC Transfer window scan (HOLDER_SOURCE=window); explorer/subgraph modes also supported.
Mantle agent stack (the bonus) — built honestly, not oversold:
Agent-skill spec (rwa-liquidity-analyst/SKILL.md) — a portable instruction file, in the Cursor/Claude Agent Skill format, that tells any AI agent runtime how to answer liquidity questions by querying this API instead of guessing. We are not shipping a bundled bot — load the file into an agent runtime you already trust (Cursor, Claude, a custom LLM harness) and it earns its place on questions a human can't eyeball: "which Mantle RWAs are 'pegged' only because nothing trades?" (oracle price + ~$0 volume), "what's the cheapest chain to exit $50k of USDY, and at what slippage?", "if USDY's #1 holder unwound, what would it cost them?" Every answer the skill produces is a figure pulled from the API/quoter with its source attached, never recalled from memory.
x402 payment demo — GET /v1/quote/:asset returns HTTP 402; the caller signs an EIP‑3009 transferWithAuthorization and pays in native USDC on Mantle; a relayer verifies the signature and settles the transfer on‑chain. This proves the full x402 mechanism works end‑to‑end on Mantle (verified on‑chain settlement, tx below) — today it gates the same per‑asset figures also exposed for free via /v1/assets, so treat it as a working payment-rail demo rather than an exclusive paywall.
Dashboard: https://rwa.sanctumfi.online/ (On‑chain · DexScreener cross‑check · Holders · Cross‑chain · Exit scoreboard · Phantom liquidity · Exit routes)
API: https://rwa.sanctumfi.online/api/v1/onchain → USDY's per‑pool exit + slippage; GET /v1/assets → on‑chain exit vs DexScreener per asset.
Live dashboard: https://rwa.sanctumfi.online
Agent-skill spec (load into Cursor/Claude/any Agent-Skill-compatible runtime):
rwa_mnt/skill/rwa-liquidity-analyst/SKILL.mdCompanion research (Track 1): https://paragraph.com/@0xmaxyz/rwa_t1

