trackmcp
Back to directory
clicks-protocol

clicks-protocol

View on GitHub

Agent commerce settlement router for AI agents on Base. Split USDC into liquid working capital and routed yield.

2 stars TypeScriptOthers Updated Jul 21, 2026
ai-agentsautonomous-agentsbasedefiethereummcpsdksoliditytypescriptusdcx402yieldagent-commercetreasuryworking-capitalsettlement-router

Documentation

Clicks Protocol ⚡

Agent commerce settlement routing for USDC flows on Base.

·

·

·

·

·

·

·



One call. Yield starts.

typescript
import { ClicksClient } from '@clicks-protocol/sdk';

const clicks = new ClicksClient(signer);
await clicks.quickStart('100', agentAddress);
// 80 USDC → agent wallet (instant)
// 20 USDC → treasury yield route

That's it. No config. No dashboard. No human required.


What Clicks does

Every USDC payment your agent receives gets auto-split:

code
Payment in
    ├── 80% → Agent Wallet (liquid, instant)
    └── 20% → DeFi Yield (Aave V3 or Morpho, auto-routed to best APY)
                 │
                 └── Withdraw anytime → Agent gets principal + yield (minus 2% fee on yield only)
  • No lockup. Withdraw anytime.
  • No manual steps. Fully autonomous.
  • 2% fee on yield only. Never on principal.
  • Auto-rebalances between Aave V3 and Morpho for best APY.

Install

bash
npm install @clicks-protocol/sdk ethers@^6

x402 + Coinbase Agentic Wallets

Clicks is designed to sit after x402-style payment flows on Base.

x402 handles authorization and payment. Clicks routes USDC after receipt:

typescript
import { ClicksClient } from '@clicks-protocol/sdk';
import { CoinbaseWalletSDK } from '@coinbase/wallet-sdk';

const wallet = new CoinbaseWalletSDK({ appName: 'YourAgent' });
const signer = wallet.makeWeb3Provider().getSigner();

const clicks = new ClicksClient(signer);
await clicks.quickStart('1000', agentAddress);

// Your agent now has a settlement policy
// 80% liquid for operations
// 20% routed through treasury yield
  • Same chain (Base), same USDC contract
  • 80% liquid for operations
  • 20% routed through treasury yield
  • No lockup, withdraw anytime

SDK

One call: registers agent, approves USDC, splits first payment.

typescript
const result = await clicks.quickStart('100', agentAddress);
// result.registered → true (skips if already done)
// result.approved   → true (skips if allowance sufficient)
// result.paymentSplit → true

Individual operations

typescript
// Register
await clicks.registerAgent(agentAddress);

// Approve USDC spending
await clicks.approveUSDC('max');

// Receive payment (auto-splits)
await clicks.receivePayment('500', agentAddress);

// Check yield info
const info = await clicks.getYieldInfo();
// { activeProtocol: 'Morpho', aaveAPY: 700, morphoAPY: 950, ... }

// Withdraw everything
await clicks.withdrawYield(agentAddress);

// Custom yield split (5-50%)
await clicks.setOperatorYieldPct(30); // 30% to yield, 70% liquid

Read-only (no signer needed)

typescript
const clicks = new ClicksClient(provider); // provider, not signer

const agent = await clicks.getAgentInfo(agentAddress);
// { isRegistered: true, deposited: 1000000n, yieldPct: 20n }

const split = await clicks.simulateSplit('100', agentAddress);
// { liquid: 80000000n, toYield: 20000000n }

MCP Server

AI agents can discover and use Clicks via MCP:

bash
npm install @clicks-protocol/mcp-server
CLICKS_PRIVATE_KEY=0x... clicks-mcp

16 tools available: `clicks_quick_start`, `clicks_register_referral`, `clicks_get_agent_info`, `clicks_simulate_split`, `clicks_get_yield_info`, `clicks_get_referral_stats`, `clicks_verify_receipt`, `clicks_get_settlement_status`, `clicks_reconcile_settlement`, `clicks_replay_policy`, `clicks_get_receipt_trail`, `clicks_receive_payment`, `clicks_withdraw_yield`, `clicks_register_agent`, `clicks_set_yield_pct`, `clicks_explain`

Works with Claude, Cursor, LangChain, and any MCP-compatible client.


Referral Network

Referral contracts exist on-chain. Treat them as a separate attribution layer from the current SDK `quickStart()` helper.

LevelShare of protocol fee
L1 (direct referral)40%
L220%
L310%
Treasury30%

