Common use cases
ProofPack use cases — MCP, payments, age, residency, compliance (AML, KYC)
Short patterns for agent verification. Agents prove things about their owner (nationality, clear AML, age or DoB, and that a real human authorized them) so services can gate commerce, finance, and access without holding full ID. Full code: Path 1, Path 2, Express, ASP.NET Core.
1. MCP Server Integration
Goal: Only let human-authorized agents use tools or resources.
Agent connects with its wallet (e.g. in handshake or header).
Server calls
verifier.verifyByWallet(agentWallet)and grants or restricts access.
const result = await verifier.verifyByWallet(agentWallet);
if (result.isValid) {
// Grant agent full MCP access
} else {
// Restrict access or reject agent
}Use Path 1 (wallet-only). No claims needed—just “is there a human behind this wallet?”
2. Payment and Payout Verification
Goal: Let an agent check payment status or receive payouts on behalf of a human, without the service storing KYC.
Agent sends request with wallet (e.g.
GET /api/payments/statuswithx-agent-walletor query param).Service verifies: wallet is authorized by a human and not revoked, then returns status or allows payout.
Use Path 1 (wallet-only) or Express middleware. For payouts that require “clear AML” or residency, use Path 2 with those claims (see Compliance below).
3. Age-Restricted Commerce
Goal: Sell age-restricted goods (alcohol, tobacco, certain OTC, games, content) without storing the buyer’s DoB.
Agent places order or confirms eligibility with
Authorization: Bearer <token>(JWS or JWT).Proof reveals only what’s needed: e.g. “over 18” or age band; service never sees full DoB.
Service verifies token, checks age claim, then fulfils order.
Use Path 2 (JWS/JWT with claims) or Express. Same pattern for digital content, streaming age gates, or in-person handover checks.
4. Residency or Nationality-Gated Access
Goal: Restrict offers, pricing, or product access by region or nationality without seeing full ID.
Agent requests content, subscription, or product with a proof (JWS/JWT) that reveals e.g. nationality or residency.
Service verifies proof and reads only the disclosed claim (e.g. “UK national”, “EU resident”), then applies policy.
Use Path 2. Enables regional pricing, cross-border eligibility, right-to-rent style checks, and compliant geo-gating.
5. Compliance (KYC/AML) and Regulated Transactions
Goal: Let an agent execute financial actions (payments, withdrawals, gambling, lending) where the service must know the human is verified and compliant.
Agent sends request with
Authorization: Bearer <token>(JWS/JWT) that includes the needed claims: e.g. clear AML, nationality, age.Service verifies proof and checks claims (e.g. “clear AML”, “over 18”, “allowed jurisdiction”), then processes the transaction.
Use Path 2 (JWS + claims) or the ASP.NET Core pattern. Covers payouts, crypto/DeFi access, gambling, insurance, and any flow that today would re-ask for KYC or full ID.
Summary: Path 1 = “Is this wallet acting for a verified human?” (wallet-only). Path 2 = “Is this wallet acting for a human who meets these criteria?” (JWS/JWT with selective claims: age, nationality, AML, etc.). Full guide: ProofPack & Agent Delegation.
Last updated