Attest402
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Attest402Create an attestation for https://example.com/api/price?symbol=BTC"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Attest402
Cryptographically signed and timestamped evidence of a public web or API response. Agent-native, paid per call via x402 — 0.20 USDC on Base. No accounts, no API keys.
An agent submits a public HTTPS URL → Attest402 fetches it securely, hashes body/headers/redirects, signs the canonical record with Ed25519, anchors it with an independent RFC-3161 timestamp and returns a portable evidence package that verifies fully offline.
The evidence confirms the integrity of the captured data and Attest402's observation at the stated time. It does not certify the truth, legality or authorship of the captured content.
Quickstart (local)
pip install -r requirements.txt
cp .env.example .env # defaults: dev mode, Base Sepolia
uvicorn app.main:app --reload
# → http://localhost:8000 (landing page, /openapi.json, /llms.txt)Disable the paywall for local experiments with X402_ENABLED=false.
Related MCP server: fallnotary-us-mcp
API
Endpoint | Method | Price | Function |
| POST | 0.20 USDC | Create an evidence package |
| POST | free | Verify attestation (+ optional body) |
| GET | free | Attestation metadata (90 d retention) |
| GET | free | Download evidence package (24 h retention) |
| GET | free | Ed25519 public keys (old keys permanent) |
| GET | free | x402 discovery manifest |
| GET | free | Agent-readable description |
| GET | free | Healthcheck |
Architecture
app/
main.py FastAPI app, routes, retention loop
payments.py x402 middleware (exact/USDC/Base) + Bazaar discovery extension
fetcher.py SSRF-hardened fetcher (DNS-pinned, 2 MB cap, 3 redirects, 10 s)
ssrf.py URL/DNS/IP policy (blocks private, loopback, metadata, rebinding)
attest.py Pipeline: fetch → canonical record → sign → RFC-3161 → package
canonical.py Deterministic canonical JSON + SHA-256
signing.py Ed25519 key management (secret-store only, rotation-aware)
tsa.py RFC-3161 client (freetsa + DigiCert fallback)
evidence.py Evidence zip builder (offline-verifiable)
verify.py Verification logic (shared with /v1/verify)
mcp_server/ MCP server: attest_web_response / verify_attestation / get_attestation
scripts/ generate_keys.py · verify_offline.py (30-line standalone verifier)
docs/ DEPLOY.md · GO-LIVE-CHECKLIST.md · LISTINGS.md
listings/ Ready-to-submit listing materials (Bazaar, ecosystem PR, MCP registries)Payments (x402)
Scheme
exact, USDC, price$0.20, network Base Sepolia by defaultX402_USE_MAINNET=trueflips to Base mainnet (feature flag, no code change)Settlement only after a successful capture — failed fetches are never charged
Idempotency-Keyheader dedupes retried jobsBazaar discovery metadata is declared on the paid route → automatic listing in the x402 Bazaar after the first CDP-facilitator settlement on mainnet
Verify an evidence package offline
python scripts/verify_offline.py attest_xxx-evidence.zipOnly needs cryptography. Checks canonical-record hash, Ed25519 signature,
body/headers/redirect hashes and the RFC-3161 token hash — no network access.
Tests
python -m pytest tests/ -q # 45 tests: SSRF policy, canonical determinism,
# sign/verify roundtrips, API flow, idempotencyDeploy
See docs/DEPLOY.md (Railway + Render, incl. mainnet switch and key rotation) and docs/GO-LIVE-CHECKLIST.md. Get listed: docs/LISTINGS.md.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceMCP server for trademark first-use attestation with post-quantum dual-signed receipts.MIT
- Alicense-qualityCmaintenanceA sovereign, MIT-licensed MCP server that provides cryptographically signed notarization for listings, benchmarks, and transactions using Ed25519. It runs offline on user infrastructure as a free alternative to SaaS notary tools.MIT
- Alicense-qualityBmaintenanceMCP server for verifying and attesting SHA-256 fingerprints of digital works via Streamable HTTP, with zero-install and privacy-preserving design.MIT
- Flicense-qualityBmaintenanceA paid remote MCP server that issues and checks structured action receipts, with audit logs and reviewer-ready evidence for WebMCP actions.
Related MCP Connectors
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
A paid remote MCP for ZeroID, built to return verdicts, receipts, usage logs, and audit-ready JSON.
A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/paulos-sudo/attest402'
If you have feedback or need assistance with the MCP directory API, please join our Discord server