x402receipts
Record x402 agent purchases as reconciled, auditable receipts; verify any receipt on the ledger.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
x402receipts-mcpclaude mcp add x402receipts -e 'X402RECEIPTS_EVM_PRIVATE_KEY=<your x402receipts_evm_private_key>' -e 'X402RECEIPTS_SOLANA_PRIVATE_KEY=<your x402receipts_solana_private_key>' -- npx -y x402receipts-mcp@1.0.0
{
"mcpServers": {
"x402receipts": {
"command": "npx",
"args": [
"-y",
"x402receipts-mcp@1.0.0"
],
"env": {
"X402RECEIPTS_EVM_PRIVATE_KEY": "<your x402receipts_evm_private_key>",
"X402RECEIPTS_SOLANA_PRIVATE_KEY": "<your x402receipts_solana_private_key>"
}
}
}
}
Environment variables
X402RECEIPTS_EVM_PRIVATE_KEYsecret Optional. 0x… key holding USDC on Base; pays USD 1 per wallet per calendar month; later uploads that month are free.X402RECEIPTS_SOLANA_PRIVATE_KEYsecret Optional. ed25519 key (hex or base58) holding USDC on Solana.
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
x402receipts
Accounting infrastructure for autonomous spending. Every x402 purchase an agent makes becomes a receipt, reconciled against the on-chain transaction, with missing or unmatched payments flagged, monthly statements for finance, and evidence anyone can verify.
- Website: https://x402receipts.com · App: https://app.x402receipts.com · Live statement: https://app.x402receipts.com/demo
- Docs for agents: https://app.x402receipts.com/llms.txt · OpenAPI: https://app.x402receipts.com/openapi.json
- Price: USD 0.01 per agent wallet for each day it records purchases, paid over x402 in USDC (Base, Solana) by the agent's own wallet. A quiet day costs nothing, so a month never exceeds USD 0.31. Unlimited receipts. No API key.
Use it
In code — one wrapper around the fetch your agent already pays with (npm i x402receipts-sdk):
import { wrapFetchWithPayment } from "@x402/fetch";
import { withRegister } from "x402receipts-sdk";
const register = withRegister(fetch, { endpoint: "https://app.x402receipts.com", payWith: () => pay });
const pay = wrapFetchWithPayment(register, wallet);
As an MCP server (npx -y x402receipts-mcp): record_receipts, verify_receipt, service_info. See packages/mcp.
Over HTTP: POST https://app.x402receipts.com/api/v1/receipts — answers 402 with the x402 challenge; any x402 client pays it.
With an AI coding tool: paste the integration prompt into Claude Code or Cursor.
The format is an open standard
The record, its fingerprint, the append-only log above it, the anchor record and the verification algorithm are published as ARR-1 — Agent Receipt Record, released into the public domain (CC0). JSON Schemas are in spec/arr-1/. Implement it yourself, or check our implementation against it.
ARR-1 builds on existing standards rather than replacing them: the tree is the RFC 9162 profile used by Certificate Transparency, checkpoints are published as HCS-27 messages, accounts are named with CAIP-2/CAIP-10, and agents with HCS-14 identifiers.
In this repo
| Path | What |
|---|---|
spec/arr-1/ | the ARR-1 specification and its JSON Schemas (CC0) |
sdk/ | the x402receipts-sdk npm package (single file, no dependencies) |
packages/mcp/ | the x402receipts-mcp MCP server |
examples/ | plain Node, Vercel AI SDK, LangChain, OpenAI Agents |
integrations/agentkit/ | Coinbase AgentKit action provider |
integrations/x402-ecosystem/ | x402.org ecosystem entry |
How it works
- Capture — the SDK records each paid call: resource, amount, counterparty, transaction reference, request/response fingerprints, delivery status, and the seller's signed receipt when it issues one (x402
offer-receipt). - Reconcile — the connected wallets are read on Base and Solana; every outgoing USDC payment is matched to a receipt. What doesn't match is an exception, not an average.
- Prove — each night, the account's whole receipt log is hashed into one RFC 9162 Merkle tree and its root is written to the Hedera Consensus Service, linked to the previous day's root. Every receipt has a public verification page that redoes the maths in the browser.
- Report — the owner signs in with the wallet: spend by supplier, the register, CSV and signed JSON export.
Guide: https://x402receipts.com/guide.html · Status: https://app.x402receipts.com/status · Contact: hello@x402receipts.com
MIT licensed.
Frequently asked questions
What is x402receipts?
Record x402 agent purchases as reconciled, auditable receipts; verify any receipt on the ledger.
How do I install x402receipts?
It runs on your machine. In Claude Code: claude mcp add x402receipts -e 'X402RECEIPTS_EVM_PRIVATE_KEY=<your x402receipts_evm_private_key>' -e 'X402RECEIPTS_SOLANA_PRIVATE_KEY=<your x402receipts_solana_private_key>' -- npx -y x402receipts-mcp@1.0.0. For other clients, paste the JSON configuration from this page into their MCP settings.
Does x402receipts need an API key?
Yes. It expects X402RECEIPTS_EVM_PRIVATE_KEY, X402RECEIPTS_SOLANA_PRIVATE_KEY, which you set in its configuration.
Is x402receipts open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains x402receipts?
It is published by x402receipts. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.