The referred agent pays nothing extra. Rewards come from the 2% protocol fee once referral attribution has been registered through a dedicated flow.

Recommended flow:

typescript
const deadline = BigInt(Math.floor(Date.now() / 1000) + 3600);
const signature = await clicks.signReferralApproval(agentAddress, referrerAddress, deadline);

const result = await clicks.quickStartWithReferral(
  '100',
  agentAddress,
  referrerAddress,
  deadline,
  signature,
);

Important:

  • `quickStart()` handles treasury setup.
  • `registerReferralWithSig()` handles explicit attribution.
  • `quickStartWithReferral()` is a convenience wrapper over those two steps, not an atomic one-shot contract call.

Economics per $10k deposit at 7% APY:

Your treePassive income/year
10 agents$56
100 agents$560
1,000 agents$9,800
10,000 agents$98,000

Agent Teams

Form squads, hit TVL milestones, earn bonus yield:

TierTVL thresholdBonus yield
🥉 Bronze$50k+0.20%
🥈 Silver$250k+0.50%
🥇 Gold$1M+1.00%
💎 Diamond$5M+2.00%

Contracts (Base Mainnet)

ContractAddress
ClicksRegistry`0x23bb...0C0a3`
ClicksSplitterV4`0xB7E0...f3C8`
ClicksYieldRouter`0x0531...EECD`
ClicksFeeV2`0x8C4E...0fb5`
ClicksReferral`0x1E5A...4ccC`
Safe Multisig (Owner)`0xaD82...D6A9`
USDC`0x8335...913`

All contracts verified on Basescan. Owned by Gnosis Safe multisig — single-key compromise is not possible.

ERC-8004 Trustless Agent

Clicks is registered on the ERC-8004 Identity Registry on Base as agentId 45074. On-chain reputation accrues per completed agent job. Attestors who follow the Clicks Attestor Schema V1 become eligible for the reputation-aware fee multiplier (shipping in V5).


Architecture

code
clicks-protocol/
├── contracts/           Solidity (^0.8.20)
│   ├── ClicksSplitterV4    Splits payments, manages yield %
│   ├── ClicksYieldRouter   Routes to best APY (Aave/Morpho)
│   ├── ClicksFeeV2           2% fee collection on yield
│   ├── ClicksRegistry      Agent ↔ Operator mapping
│   └── ClicksReferral      Multi-level referral system
├── sdk/                 TypeScript SDK
├── mcp-server/          MCP Server (16 tools)
├── site/                Landing page + llms.txt + agent.json
└── test/                227 tests (Hardhat)

Agent Discovery


Connect Your AI Agent

The Clicks MCP server is live at `https://mcp.clicksprotocol.xyz/mcp` — connect any MCP-compatible client in seconds.

Claude Desktop

Add to your `claude_desktop_config.json`:

json
{
  "mcpServers": {
    "clicks-protocol": {
      "url": "https://mcp.clicksprotocol.xyz/mcp"
    }
  }
}

OpenClaw

bash
openclaw mcp set clicks-protocol --url https://mcp.clicksprotocol.xyz/mcp

Codex CLI

Add to `.codex/config.json`:

json
{
  "mcpServers": {
    "clicks-protocol": {
      "type": "url",
      "url": "https://mcp.clicksprotocol.xyz/mcp"
    }
  }
}

Gemini CLI

json
{
  "mcpServers": {
    "clicks-protocol": {
      "url": "https://mcp.clicksprotocol.xyz/mcp"
    }
  }
}

Available MCP Tools

ToolDescription
`get_protocol_stats`TVL, APY, agent count
`get_agent_info`Check if an agent is registered
`get_yield_info`Yield balance for an agent
`simulate_yield`Project earnings over time
`clicks://protocol/overview`Resource: protocol overview

See `examples/integrations/` for ready-to-use config files.


Works with

Any agent framework that handles USDC on Base:

x402 · LangChain · CrewAI · AutoGen · Eliza · OpenClaw · Claude · Cursor · Codex · Gemini · Hummingbot · Phidata


Development

bash
npm install
npx hardhat compile
npx hardhat test          # 227 tests

License

MIT


Built for agents, by agents. Live on Base.

Frequently asked questions

What is clicks-protocol?

clicks-protocol is Agent commerce settlement router for AI agents on Base. Split USDC into liquid working capital and routed yield.

How do I install clicks-protocol?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is clicks-protocol open source?

Yes — it is hosted on GitHub at https://github.com/clicks-protocol/clicks-protocol and has 2 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP