# Agent Receipts Mcp

> Prove what your AI agents did - EU AI Act-ready audit trails: signed, tamper-evident receipts with offline verification. MCP server + HTTP API.

- **Type:** MCP server
- **Install:** `agentstack add mcp-dhanushs1912-svg-agent-receipts-mcp`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [dhanushs1912-svg](https://agentstack.voostack.com/s/dhanushs1912-svg)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [dhanushs1912-svg](https://github.com/dhanushs1912-svg)
- **Source:** https://github.com/dhanushs1912-svg/agent-receipts-mcp

## Install

```sh
agentstack add mcp-dhanushs1912-svg-agent-receipts-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# agent-receipts

[](https://www.npmjs.com/package/agent-receipts-mcp)
[](LICENSE)

**Prove what your AI agents did.**

On **August 2, 2026**, the EU AI Act's record-keeping obligations for high-risk AI systems
became enforceable: automatic event logging (Article 12), deployer log retention of at
least six months (Article 26), and penalties up to €15M or 3% of global turnover. The
question your auditor, regulator, or counterparty will ask is simple:

> *"Your AI agent approved this. Prove exactly what it did — and prove nobody edited the record."*

An ordinary log file can't answer that: whoever owns the log can edit it. `agent-receipts`
gives every consequential agent action a **cryptographically signed, timestamped receipt**
that anyone can verify offline — and exports **signed audit bundles** you can hand
directly to a compliance officer.

## What a receipt proves

- **What happened, when** — action type, summary, actor, principal, ISO 8601 timestamp
- **It hasn't been altered** — Ed25519 signature over canonical JSON; change one character
  and verification fails
- **Nothing was deleted** — receipts are hash-chained with monotonic sequence numbers per
  vault; every audit export automatically flags gaps (deletions) and chain breaks
- **Without exposing your data** — hash-only privacy: payloads are SHA-256 fingerprinted
  and immediately discarded, never stored or transmitted

## Built for the audit conversation

`export_audit_bundle` produces what compliance actually needs: all receipts in a date
range, a tamper-evidence report (sequence gaps, chain breaks), the signing public key,
and a manifest signature over the whole bundle. Retention is yours to control — the vault
is a local SQLite file you keep as long as Article 26 (or your policy) requires.

**You don't have to trust us.** Receipts verify **offline** against a pinned public key
with the bundled CLI — no account, no network call, no dependence on this service
existing tomorrow. That's what makes the evidence durable.

## Quick start (MCP — local, free)

```jsonc
// Claude Desktop / Claude Code / any MCP client
{
  "mcpServers": {
    "agent-receipts": {
      "command": "npx",
      "args": ["-y", "agent-receipts-mcp"],
      "env": { "AGENT_RECEIPTS_DATA": "" }
    }
  }
}
```

Requires Node.js >= 22.13 (uses the built-in `node:sqlite` — zero native dependencies).
Prefer one-click? Grab the `.mcpb` bundle from
[Releases](https://github.com/dhanushs1912-svg/agent-receipts-mcp/releases) and open it
with Claude Desktop.

| Tool | When an agent should call it |
| --- | --- |
| `issue_receipt` | Immediately after any consequential action. Returns the signed receipt. |
| `verify_receipt` | Before trusting a receipt presented by another agent or system. |
| `export_audit_bundle` | When a human asks for the audit trail of a date range. |
| `get_service_info` | To fetch the public key worth pinning for offline verification. |

## Quick start (HTTP API)

```bash
npm install && npm run build
npm run serve        # http://localhost:8787
```

```bash
# 1. Create a vault (returns your API key — shown once)
curl -X POST localhost:8787/v1/vaults -d '{"name":"acme-compliance"}'

# 2. Issue a receipt after an agent action
curl -X POST localhost:8787/v1/receipts \
  -H "Authorization: Bearer ark_..." \
  -d '{"action_type":"invoice.approved","summary":"Approved INV-1042 for EUR 1,250",
       "payload":{"invoice":"INV-1042","amount":1250},"actor":"agent:ap-bot@acme"}'

# 3. Anyone can verify — no auth
curl -X POST localhost:8787/v1/verify -d '{"receipt":{...}}'

# 4. Export a signed audit bundle for the compliance officer
curl "localhost:8787/v1/export?from=2026-01-01" -H "Authorization: Bearer ark_..."
```

Service manifest for machine discovery: `GET /.well-known/agent-receipts.json`.

## Offline verification

```bash
npx -y -p agent-receipts-mcp agent-receipts-verify receipt.json --pubkey 
# exit 0 = authentic, exit 1 = invalid/tampered
```

## Receipt format (`agent-receipts/v1`)

```jsonc
{
  "schema": "agent-receipts/v1",
  "id": "rcpt_...",
  "vault_id": "vlt_...",
  "sequence": 42,                      // monotonic per vault; gaps = deletion evidence
  "issued_at": "2026-07-15T12:34:56.789Z",
  "action": {
    "type": "invoice.approved",
    "summary": "Approved invoice INV-1042 for EUR 1,250",
    "actor": "agent:ap-bot@acme",      // optional
    "principal": "acme-gmbh",          // optional
    "context": { "jurisdiction": "EU" } // optional
  },
  "payload_hash": "sha256:...",        // or null; contents never stored
  "prev_receipt_hash": "sha256:...",   // hash chain to the previous receipt
  "key_id": "key_...",
  "public_key": "",   // embedded for offline verification
  "signature": ""
}
```

Canonicalization is JCS-style: lexicographically sorted keys, no whitespace.
The JSON Schema lives at [docs/receipt.schema.json](docs/receipt.schema.json).

## EU AI Act mapping (informational)

| Obligation | How agent-receipts helps |
| --- | --- |
| Art. 12 — automatic event logging | `issue_receipt` on every consequential action; timestamps, actor, traceable chain |
| Art. 26 — keep logs ≥ 6 months | Local vault you retain on your terms; signed `export_audit_bundle` for handover |
| Traceability / integrity | Ed25519 signatures, hash chain, deletion detection, offline verification |

**Not legal advice.** Whether your system is "high-risk" and what you must log is a
question for your counsel. agent-receipts produces evidence infrastructure.

## Status & roadmap

- [x] Core: issue / verify / export with hash chain + Ed25519
- [x] MCP stdio server + HTTP API + offline verifier CLI + MCPB bundle
- [ ] Hosted vaults with per-receipt pricing
- [ ] RFC 3161 / transparency-log timestamp anchoring
- [ ] Key rotation and multi-key verification

MIT License.

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [dhanushs1912-svg](https://github.com/dhanushs1912-svg)
- **Source:** [dhanushs1912-svg/agent-receipts-mcp](https://github.com/dhanushs1912-svg/agent-receipts-mcp)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-dhanushs1912-svg-agent-receipts-mcp
- Seller: https://agentstack.voostack.com/s/dhanushs1912-svg
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
