> For the complete documentation index, see [llms.txt](https://docs.zipwire.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zipwire.io/tools-and-integrations/proofpack-agent-delegation/common-use-cases.md).

# Common use cases

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](/tools-and-integrations/proofpack-agent-delegation/path1-wallet-only-javascript.md), [Path 2](/tools-and-integrations/proofpack-agent-delegation/path2-jws-claims-javascript.md), [Express](/tools-and-integrations/proofpack-agent-delegation/express-middleware.md), [ASP.NET Core](/tools-and-integrations/proofpack-agent-delegation/aspnet-core-agent-verification.md).

## 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.

```javascript
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)](/tools-and-integrations/proofpack-agent-delegation/path1-wallet-only-javascript.md). 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/status` with `x-agent-wallet` or query param).
* Service verifies: wallet is authorized by a human and not revoked, then returns status or allows payout.

Use [Path 1 (wallet-only)](/tools-and-integrations/proofpack-agent-delegation/path1-wallet-only-javascript.md) or [Express middleware](/tools-and-integrations/proofpack-agent-delegation/express-middleware.md). 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)](/tools-and-integrations/proofpack-agent-delegation/path2-jws-claims-javascript.md) or [Express](/tools-and-integrations/proofpack-agent-delegation/express-middleware.md). 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](/tools-and-integrations/proofpack-agent-delegation/path2-jws-claims-javascript.md). 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)](/tools-and-integrations/proofpack-agent-delegation/path2-jws-claims-javascript.md) or the [ASP.NET Core](/tools-and-integrations/proofpack-agent-delegation/aspnet-core-agent-verification.md) 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](/tools-and-integrations/proofpack-agent-delegation.md).
