82trust / 100
Yields
by Base USDC lending APY in Onchain & crypto
x402 APIPassing, checked 4 h ago
Base USDC lending APY. Live USDC lending yield on Base, read on-chain: Aave V3 USDC vs Morpho Gauntlet USDC Prime. Size-aware pick for parking idle USDC: USD per year, days to break even vs Base gas, skip if entry is uneconomic. Conservative two venues only. No leverage, looping, memecoins, or perps.
GET https://raptor-base-yields.vercel.app/v1/yields
Last 30 days
All checks passedSome failedAll failedNot checked
- Uptime
- 100%
- Response time
- 250 ms typical, 250 ms slowest 5%
- Last check
- 4 h ago
- Next check
- any minute now
How to call it
# See the payment challenge (nothing is charged)
curl -i -X GET "https://raptor-base-yields.vercel.app/v1/yields?amountUsdc=100"import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client().register(
"eip155:8453",
new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);
// Not sure it's safe to pay? Preflight it first for $0.03:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fraptor-base-yields.vercel.app%2Fv1%2Fyields
const res = await pay("https://raptor-base-yields.vercel.app/v1/yields?amountUsdc=100");
console.log(await res.json());Example input
{
"amountUsdc": 100
}Example output
{
"asOf": "2026-08-25T17:00:00.000Z",
"asset": {
"address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"decimals": 6,
"symbol": "USDC"
},
"chain": "base",
"chainId": 8453,
"conservative": {
"excluded": [
"leverage",
"looping",
"memecoins",
"perps"
],
"preferredVenue": "morpho-gauntlet-usdc",
"rationale": "Highest live net USDC supply yield among the two named venues only. Size-aware enter/skip is in recommendation."
},
"recommendation": {
"daysToBreakEven": 4.1,
"gasBandUsd": {
"high": 0.15,
"low": 0.02
},
"gasUsdEnter": 0.05,
"gasUsdEnterSource": "live",
"preferredVenue": "morpho-gauntlet-usdc",
"principalSource": "example",
"principalUsdc": 100,
"rationale": "Among Aave V3 USDC and Morpho Gauntlet USDC Prime only, morpho-gauntlet-usdc has the higher live net APY (4.4216%). On example size 100 USDC; scale with usdPerYearPerUsdc that is about $4.4216/year.",
"skipIfUneconomic": false,
"usdPerYear": 4.4216,
"usdPerYearPerUsdc": 0.044216
},
"venues": [
{
"id": "aave-v3-usdc",
"name": "Aave V3 USDC",
"netApy": 0.0313,
"pool": "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5",
"protocol": "aave-v3",
"source": "on-chain:Aave V3 Pool.getReserveData",
"suppliedUsdc": "180000000.0",
"supplyApyPercent": "3.1345%"
},
{
"id": "morpho-gauntlet-usdc",
"name": "Gauntlet USDC Prime",
"netApy": 0.0442,
"netApyPercent": "4.4216%",
"protocol": "morpho",
"suppliedUsdc": "434000000.0",
"vault": "0xeE8F4eC5672F09119b96Ab6fB59C27E1b7e44b61"
}
]
}Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time | Price |
|---|---|---|---|---|
| 4 h ago | Passed | 402 | 250 ms | $0.01 |