{"generatedAt":"2026-10-29T00:26:18.830Z","input":{"amountUsd":1000,"maxRisk":3,"admixturePct":10,"maxBlockPct":30,"priceExposure":false},"outcome":"portfolio","blocks":[{"ticker":"sUSDai","label":"sUSDai","category":"Yield stablecoins","weightPct":22.5,"amountUsd":225,"yieldPct":6.24,"riskLevel":3,"riskReasons":["base 3: loans to companies (private credit)"],"route":"dex","routeChain":"Ethereum","steps":"get_purchase_steps { \"ticker\": \"sUSDai\" }","page":"https://tokenbank.world/token/sUSDai","checks":[{"check":"route_without_a_person","value":"dex","limit":"dex | pendle | deposit | lp","pass":true},{"check":"contract_known","value":3,"limit":"≥ 1","pass":true},{"check":"yield_stated","value":6.24,"limit":"> 0","pass":true},{"check":"yield_age_days","value":11,"limit":14,"pass":true},{"check":"gas_pct_of_amount","value":0.04,"limit":0.5,"pass":true},{"check":"exit_liquidity_usd","value":2334398,"limit":22500,"pass":true},{"check":"risk_level","value":3,"limit":3,"pass":true}]},{"ticker":"syrupUSDC","label":"syrupUSDC","category":"Private credit","weightPct":22.5,"amountUsd":225,"yieldPct":5.14,"riskLevel":3,"riskReasons":["base 3: loans to companies (private credit)"],"route":"dex","routeChain":"Solana","steps":"get_purchase_steps { \"ticker\": \"syrupUSDC\" }","page":"https://tokenbank.world/token/syrupUSDC","checks":[{"check":"route_without_a_person","value":"dex","limit":"dex | pendle | deposit | lp","pass":true},{"check":"contract_known","value":4,"limit":"≥ 1","pass":true},{"check":"yield_stated","value":5.14,"limit":"> 0","pass":true},{"check":"yield_age_days","value":11,"limit":14,"pass":true},{"check":"gas_pct_of_amount","value":0,"limit":0.5,"pass":true},{"check":"exit_liquidity_usd","value":675007,"limit":22500,"pass":true},{"check":"risk_level","value":3,"limit":3,"pass":true}]},{"ticker":"DL-UNISWAPV4-USDCUSDT-ETHEREUM-FCF0","label":"Uniswap V4 — USDC / USDT liquidity pool","category":"Stablecoin pools","weightPct":22.5,"amountUsd":225,"yieldPct":4.82,"riskLevel":3,"riskReasons":["base 2: trading fees of a pool of two stablecoins","+1: small — $6.8M"],"route":"lp","routeChain":"Ethereum","steps":"get_purchase_steps { \"ticker\": \"DL-UNISWAPV4-USDCUSDT-ETHEREUM-FCF0\" }","page":"https://tokenbank.world/token/DL-UNISWAPV4-USDCUSDT-ETHEREUM-FCF0","checks":[{"check":"route_without_a_person","value":"lp","limit":"dex | pendle | deposit | lp","pass":true},{"check":"contract_known","value":2,"limit":"≥ 1","pass":true},{"check":"yield_stated","value":4.82,"limit":"> 0","pass":true},{"check":"yield_age_days","value":1,"limit":14,"pass":true},{"check":"gas_pct_of_amount","value":0.07,"limit":0.5,"pass":true},{"check":"exit_liquidity_usd","value":6800000,"limit":22500,"pass":true},{"check":"risk_level","value":3,"limit":3,"pass":true},{"check":"pool_assets_known","value":"all known","limit":"large assets or tokens TokenBank lists","pass":true}]},{"ticker":"USDY","label":"USDY","category":"Treasury tokens","weightPct":22.5,"amountUsd":225,"yieldPct":3.69,"riskLevel":1,"riskReasons":["base 1: interest on short-term government debt"],"route":"dex","routeChain":"Ethereum","steps":"get_purchase_steps { \"ticker\": \"USDY\" }","page":"https://tokenbank.world/token/USDY","checks":[{"check":"route_without_a_person","value":"dex","limit":"dex | pendle | deposit | lp","pass":true},{"check":"contract_known","value":5,"limit":"≥ 1","pass":true},{"check":"yield_stated","value":3.69,"limit":"> 0","pass":true},{"check":"yield_age_days","value":11,"limit":14,"pass":true},{"check":"gas_pct_of_amount","value":0.04,"limit":0.5,"pass":true},{"check":"exit_liquidity_usd","value":269791,"limit":22500,"pass":true},{"check":"risk_level","value":1,"limit":3,"pass":true}]}],"admixture":{"ticker":"DL-PENDLEV2-REUSDE-ETHEREUM-2C9D","label":"PT-reUSDe-10DEC2026","category":"Fixed rate","weightPct":10,"amountUsd":100,"yieldPct":18.89,"riskLevel":5,"riskReasons":["base 3: reUSDe under the fixed rate — reinsurance premiums — claims are paid from the deposits, so a large loss event reduces the principal","+1: second layer — a Pendle principal token on reUSDe; the fixed rate holds only if reUSDe keeps its value","+2: 14.7 pp above the 13-week T-bill (4.15%) — a large premium is paid-for risk","+1: small — $4.6M"],"route":"pendle","routeChain":"Ethereum","steps":"get_purchase_steps { \"ticker\": \"DL-PENDLEV2-REUSDE-ETHEREUM-2C9D\" }","page":"https://tokenbank.world/token/DL-PENDLEV2-REUSDE-ETHEREUM-2C9D","checks":[{"check":"route_without_a_person","value":"pendle","limit":"dex | pendle | deposit | lp","pass":true},{"check":"contract_known","value":1,"limit":"≥ 1","pass":true},{"check":"yield_stated","value":18.89,"limit":"> 0","pass":true},{"check":"yield_age_days","value":1,"limit":14,"pass":true},{"check":"gas_pct_of_amount","value":0.08,"limit":0.5,"pass":true},{"check":"exit_liquidity_usd","value":4569044,"limit":10000,"pass":true},{"check":"risk_level","value":5,"limit":5,"pass":true},{"check":"days_to_maturity","value":42,"limit":"≥ 7","pass":true}]},"unallocatedPct":0,"summary":{"coreYieldPct":4.97,"withAdmixtureYieldPct":6.36,"singleBestYieldPct":6.24,"singleBest":"sUSDai","yieldGivenUpPp":1.27,"worstSingleFailurePct":22.5,"tbill13wPct":4.15,"sourcesOfYield":5},"why":["If one product fails — a depeg, an exploit, a borrower default, an insurance claim — you lose at most 22.5% of the amount, not 100%.","The 4 blocks earn from different sources (government debt, borrowers, trading fees, staking, …). They fail for different reasons, so they rarely fail together.","Within the risk budget, spreading earns 4.97% against 6.24% for everything in sUSDai: 1.27 pp less — the price of not depending on one contract.","The 10% admixture lifts the whole to 6.36% with a product above your risk budget; its possible loss is capped at 10% of the amount by its size.","Single-product failures happen: see guide.failuresOnRecord."],"guide":{"title":"How an agent builds its own portfolio — and why it should","why":["A bot that always buys the single highest yield within its risk budget puts every dollar on one contract, one issuer and one source of yield. One failure then takes the whole amount.","Spread over several sources of yield, one failure takes only that block. The expected yield drops a little; the worst case drops a lot.","The admixture adds a small share above the budget: more yield, with the possible loss capped by its size."],"failuresOnRecord":[{"what":"Stream Finance xUSD","when":"2025-11","effect":"an external fund manager lost ~$93M; xUSD fell to about $0.30–0.50","source":"https://www.theblock.co/post/377400/stream-finance-halts-withdrawals-93-million-loss"},{"what":"Stables Labs USDX","when":"2025-11","effect":"lost its dollar peg, trading as low as about $0.11–0.37","source":"https://www.theblock.co/post/377917/synthetic-stablecoin-usdx-depegs-pancakeswap-lista"},{"what":"Penpie (built on Pendle)","when":"2024-09","effect":"$27M drained through a contract bug","source":"https://www.theblock.co/news/regulation/2024-09-04-pendle-says-it-saved-105-million-that-could-have-been-further-drained-amid-penpie-hack-314616"}],"steps":[{"step":"Get the map","call":"GET https://tokenbank.world/api/v1/agents/portfolio?amount_usd=<amount>&max_risk=<1-5> (MCP build_portfolio)","read":"categories (median yield and risk per category), blocks, admixture, summary, why"},{"step":"Check the proposal against your owner’s rules","read":"riskLevel and riskReasons of each block; drop any block your mandate excludes and call again with categories you allow"},{"step":"Buy block by block","call":"MCP get_purchase_steps { \"ticker\": \"<block.ticker>\" }","read":"contract, route, steps — verify the contract, approve the exact amount, simulate, then send"},{"step":"Keep the record","read":"store this response next to the transaction hashes: it shows what was checked and why each block was chosen"},{"step":"Rebalance","call":"call build_portfolio again","read":"see rebalance"}],"rebalance":["Re-run at least monthly, and at once when a block’s risk level rises above your budget or its yield falls below the 13-week T-bill for 7 days (it then pays less than risk-free).","Move only when a block’s weight is off by more than a third of its target, or the proposal changed a ticker — every move costs gas and spread.","Exit a block that fails a check you cannot fix (contract unknown, route closed, exit too thin) before buying the replacement."],"rules":["One product per category, never the same exposure twice (five staked-ETH tokens are one exposure).","No block above the cap (default 30%).","Each block is checked at its own amount — on Ethereum, gas makes small blocks too expensive; Base and Solana cost cents.","Blocks that move with a crypto price (staking, pools with a price token) only with price_exposure=true."]},"note":"A proposal built from checks, not advice. The owner sets the budget; the agent still verifies each contract and simulates before sending. Keep this response as the record of the allocation.","categories":[{"category":"Reinsurance","products":1,"medianYieldPct":11.02,"minYieldPct":11.02,"maxYieldPct":11.02,"riskLevels":{"4":1},"movesWithCryptoPrice":false},{"category":"Fixed rate","products":17,"medianYieldPct":9.34,"minYieldPct":2.2,"maxYieldPct":18.89,"riskLevels":{"4":2,"5":15},"movesWithCryptoPrice":false},{"category":"Liquidity pools","products":241,"medianYieldPct":6.82,"minYieldPct":0,"maxYieldPct":93.64,"riskLevels":{"4":40,"5":201},"movesWithCryptoPrice":true},{"category":"SOL staking","products":2,"medianYieldPct":4.69,"minYieldPct":4.6,"maxYieldPct":4.78,"riskLevels":{"3":1,"4":1},"movesWithCryptoPrice":true},{"category":"Yield stablecoins","products":8,"medianYieldPct":4.29,"minYieldPct":0.71,"maxYieldPct":6.24,"riskLevels":{"3":3,"4":5},"movesWithCryptoPrice":false},{"category":"Private credit","products":2,"medianYieldPct":4.07,"minYieldPct":3,"maxYieldPct":5.14,"riskLevels":{"3":1,"4":1},"movesWithCryptoPrice":false},{"category":"Stablecoin lending","products":2,"medianYieldPct":3.88,"minYieldPct":3.76,"maxYieldPct":4,"riskLevels":{"3":1,"4":1},"movesWithCryptoPrice":false},{"category":"Crypto lending","products":3,"medianYieldPct":3.6,"minYieldPct":3.5,"maxYieldPct":4,"riskLevels":{"3":2,"4":1},"movesWithCryptoPrice":true},{"category":"Treasury tokens","products":2,"medianYieldPct":3.56,"minYieldPct":3.42,"maxYieldPct":3.69,"riskLevels":{"1":1,"3":1},"movesWithCryptoPrice":false},{"category":"ETH staking","products":3,"medianYieldPct":2.2,"minYieldPct":1.98,"maxYieldPct":2.27,"riskLevels":{"2":1,"3":2},"movesWithCryptoPrice":true},{"category":"Stablecoin pools","products":47,"medianYieldPct":0.37,"minYieldPct":0.01,"maxYieldPct":9.01,"riskLevels":{"2":7,"3":2,"4":15,"5":23},"movesWithCryptoPrice":false}],"_license":"CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/"}