Skip to main content

Developers

Agents that pay. Agents that get paid. Same tools.

Pick your side. A buyer agent spends from a wallet under a mandate. A seller agent charges, notifies and invoices. Both end in a signed receipt. One MCP server, one SDK, test keys free.

Test keys are free.

buy side · buyer agent · sb_buydemo

Prompt

"Buy the cheapest 15 kg dog food at Bello Market and pay with my wallet."

shop → checkoutR$ 179.90 · store checkout readydone
wallet → balancemandate cap R$ 500 / month · R$ 320.10 left afterinside the mandate
pay → pixpaid from the wallet−R$ 179.90done · 1.4 s
receiptrec_8f2a · signed · ed25519signed
mandate-gated spend · signed receipt · same payment history
sell side · seller agent · sb_selldemo

Prompt

"Charge R$ 249 for the Pro plan and send the Pix code to the customer on WhatsApp."

charge → pixcharge created · Pix copia-e-cola+R$ 249.00done · 620 ms
notify → whatsappsent to the customerdone · 340 ms
invoice → nfsefiscal document on settlementrunningissued
receiptrec_c249 · signed · ed25519signed
inbound charge · fiscal document on settlement · same payment history

Sandbox run · demo data

Which side are you on?

Buy side spends under a mandate. Sell side charges and gets paid.

Buy side · your agent spends

Give an agent a wallet and a mandate.

Procurement, compute, subscriptions, payouts. The agent proposes; the mandate decides. Requests matching your approval rules wait for review; requests outside hard limits are blocked.

shopwalletpaycrypto_payledger
agent loop · TypeScriptreal SDK · 0.16.11
const session = await codespar.create({ preset: "latam" });const run = await session.send("buy 15 kg dog food at Bello Market, pay with my wallet");// shop → wallet → pay · rec_8f2a · inside the mandate

Sell side · your agent gets paid

Charge for anything, in one call.

Per-call API pricing, orders on WhatsApp, invoices. The agent creates the charge, notifies the customer and issues the fiscal document when the money lands.

chargenotifyinvoiceshipkyc
charge · TypeScriptreal SDK · 0.16.11
const run = await session.send("charge R$ 249 for the Pro plan, Pix, notify on WhatsApp");const status = await session.paymentStatus(run.tool_calls[0].id);// charge → notify → invoice on settle · rec_c249

Sandbox run · demo data

For you, or for your product

Connect the agent you already use, or build it into what you ship.

For you · MCP

Claude Code, Cursor, Codex CLI, any MCP client.

Point it at the hosted endpoint with a test key. No SDK. Requests that need review go to Dashboard · Approvals.

For your company · SDK

TypeScript and Python clients, plus a CLI.

Same mandates, review rules and payment records in your backend. Webhooks for state changes are rolling out.

For you · one command demo
$ claude mcp add --transport http codespar \ https://connect.codespar.dev/mcp --header "Authorization: Bearer csk_test_…" ✓ connected · test mode
For your company · install demo
$ npm install @codespar/sdk$ pip install codespar MIT · test keys are free

Sandbox run · demo data

Where to go

Hosted MCP, SDK & CLI, Sandbox and docs.

Hosted MCP

One endpoint, connect.codespar.dev/mcp, with a test key.

SDK & CLI

TypeScript and Python clients, and a CLI for keys, mandates and records.

Sandbox

A test project, a test mandate and a Dashboard with Approvals. Nothing settles for real.

Docs

Concepts, quickstarts, cookbooks, the API reference and the server catalog.

Give your agents a way to pay and get paid.

Build is free: hosted MCP, SDK and sandbox.

Test keys are free.

terminal · test modedemo
$ claude mcp add --transport http codespar \ https://connect.codespar.dev/mcp> "charge R$ 249 for the Pro plan and notify the customer on WhatsApp" charge → pix · notify → whatsapp · invoice on settle rec_c249 · signed receipt

Sandbox run · demo data

CodeSpar · Developers