MCP Server (Model Context Protocol)

AI agents can connect natively via MCP to search and evaluate x402 endpoints — no HTTP calls needed. Works with Claude, ChatGPT, Gemini, and any MCP-compatible client.

What this service does

Machine-readable discovery

Register your endpoint programmatically

POST /v1/register — submit a URL, we verify it returns HTTP 402 with a valid x402 spec, then index it with reliability scoring and AI enrichment. 5 req/hour, free, no auth.

curl -X POST https://api.x402dash.com/v1/register \
  -H "Content-Type: application/json" \
  -d '{"url": "https://your-api.com/endpoint"}'
Submit via web form →

API catalog

Free — no auth

Free browse — 10 req/min per IP, no auth

Paid — 60 req/min per IP · x402 · USDC on Base

Key fields for decision-making

Payment flow (x402 protocol v2)

Paid endpoints use the x402 protocol. No API key. No account. Payment settles on Base mainnet in USDC.

  1. 1. DiscoverGET https://api.x402dash.com/.well-known/x402
    Read services[].payment.payTo, .asset, .maxAmountRequired, .network.
  2. 2. Request without payment — call any paid endpoint. Receive HTTP 402 with header:
    X-Payment-Required: <base64(JSON payment spec)>
  3. 3. Sign — wallet signs a USDC TransferWithAuthorization (EIP-3009) for the exact maxAmountRequired to payTo.
  4. 4. Retry with header — same request with: X-Payment: <base64(signed payload)>
  5. 5. Settle + receive data — server posts to facilitator, USDC settles on Base, HTTP 200 with results is returned immediately.

Example agent workflows

Trust and operational signals

Rate limits and abuse policy

Quick start — Python

Install pip install x402 httpx eth-account. Your wallet needs USDC + ETH on Base.

import base64, json, httpx
from eth_account import Account
from x402 import x402ClientSync, parse_payment_required
from x402.mechanisms.evm.exact.register import register_exact_evm_client

account = Account.from_key("0xYOUR_PRIVATE_KEY")
client = x402ClientSync()
register_exact_evm_client(client, account, networks="eip155:8453")

API = "https://api.x402dash.com"

# Step 1: Call endpoint → get 402
resp = httpx.get(f"{API}/v1/route",
    params={"task": "defi oracle", "limit": "3"})

# Step 2: Sign payment with x402 SDK
payment = client.create_payment_payload(
    parse_payment_required(resp.json()))
header = base64.b64encode(json.dumps(
    payment.model_dump(by_alias=True, exclude_none=True)
).encode()).decode()

# Step 3: Retry with payment → get results
data = httpx.get(f"{API}/v1/route",
    params={"task": "defi oracle", "limit": "3"},
    headers={"X-Payment": header}).json()

best = data["primary"]
print(f"Use: {best['url']} (score: {best['route_score']})")
for fb in data["fallbacks"]:
    print(f"Fallback: {fb['url']}")

See Developer API guide for full reference and JavaScript examples.