Own a piece of the AI revolution — earn fees as the agents work.
Each MCP service can have its own token. People buy it on a bonding curve, it graduates to a Uniswap pool on Base, and stakers earn USDC streamed from that MCP's real x402 call fees. That last part — real revenue, not just trading-fee reflexivity — is the whole thesis and the part nobody else does. Yeetful can prove the usage is real (the spend ledger), so the token is collateralized by actual settled flow.
- Fee accrual: stake-and-distribute. Holders stake the MCP token, earn pro-rata USDC from that MCP's call fees. (Note: most security-like design — crypto-counsel review of token structure required before mainnet.)
- Reserve / reward asset: USDC on Base. Coherent end-to-end: agents pay USDC, curve is USDC-denominated, fees distribute in USDC.
- Fork base: Flaunch (MIT) — Uniswap v4 hooks, fair-launch curve, revenue-share-to-holders + buybacks on Base. Single source for launch + curve + AMM + trading-fee share.
- Base first, contracts behind interfaces so a second chain is config.
- Trading fees — swap fees on the token's AMM. Flaunch handles this; we fork it.
- x402 call fees — a cut of the real USDC an agent pays to use the MCP,
routed to stakers. Novel. This is what we build (
StakingRewards+ an off-chain→on-chainFeeRouter).
src/YeetfulStaking.sol— one per MCP token. Accumulated-fee-per-share accounting (O(1) stake/unstake/claim).routeFees(amount)is called by the x402 FeeRouter when a call settles; splits USDC pro-rata across stakers. No stakers yet → escrows totreasury, so the fee path never reverts.src/YeetfulLaunchFactory.sol—launch(mcpId, name, symbol, creator)mints the token via the launchpad adapter and stands up itsYeetfulStakingvault in one call (feeRouter wired, creator set as treasury, protocol owns the vault). Registry:mcpById+stakingForToken.- 11/11 Foundry tests green (
forge test).
Flaunch is ETH/flETH-native and large (~11k files: Uniswap v4-core/periphery
- optimism + solady + permit2). So we don't vendor-and-modify it. Instead:
- The curve + AMM trade against the launchpad's native asset (ETH/flETH) —
we use Flaunch's already-deployed, audited Base contracts via a thin
ILaunchpadAdapter. No flETH→USDC surgery. - Rev share is separate and always USDC (
YeetfulStaking), independent of the curve asset. This is the part nobody else has.
- M1 Scaffold + fork-license verification (Flaunch = MIT ✓)
- M2
YeetfulStakingrev-share distributor - M3a
YeetfulLaunchFactory+ILaunchpadAdapter(token + vault in one launch) - M3b
FlaunchAdapter+script/Deploy.s.sol— deployed + wired on Base Sepolia ✓ - M3c Live launch via FastFlaunchZap — a real token (YT1) launched on Base Sepolia ✓
- M4a
YeetfulFeeRouter(on-chain: route a call-fee cut → the MCP's vault) - M4b Off-chain wiring: split a cut in
website/lib/x402.tspayAndFetch→routeForMcp - M5 MCP ownership claim: GitHub OAuth + repo verify + wallet bind (website)
- M6 Launchpad UI: per-
/servers/[slug]MCap chart + graduation bar + stake/buy - M7 Chain abstraction (multi-chain deploy)
YeetfulStaking · YeetfulLaunchFactory · FlaunchAdapter · YeetfulFeeRouter.
Proven end-to-end in tests: launch → stake → settle a call → fee routes → staker earns USDC.
| Contract | Address |
|---|---|
| YeetfulLaunchFactory | 0x6bFeAD6c2Bc71a06226b8b0eB9D9422086c3fc95 |
| FlaunchAdapter (FastFlaunch) | 0x4ff99D98D7D31558E396D4992FA1D999f752e536 |
| YeetfulFeeRouter | 0xA8f494EBF2CA4eeD0a5C7999dd8a12B1F5675d17 |
| USDC (Circle) | 0x036CbD53842c5426634e7929541eC2318f3dCF7e |
| Flaunch FastFlaunchZap | 0x821d9F6075E7971Cc71C379081DE9D532F5f9957 |
Owner/deployer 0x57DE…BF12. Wiring verified on-chain.
Live launch works ✓ — factory.launch via FastFlaunchZap (the raw
PositionManager reverted on empty initialPriceParams; FastFlaunchZap fills the
price/fairlaunch/fee defaults). First token launched on-chain:
"Yeetful Test One" (YT1) 0xe95f6aF310ae3e2070b3f73d6d7099b18159a848,
vault 0xC5cD987d293CA9A2f6Fc240d74a93Cc06e104381, registered as yeetful-test-1.
The factory's adapter is now owner-swappable (setLaunchpadAdapter) so we can
move to a full-FlaunchZap adapter (creator-fee control) later without losing the registry.
forge build
forge test -vvFoundry + OpenZeppelin v5. Testnet (Base Sepolia) only until counsel sign-off and an explicit go from the owner — no mainnet deploys, no real funds.