Stamp content with permanent, verifiable provenance. Hash locally, verify free forever.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
A working answer to EU AI Act Article 50. Article 50(4) requires providers of general-purpose AI systems to mark AI-generated content with machine-readable provenance metadata by 2 August 2026. Mark is one API call: hash the content locally, get back a permanent, publicly verifiable record of who signed it and when. Works from any language, any agent, any pipeline. (This is not legal advice; whether a given stamp satisfies your specific Article 50 obligation depends on your use case and counsel, see docs/eu-ai-act.md.)
Live service: mark.tatastu.dev β verification is always free.
Open the printed verifyUrl in a browser to see the public record: signer, timestamp,
and the Arweave/Base anchor once it lands.
For people: sign in at mark.tatastu.dev/account, choose a file, and make the lifetime sample stamp without creating an API key. The file is hashed in the browser and never uploaded. API keys are portable credentials for agents, scripts, and other applications.
A stamp takes the SHA-256 of any content (text, file, JSON, code, binary) and records:
Within 24 hours, stamps are batched into an RFC 6962 Merkle tree. The root is anchored to Arweave (permanent storage) and Base (EVM on-chain calldata). After anchoring, you can verify the stamp with zero network calls using the offline verifier in this repo.
What a stamp does not prove: authorship truth. The service records "this signer
claimed this content at this time." The claimed time (signedAt) and proven time
(anchored) are distinct and both shown on every verify page.
Or use without installing:
See examples/browser-drop.html for a complete self-contained verify page with no build step.
Add mark.tatastu.dev/mcp to your Claude Code, Cursor, or Windsurf config:
The agent can then call create_proof and verify_proof directly. See
examples/agent-mcp.md for the full config and tool reference.
EU AI Act Article 50(4) requires machine-readable provenance on AI-generated content. The deadline is 2 August 2026.
Run the full example with no setup:
See docs/eu-ai-act.md for the compliance guide.
Every stamp is:
After anchoring you can verify with the public key and inclusion path β no network, no trust, no service required.
After a stamp reaches ANCHORED status, you can verify it with no network calls:
verify/offline.ts is a single 200-line file with zero dependencies. Copy it into
any project. It uses only the Web Crypto API (SubtleCrypto), available in Node 18+,
Deno, and modern browsers.
| Tier | Price | Stamps | Status |
|---|---|---|---|
| First stamp | $0 | 1 lifetime sample per durable account | Live |
| Tatastu membership | $20/month (the whole Tatastu app) | 100/month included | Live |
| Prepaid packs | $1 / $1.50 / $5 / $8 | 5 / 10 / 50 / 100 (no expiry) | Live |
| Volume packs | $35 / $65 / $120 | 500 / 1,000 / 2,000 (no expiry) | Live |
| Pay-per-stamp (x402) | $0.10, or $0.05 with API key | one stamp | Live |
Verification is always free and requires no account.
The checkout page reveals only packs that the live offer manifest reports as available. Full, always-current pricing: mark.tatastu.dev/pricing (mirrored in docs/pricing.md).
| Framework / target | File |
|---|---|
| LangChain (tool-calling agent) | examples/langchain-tool.ts |
| Vercel AI SDK | examples/vercel-ai-tool.ts |
| CrewAI / AutoGen (Python) | examples/crewai-autogen-tool.py |
| MCP (Claude Code, Cursor, Windsurf) | examples/agent-mcp.md |
| ChatGPT Actions (OpenAPI 3.1) | hosted at mark.tatastu.dev/.well-known/gpt-actions.json, source: examples/gpt-actions.json |
| Browser, no build step | examples/browser-drop.html |
| Node.js CLI | examples/node-stamp.ts |
| EU AI Act labeling | examples/eu-ai-act-label.ts |
Full REST reference (every endpoint, error table, rate limits): docs/api.md.
See CONTRIBUTING.md. Found a security issue? See SECURITY.md instead of opening a public issue. The service, Worker, and D1 schema are in a private repo β this repo contains only the public SDK, offline verifier, and examples.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/proof)<a href="https://allmcps.com/mcp/proof"><img src="https://allmcps.com/api/badge/proof?style=directory" alt="Proof on AllMCPs" /></a>