Eight paid DeFi tools: prices, gas, swaps, token security, holders, yields, funding and wallets
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y @x402-api/mcp-server
MCP client config
{
"mcpServers": {
"x402": {
"command": "npx",
"args": [
"-y",
"@x402-api/mcp-server"
]
}
}
}MCP server that gives Claude, ChatGPT, and any MCP-compatible AI agent access to pay-per-call crypto/DeFi data via the x402 protocol.
8 tools. No API keys. AI agents pay USDC micropayments on Base, per request.
Find this service: Official MCP Registry · Glama · Agent discovery manifest · OpenAPI.
██╗ ██╗██╗ ██╗ ██████╗ ██████╗
╚██╗██╔╝██║ ██║██╔═══██╗╚════██╗
╚███╔╝ ███████║██║ ██║ █████╔╝
██╔██╗ ╚════██║██║ ██║██╔═══╝
██╔╝ ██╗ ██║╚██████╔╝███████╗
╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
| Tool | API Endpoint | Cost | Description |
|---|---|---|---|
get_crypto_prices | GET /api/price-feed | 0.001 USDC | BTC/ETH/SOL + top 24h movers |
get_gas_prices | GET /api/gas-tracker | 0.001 USDC | Multi-chain gas (ETH, Base, Polygon, Arbitrum) |
get_dex_quotes | GET /api/dex-quotes | 0.002 USDC | One ParaSwap aggregate route |
scan_token | GET /api/token-scanner | 0.003 USDC | GoPlus security flags and heuristic |
track_whales | GET /api/whale-tracker | 0.005 USDC | Top-holder sample and supply share |
scan_yields | GET /api/yield-scanner | 0.005 USDC | DefiLlama pool APYs and TVL |
get_funding_rates | GET /api/funding-rates | 0.008 USDC | Hyperliquid and dYdX hourly rates |
profile_wallet | GET /api/wallet-profiler | 0.008 USDC | Observed Blockscout balances; partial coverage |
Just run it — any 402 responses will return human-readable payment instructions:
npx @x402-api/mcp-server
Claude will tell you what's needed when a tool requires payment.
Install optional payment deps and set your wallet key:
npm install -g @x402-api/mcp-server
npm install -g viem
export X402_WALLET_PRIVATE_KEY=0x<your_private_key>
x402-api-mcp
The MCP server signs Base USDC EIP-3009 authorizations only when the API advertises that settlement mode. The default payment cap is 0.01 USDC per call. Fund the wallet with USDC on Base; the API operator sponsors gas in direct settlement mode.
Add to your claude_desktop_config.json:
{
"mcpServers": {
"x402-api": {
"command": "npx",
"args": ["@x402-api/mcp-server"]
}
}
}
{
"mcpServers": {
"x402-api": {
"command": "npx",
"args": ["@x402-api/mcp-server"],
"env": {
"X402_WALLET_PRIVATE_KEY": "0x<your_private_key>"
}
}
}
}
Config file location:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.json| Variable | Required | Description |
|---|---|---|
X402_WALLET_PRIVATE_KEY | Optional | Base wallet private key for EIP-3009 automatic payment. Requires viem. |
X402_MAX_PER_CALL_USDC | Optional | Per-call cap, default 0.01 USDC. |
X402_API_BASE_URL | Optional | Override API URL (default: https://x402-api.fly.dev) |
This API uses the x402 protocol — HTTP 402 Payment Required:
Payment details:
0x60264c480b67adb557efEd22Cf0e7ceA792DefB7get_crypto_pricesNo parameters. Returns current prices for BTC, ETH, SOL + top 24h movers.
Cost: 0.001 USDC
get_gas_pricesNo parameters. Returns gas prices for Ethereum, Base, Polygon, Arbitrum — slow/standard/fast tiers.
Cost: 0.001 USDC
get_dex_quotesGet one ParaSwap aggregate route. No independent comparison between DEX venues.
| Parameter | Type | Required | Description |
|---|---|---|---|
from | string | ✅ | Input token (e.g. "ETH", "0x...") |
to | string | ✅ | Output token (e.g. "USDC") |
amount | string | ✅ | Amount to swap (e.g. "1.5") |
Cost: 0.002 USDC
scan_tokenToken security scan — detects rug-pull flags, honeypot patterns, mint authority, etc.
| Parameter | Type | Required | Description |
|---|---|---|---|
token | string | ✅ | Contract address or symbol (e.g. "PEPE") |
Cost: 0.003 USDC
track_whalesTop-holder sample from GoPlus. Gini and recent transfer history unavailable.
| Parameter | Type | Required | Description |
|---|---|---|---|
token | string | ✅ | Contract address or symbol |
Cost: 0.005 USDC
scan_yieldsTop DeFi yield opportunities across Aave, Compound, Morpho, Lido, Pendle, etc.
| Parameter | Type | Required | Description |
|---|---|---|---|
chain | string | ❌ | Filter by chain: "ethereum", "base", "arbitrum", "polygon" |
min_tvl | number | ❌ | Minimum TVL in USD (e.g. 1000000) |
Cost: 0.005 USDC
get_funding_ratesHourly perpetual funding from Hyperliquid and dYdX v4. Spreads are indicative.
| Parameter | Type | Required | Description |
|---|---|---|---|
asset | string | ❌ | Asset symbol (e.g. "BTC", "ETH"). All assets if omitted. |
Cost: 0.008 USDC
profile_walletObserved priced wallet balances and available transaction counts. DeFi positions, PnL and risk score unavailable.
| Parameter | Type | Required | Description |
|---|---|---|---|
address | string | ✅ | Ethereum/Base wallet address (0x...) |
Cost: 0.008 USDC
git clone https://github.com/fernsugi/x402-api-mcp-server
cd x402-api-mcp-server
npm install
npm run build
npm start
To test without a payment wallet, simply run and see the 402 responses:
node dist/index.js
MIT
| Workflow | Tools | Total USDC |
|---|---|---|
| Token check | scan_token + track_whales | 0.008 |
| ETH funding | get_funding_rates | 0.008 |
| Swap quote + gas | get_dex_quotes + get_gas_prices | 0.003 |
Runnable Node examples start in inspect mode. Each demo has inputs, recorded provider output, coverage limits, a spending cap, and an agent prompt.
Optional X402_REFERRAL_SOURCE labels requests for first-party aggregate attribution (default mcp). It is a hint, not verified caller identity. The API journals no raw payer wallets, IP addresses, or signatures. X402_EXPECTED_PAY_TO pins the payment recipient to the official wallet by default. Tools advertise that auto-pay can spend money and repeated calls can incur another charge.
Use the same mcpServers configuration shown above. For Cursor, put it in .cursor/mcp.json in your project. Inspect mode needs no wallet. Set X402_MAX_PER_CALL_USDC before enabling auto-pay; repeated calls spend again. Keep wallet credentials in local environment settings, outside Git.
The Publish MCP Registry GitHub workflow validates the matching npm version, then publishes server.json using GitHub OIDC. It runs on a published GitHub release or a manual dispatch from main. No npm token, GitHub PAT, or wallet key is stored in CI. Actions and official publisher source are pinned to verified commits. npm publication still happens separately before creating the release.