Skip to main content
Glama

base-facts-mcp

An MCP server for AI agents that trade or move money on Base. Each tool calls Base Token Facts and pays for the call itself in USDC over x402, from a small wallet you control. Every answer is read at one block and says which.

Tool

Price

Answers

base_token_verdict

$0.01

Before buying a token: risk level, score and flags (proxy, mint, pause, blacklist, owner, DEX liquidity), each with its on-chain fact

base_token_facts

$0.005

ERC20 metadata, owner, proxy and implementation, admin selectors in the bytecode

base_wallet_snapshot

$0.002

ETH and USDC balances, nonce, contract or not

base_gas

$0.001

Base fee, priority fee, gas price

base_tx_summary

$0.003

Status, fee and decoded ERC20 transfers of a transaction

basename_resolve

$0.002

name.base.eth to address, or address to its verified primary Basename

base_facts_budget

free

What this session has spent

Facts and heuristics, not financial advice. API docs and live revenue counter: https://base-facts.yankii.fr and https://base-facts.yankii.fr/stats

Setup

  1. Make a dedicated wallet and put a little USDC on it, on the Base network (1 USDC pays for 100 verdicts). No ETH is needed: the x402 facilitator pays the gas. Never use your main wallet.

  2. Add the server to your MCP client, for example claude_desktop_config.json:

{
  "mcpServers": {
    "base-facts": {
      "command": "npx",
      "args": ["-y", "base-facts-mcp"],
      "env": {
        "X402_PAYER_FILE": "/path/to/payer.json",
        "MAX_PRICE_USD": "0.02",
        "SESSION_BUDGET_USD": "1"
      }
    }
  }
}

payer.json is { "privateKey": "0x..." }; X402_PRIVATE_KEY works too. Without either, the server uses ~/.base-facts-mcp/payer.json when it exists.

Every setting also exists as an option, for hosts that pass only command and args (Preste): --payer-file <path>, --max-price <usd>, --budget <usd>, --api <url>. See preste/ for the Preste config and skill.

Related MCP server: Grey Ridge x402 MCP

Spending safety

  • MAX_PRICE_USD (default 0.02): the client refuses to sign any single payment above it.

  • SESSION_BUDGET_USD (default 1): once reached, the client stops signing until restarted.

  • Only USDC on Base (eip155:8453) is ever signed.

  • A refused or failed call (4xx/5xx) cancels the settlement: you are not charged, and the tool says charged: false with the reason (for example not enough USDC).

  • Paid calls run one at a time so the budget count stays exact.

Development

npm test drives the server over stdio like a real client, with empty wallets: no USDC is spent.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to access crypto prices, DeFi yields, Polymarket data, Base chain info, and security scans with pay-per-call via USDC on Base mainnet.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to fetch crypto market and on-chain data, including prices across venues, token facts, OHLC candles, market overview, DeFi TVL, and wallet balances, with two free tools and the rest paid per call in USDC on Base via x402.
    8
    40 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides onchain intelligence tools for Base, including token risk checks, wallet PnL, and leaderboard data, with paid calls settled per-request in USDC via x402.
    350 npm
    MIT