ReceiptRail — x402 Delivery Receipts

On-chain x402 delivery receipts on Solana: hash-locked, verifiable proof of delivery.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
93%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~494Tokens (tool definitions)
~1.1 KBTypical response size
Minimal attention impact (0.39% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "receiptrail": {
      "url": "https://agenttoll-receipts.app.workbuddy.host/mcp"
    }
  }
}

Remote endpoints

https://agenttoll-receipts.app.workbuddy.host/mcpstreamable-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
⚪issue_receipt(x402_payment_ref, deliverable_digest, x402_payment_signature, buyer, seller)

Anchor a SHA-256 digest of delivered content plus the x402 settlement reference on Solana. Returns a permanent, publicly verifiable receipt (poll until outcome === "settled"). Costs 0.001 USDC via x402; if x402_payment_signature is omitted, returns the payment challenge instead (pay 0.001 USDC to the service address, then call again with the payment tx signature).

Input Schema

{
  "type": "object",
  "properties": {
    "x402_payment_ref": {
      "type": "string",
      "description": "Unique reference for this transaction (1-128 chars)"
    },
    "deliverable_digest": {
      "type": "string",
      "description": "SHA-256 hex digest (64 chars) of the delivered content"
    },
    "x402_payment_signature": {
      "type": "string",
      "description": "Solana tx signature of the 0.001 USDC payment to the service address. Omit to receive the payment challenge."
    },
    "buyer": {
      "type": "string",
      "description": "Optional buyer identifier (wallet address)"
    },
    "seller": {
      "type": "string",
      "description": "Optional seller identifier"
    }
  },
  "required": [
    "x402_payment_ref",
    "deliverable_digest"
  ]
}
🟢verify_receipt(receipt_id, payment_ref)

Verify an AgentToll receipt against live Solana state: PDA owner must be the AgentToll program and the stored digest must match the receipt. Look up by receipt_id, or by x402_payment_ref (always works — the receipt lives on-chain). Read-only, no cost.

Input Schema

{
  "type": "object",
  "properties": {
    "receipt_id": {
      "type": "string",
      "description": "Receipt id, e.g. r_abcdef1234567890"
    },
    "payment_ref": {
      "type": "string",
      "description": "x402_payment_ref of the transaction (use this if receipt_id unknown; resolved on-chain)"
    }
  }
}
🟢get_receipt(receipt_id, payment_ref)

Fetch full receipt details: digests, checks, outcome, amount, buyer, seller, timestamp, PDA. Look up by receipt_id, or by x402_payment_ref (always works — the receipt lives on-chain). Read-only, no cost.

Input Schema

{
  "type": "object",
  "properties": {
    "receipt_id": {
      "type": "string",
      "description": "Receipt id, e.g. r_abcdef1234567890"
    },
    "payment_ref": {
      "type": "string",
      "description": "x402_payment_ref of the transaction (use this if receipt_id unknown; resolved on-chain)"
    }
  }
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools
verifiedversion not recorded3 tools