ERC-8004 Registered · Celo Mainnet · agentId #9226

Your stablecoins. Working while you sleep.

CVault monitors 7 stablecoins every 60 seconds and auto-swaps at your rate threshold gas paid in USDC, zero CELO required.

cvault · agent processCelo Mainnet
> agent:tick interval=60s
agentId #9226monitoring…
#9226agentId
7stablecoins
60scheck interval
<$0.001avg gas cost
1sCelo finality

The problem

The NGN/USD rate moves while you're asleep.

African stablecoin holders lose value not from bad assets but from friction, timing, and manual processes that no longer need to be manual.

Manual monitoring is a second job

The NGN/USD rate moves 24/7. Watching it manually means missed windows at 3am, while you're in a meeting, or just living your life.

Rate windows close in minutes

A good swap window can open and close faster than you can act. By the time you've approved the transaction, the rate has moved.

Gas friction in CELO adds up

Most wallets force you to hold CELO for gas. CVault pays gas in USDC via Celo's fee abstraction you never touch CELO.

How it works

Set it. Forget it. Watch it work.

01

Set your threshold

Configure the rate you want e.g. swap when 1 USDm > 1,600 NGNm. Set minimum and maximum swap sizes.

02

Agent monitors continuously

CVault queries Mento Protocol and Uniswap V3 in parallel every 60 seconds, comparing rates and calculating spread.

03

Swap executes automatically

When your threshold is met, the agent executes at best rate. Gas paid in USDC. Receipt logged to ERC-8004 reputation registry.

Features

Built for serious stablecoin holders.

Best-rate routing

Mento Protocol and Uniswap V3 queried in parallel. CVault always picks the better rate — you never leave money on the table.

Gas in USDC

Fee abstraction via Celo CIP-64. The agent wallet never holds CELO. Every transaction uses the USDC gas adapter.

ERC-8004 trust layer

Every autonomous swap submits reputation feedback onchain. Your agent builds a verifiable track record at 8004scan.io.

MiniPay ready

Detects Opera MiniPay automatically. Auto-connects with no popup. Optimised for the 360px mobile viewport and 16M+ MiniPay users.

A2A API + MCP

Other agents can quote rates and execute swaps via the REST A2A API. Developers get an MCP server for Claude, Cursor, and any MCP client. Full docs below.

Non-custodial

Your keys, your tokens. CVault is a read+execute agent it never holds your funds, only executes swaps you've pre-authorised.

Agent interoperability

Open to the ecosystem.

CVault exposes a REST A2A API and an MCP server so other agents can quote rates and execute swaps without building their own Mento/Uniswap routing, and developers can wire CVault directly into Claude, Cursor, or any MCP-compatible client.

Base: https://celovault-production.up.railway.app

Discovery: /.well-known/agent.json

GET/a2a/manifest

Agent capability card all skills, supported tokens, ERC-8004 identity, and auth requirements

GET/a2a/status

Active state, agent config, ERC-8004 reputation score, total swaps executed

GET/a2a/balances

Multicall stablecoin balances for any wallet on Celo Mainnet. Query: ?address=0x…

POST/a2a/quote

Best-rate quote across Mento Protocol + Uniswap V3 in parallel. No execution, no auth.

POST/a2a/swapBearer

Execute swap at best available rate. Gas paid in USDC via fee abstraction. Requires Bearer token.

View source → agent/a2a.ts
fetch · quote + swap
// POST /a2a/quote — no auth required
const res = await fetch(
  "https://celovault-production.up.railway.app/a2a/quote",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      tokenIn:  "USDm",
      tokenOut: "NGNm",
      amountIn: "10"
    })
  }
);

// Response
{
  "rate":    1634.20,
  "source":  "mento",
  "spread":  0.12,
  "mento":   { "rate": 1634.20, ... },
  "uniswap": { "rate": 1629.85, ... },
  "timestamp": 1718012400
}

// POST /a2a/swap — Bearer token required
const swap = await fetch(
  "https://celovault-production.up.railway.app/a2a/swap",
  {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "Authorization": "Bearer <A2A_API_KEY>"
    },
    body: JSON.stringify({
      tokenIn:     "USDm",
      tokenOut:    "NGNm",
      amountIn:    "10",
      slippageBps: 100
    })
  }
);
// { txHash, amountIn, amountOut, source }

ERC-8004 discovery

The /a2a/manifest and /.well-known/agent.json endpoints return the full agent card — compatible with the ERC-8004 agent trust spec.

Supported tokens

African currencies are first-class.

CVault treats ₦, KES, and GHS as primary assets — not exotic add-ons. Seven stablecoins monitored in every tick.

🇺🇸

USDm

Mento Dollar

🇳🇬

NGNm

Mento Naira

🇰🇪

KESm

Mento Shilling

🇬🇭

GHSm

Mento Cedi

🇪🇺

EURm

Mento Euro

🇺🇸

USDC

USD Coin

🇺🇸

USDT

Tether USD

ERC-8004 Registered

agentId #9226 · Celo Mainnet

Non-custodial

Your keys, your tokens

Open source

github.com/Baoku26/CeloVault

Ready to automate your FX?

No signup. No custody. Connect your wallet and configure your threshold in under a minute.