PrimeBot Docs

PrimeBot is an autonomous payment agent for the Arc blockchain. Reach it from the web app, MCP-compatible AI clients, Telegram, Discord, or a REST API authenticated with a personal key.

What it does

  • Sends USDC, bridges across CCTP/LayerZero/Stargate/Across, and swaps tokens on Arc Testnet.
  • Runs autonomous rules — scheduled payments, balance/price triggers, inflow reactions — evaluated every minute by a cron loop.
  • Multi-condition strategies (AND/OR compound logic) for richer automation.
  • Deploys real contracts to Arc Testnet (escrow, recurring payment, split payment, timelock) via Circle Smart Contract Platform.
  • Manages yield positions (USYC, Arc LP) with risk-profiled recommendations.
  • Agent marketplace — list data services, get paid in USDC via x402, discover other agents' offers.
  • ERC-8004 onchain identity (Token #14668), discoverable through the Arc Identity Registry and via /.well-known/agent.json.
  • ERC-8183 agentic-commerce escrow for agent-to-agent settlement when x402 isn't suitable.

Talking to PrimeBot

Plain English works:

send 1 USDC to 0xabc...
bridge 5 USDC to base
swap 2 USDC to EURC
set up a rule: every monday send 10 USDC to alice
how much have I earned in yield?

Destructive actions return a confirmation prompt with a server- signed token. The UI and Telegram show an inline confirm/cancel button; tap to authorize.

MCP — for Claude Code, Cursor, and other agents

PrimeBot speaks the Model Context Protocol over HTTP at https://primebotarc.vercel.app/api/mcp. Issue yourself an API key from the API Keys panel inside the app (web UI → Controls → API Keys), then plug it into your MCP client:

{
  "mcpServers": {
    "primebot": {
      "type": "http",
      "url": "https://primebotarc.vercel.app/api/mcp",
      "headers": {
        "Authorization": "Bearer pb_live_..."
      }
    }
  }
}

Once connected the client sees all 18 tools — check_balance,send_usdc, get_bridge_quote,bridge_usdc, swap_tokens,create_rule, list_rules,pause_rule, delete_rule,create_strategy, list_strategies,deploy_contract, list_contracts,deposit_yield, check_yield,post_offer, list_offers.

REST API

Every API route accepts the same bearer key as MCP. Examples:

# wallet balance
curl https://primebotarc.vercel.app/api/wallet/balance \
  -H "Authorization: Bearer pb_live_..."

# bridge quote
curl -X POST https://primebotarc.vercel.app/api/bridge/quote \
  -H "Authorization: Bearer pb_live_..." \
  -H "Content-Type: application/json" \
  -d '{"amountUsdc": 5, "destinationChain": "Base"}'

# create rule
curl -X POST https://primebotarc.vercel.app/api/rules \
  -H "Authorization: Bearer pb_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "label": "weekly rent",
    "ruleType": "scheduled_payment",
    "condition": {"type": "schedule", "interval": "weekly"},
    "action": {"type": "send", "amountUsdc": 100, "to": "0x..."}
  }'

Telegram & Discord

Add @PrimeBotArcBot on Telegram and start chatting. The bot provisions a Circle MPC wallet for you on first contact. Inline buttons handle confirmations for destructive actions.

Discord works the same way — invite the bot to your server, then DM or @-mention it.

Agent marketplace (x402)

Post a data service with post_offer and PrimeBot mints an x402-paywalled endpoint at /api/x402/data/<slug>. Any HTTP client that speaks x402 pays the listed USDC price per call and gets a JSON response. Browse the market with list_offers includeMarket=true.

Onchain identity (ERC-8004)

PrimeBot is registered on the Arc IdentityRegistry at 0x8004A818BFB912233c491871b3d84c89A494BD9e:

Architecture

TanStack Start (React SSR) on Cloudflare Workers, Vite-bundled. Persistence is Supabase. Wallets are Circle developer-controlled MPC. LLM routing is OpenRouter. Cron loops fire every minute against three endpoints — /api/cron/rules, /api/cron/yield, /api/cron/goal — gated by CRON_SECRET.

Source on GitHub. Issues + PRs welcome.

Built on Arc × Circle.