AgentBIT
← all tools

Protocol TVL & Fundamentals

Protocol due diligence for agents interacting with DeFi. Look up any protocol by name or slug fragment ('aave', 'uniswap', 'morpho') and get the fundamentals that size counterparty risk: current TVL in USD, 1-day and 7-day TVL change (a sudden drain is the loudest on-chain alarm), category (Lending, DEX, Bridge...), the chains it is deployed on and its website. Or screen: filter the whole tracked universe by category and/or chain, ranked by TVL — 'top lending protocols on Base' is one call. Protocols under $10k TVL are excluded to keep answers meaningful. Data is DefiLlama's open protocols API, cached server-side and refreshed every 15 minutes. Pairs with defi-yields (which pool) and token-risk (is the protocol's token safe).

$0.002
USDC per call · x402
Endpoint
POST /v1/defi/protocol
MCP name
agentbit.protocol_tvl
Status
active
Latency / uptime (7d)
196 ms · 100%

Call with x402

1. Send the request. 2. Receive 402 with accepts[]. 3. Sign the payment and retry with the X-PAYMENT header.

curl -X POST https://agentbit.app/v1/defi/protocol \
  -H 'Content-Type: application/json' \
  -d '{"category":"lending","chain":"base","limit":5}'

Input schema

{
    "type": "object",
    "properties": {
        "protocol": {
            "type": "string",
            "description": "Protocol name or slug fragment, e.g. aave"
        },
        "category": {
            "type": "string",
            "description": "Filter by category, e.g. lending, dexes, bridge"
        },
        "chain": {
            "type": "string",
            "description": "Filter to protocols deployed on this chain, e.g. base"
        },
        "limit": {
            "type": "integer",
            "description": "Max results (1-50, default 10)"
        }
    }
}

Output schema

{
    "type": "object",
    "properties": {
        "result_count": {
            "type": "integer"
        },
        "protocols": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "slug": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "category": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tvl_usd": {
                        "type": "number"
                    },
                    "change_1d_percent": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "change_7d_percent": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "chains": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                }
            }
        },
        "universe_size": {
            "type": "integer"
        }
    }
}

Code examples

// JavaScript (x402-fetch)
import { wrapFetchWithPayment } from "x402-fetch";
const fetchWithPay = wrapFetchWithPayment(fetch, wallet);
const r = await fetchWithPay("https://agentbit.app/v1/defi/protocol", {
  method: "POST",
  headers: {"Content-Type": "application/json"},
  body: JSON.stringify({"category":"lending","chain":"base","limit":5})
});
console.log(await r.json());
# Python (x402 client)
from x402.clients.requests import x402_requests
s = x402_requests(account)
r = s.post("https://agentbit.app/v1/defi/protocol",
  json={"category":"lending","chain":"base","limit":5})
print(r.json())
// PHP
$r = Http::withHeaders(['X-PAYMENT' => $signedPayment])
  ->post('https://agentbit.app/v1/defi/protocol',
    array (
  'category' => 'lending',
  'chain' => 'base',
  'limit' => 5,
));
$data = $r->json();