For AI Agents

Give your AI agent a treasury that earns and pays.

Park idle USDC in a yield vault where it earns — and spend it per call over x402, from the earning balance, without ever un-parking. Drop in a plugin and your agent has a treasury that never sits idle and never locks.

AlsoPortable on-chain reputation — Attribution scores every agent wallet
New · live on Arc testnet
Agent treasury · pay for compute

A place to park capital that stays spendable.

Agents park idle USDC in a yield vault where it earns — and spend it per call over x402 without ever un-parking. Verification is a hold against the earning balance; settlement burns from it. Never idle, never locked, always yours.

Park

Deposit idle USDC into the yield vault — it starts earning immediately.

MINTWARE_PARK
Earn in place

The parked balance compounds in the yield source; it never moves to a hot wallet.

MINTWARE_TREASURY
Spend per call

Each x402 payment draws from the earning position via a hold → settle. Capital never un-parks.

MINTWARE_X402_PAY
The JIT 402 payment engine
01
Challenge

The agent hits a paid endpoint — an API, a compute node, a merchant POS — and gets back HTTP 402 Payment Required: the price, and the rails it accepts.

02
Pick a rail

The agent reads the 402 payload and chooses — a native machine rail (x402, on-chain) or a legacy card rail (Visa / Mastercard).

03
Settle

Native: sign an EIP-712 session permit, stream USDC on-chain, retry with a proof header. Legacy: mint a just-in-time card.

04
Resume & burn

The resource unlocks and the task resumes — while the single-use card or token auto-burns. Nothing reusable is left behind.

Native machine rail
x402 · on-chain
  1. 1Sign a sub-second EIP-712 session permit
  2. 2Stream USDC directly on-chain
  3. 3Attach the tx proof header and retry the request
Legacy card rail
Visa / Mastercard · Rain · Bridge
  1. 1Debit the exact price in USDC from the yield vault
  2. 2Mint a single-use PAN, hard-capped to the price, 10-min expiry
  3. 3Autofill the merchant — the card burns on settlement
Why it changes the math
Zero idle float

100% of the agent’s capital stays in yield-bearing vaults. Money only moves to a rail at the millisecond a 402 asks for it.

No standing attack surface

Compromise the agent and you find no valid card. Every PAN auto-destructs after one charge and can’t be re-billed.

Guardrails on the vault

Set policy once — “$50/day on infra, $5 per tx.” The JIT hook enforces the bounds before it ever issues a token.

One stack, every merchant

The same agent navigates on-chain x402 micro-payments and real-world Visa / Mastercard POS — one financial stack.

The vault is the rail · agentic ULV

Single-sided ULV pools let an agent supply liquidity with one call — depositUSDC(amount) — no two-token inventory, no impermanent-loss math. Capital earns right up to the exact second it’s spent.

Liquidity Supplier

Auto-deposits idle treasury USDC into single-sided ULV pools — one clean call, depositUSDC(amount), no two-asset rebalancing.

ERC-7579 session keys
Yield Arbitrageur

Shifts capital across Uniswap v4 fee tiers by pool volume, around the clock, with no human signature prompts.

v4 dynamic hooks · EIP-712 permits
JIT Liquidation Node

Withdraws the exact USDC needed to fund a JIT card the instant a 402 challenge lands.

HTTP 402 interceptor · flash settlement

This is built and proven on Arc testnet — the deposit→earn→CCTP→settle loop ran on-chain, and the x402 seller, facilitator, AgentKit, and MCP layers are code-complete and tested. It is not yet audited or on mainnet, and nothing here is an offer. External audit gates real value.

01Available integrations
Coinbase AgentKit
Base · Arc
Park, pay over x402, and check reputation — every action below callable by an AgentKit agent from natural language.
pnpm add @mintware/agentkit-actions @coinbase/agentkit zod
View docs →
ElizaOS Plugin
Autonomous agents
Drop-in plugin for ElizaOS agents — the same actions, fired by conversational triggers.
pnpm add @mintware/eliza-plugin
View docs →
MCP Server
Claude · Cursor
Model Context Protocol server for Claude Desktop and Cursor — the same actions, no code required.
pnpm add -g @mintware/mcp-server
View docs →
02Reputation · Attribution leaderboardLive

Alongside the treasury, every agent wallet also earns a portable on-chain reputation. Optional — the parking account and payments work without it.

Top Mintware agents on Base
Live reputation rankings for registered agents, powered by the Attribution oracle.
Open leaderboard →
Loading leaderboard…
03Actions (all integrations)
AgentKitElizaOSMCPDescription
PARKPARK_USDCPark USDC into the yield vault — it earns while staying spendable in place.writes tx
UNPARKUNPARK_USDCUn-park USDC back to the wallet by redeeming vault shares. Always yours.writes tx
TREASURYSHOW_TREASURYmintware_parking_accountShow the parking account — USDC parked (earning) and spendable in place.read-only
X402_QUOTEQUOTE_X402mintware_x402_quotePreflight an x402-gated compute/API URL — the price, without paying.read-only
X402_PAYPAY_X402mintware_x402_payPay for an x402-gated call in USDC (EIP-3009) and get the resource back.writes tx
GET_SCOREGET_ATTRIBUTION_SCOREmintware_get_scoreLook up Attribution score for any address or the agent's own wallet.read-only
REGISTERREGISTER_MINTWAREmintware_registerOne-time on-chain registration with the Attribution contract on Base.writes tx
CLAIM_PENDINGCLAIM_PENDING_ACTIONSmintware_claim_pendingPull pre-signed oracle attestations and record them on-chain.writes tx
04Quick start — AgentKit
agent.tsTypeScript
import { AgentKit, CdpWalletProvider } from '@coinbase/agentkit'
import { mintwareActions } from '@mintware/agentkit-actions'

const walletProvider = await CdpWalletProvider.configureWithWallet({
  apiKeyName:    process.env.CDP_API_KEY_NAME,
  apiKeyPrivKey: process.env.CDP_API_KEY_PRIVATE_KEY,
  networkId:     'base-mainnet',
})

const agentkit = await AgentKit.from({ walletProvider, actionProviders: [] })

// Register all Mintware actions — park/unpark, treasury, x402 pay, + reputation
for (const action of mintwareActions) agentkit.use(action)

// Your agent can now: "Park $50, then pay https://api.example/compute for me."
05Environment variables
AGENT_PRIVATE_KEY0x-prefixed hex private key of the agent walletrequired
CDP_API_KEY_NAMECoinbase Developer Platform API key name (AgentKit only)required
CDP_API_KEY_PRIVATE_KEYCoinbase Developer Platform API key secret (AgentKit only)required
MINTWARE_PARK_VAULTYield vault address to park into (defaults to the Arc-testnet YPN vault)optional
MINTWARE_PARK_USDCUSDC token address on the parking network (defaults to Arc USDC)optional
MINTWARE_PARK_RPCRPC for park/unpark reads + txs (defaults to Arc testnet)optional