For developers

Make your business available to agents – in code.

SDK, CLI, and MCP tools to publish a signed checkout autonomous agents can discover and buy from – every sale gated by your policy, settled straight to your own address.

Veto governs · the rail executes.

zero to published checkout
# 1 · install + scaffold your merchant
$ npx @veto-protocol/cli init
✓ merchant created · policy + receiving ready
# 2 · add a product agents can buy
$ veto products add --name "Weather API" \
--price 0.05 --currency USDC
# 3 · publish a signed agentic-checkout manifest
$ veto publish
✓ live at /.well-known/agentic-checkout.json
✓ receipts signed Ed25519 · verifiable via JWKS

Three ways in

CLI, SDK, and MCP – pick your surface

Same checkout, same policy engine, same signed receipts. Ship from a shell, from your backend, or straight into an agent runtime.

CLI

@veto-protocol/cli

One command publishes your catalog, sets receiving + policy, and serves a signed agentic-checkout manifest at your .well-known. Wire it into CI or run it from your shell.

SDK

TypeScript SDK

Type-safe clients for the checkout, policy, and receipt APIs. Authorize a sale, read a verdict, verify a receipt offline against your JWKS – a few lines, fully typed.

MCP

MCP server

Drop Veto into any agent runtime – Claude Code, Cursor, Codex. The agent discovers your checkout and settles through it, every sale gated by your policy first.

5-minute quickstart

Live and getting paid in five steps

From an empty shell to a signed checkout agents can buy from – in about the time it takes to read this.

01

Install the CLI

No SDK boilerplate to start – the CLI scaffolds a merchant, a catalog, and a policy from your shell.

02

Describe what you sell

Add products with a price, currency, and description. Veto turns them into a machine-readable catalog agents can read without scraping.

03

Point at your receiving address

Set where funds land – your address, your rail. Veto is non-custodial; it never holds the money.

04

Set policy + publish

Caps, windows, allowlists, escalation thresholds – then publish. Veto serves a signed manifest agents discover and buy from.

05

Get paid by agents

Agents settle on-rail; every sale hits Veto for an allow / deny / escalate verdict with a receipt. You watch sales land in the dashboard.

Offline-verifiable

Every sale ships with a receipt anyone can verify.

Every decision ships with an Ed25519 receipt – verifiable offline, by anyone. Signed Ed25519, distributed via JWKS – the same machinery OAuth providers use. Proof of consent on every sale, not a disputable log line.

Non-custodial. Agents pay you directly at your own receiving address; Veto never holds funds.

verify-receipt.ts
import { verifyReceipt } from "@veto-protocol/sdk";
// any party can verify a sale offline, no Veto call
const ok = await verifyReceipt(receipt, {
jwks: "https://you.example/.well-known/jwks.json",
});
// → { valid: true, verdict: "allow", amount: "0.05 USDC" }

Ship a checkout agents can buy from today.

Free on testnet, no card. Flip to live when you're ready to get paid – agents settle straight to your address.