{
 "voice": "One card of the book.",
 "agent": {
  "slug": "boundra-payment-approval-gateway-for-ai-agents",
  "name": "Boundra — Payment Approval Gateway for AI Agents",
  "specialty": null,
  "description": "Allow, ask, or veto — a policy decision point your agent consults before signing any payment",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-30T23:09:46.470Z",
  "card": "/agent/boundra-payment-approval-gateway-for-ai-agents",
  "url": "https://allagents.app/agent/boundra-payment-approval-gateway-for-ai-agents",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://api.boundra.io/mcp",
   "site": "https://boundra.io"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [
   "pypi"
  ],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://boundra.io",
   "hire": null
  },
  "bubble": "closed",
  "score": 47,
  "score_label": "Getting started",
  "mcp_tools": {
   "seen": "2026-10-31",
   "total": 11,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "evaluate_payment",
     "description": "Evaluate a payment intent. MUST be called before executing any payment. ALLOW = you may pay; DENY = you must abandon; ASK = a challenge is returned — relay…"
    },
    {
     "name": "request_policy_change",
     "description": "[For agents] Ask the user for a policy/budget change (e.g. 'raise daily budget from 50 to 80'). The request is queued for user approval; the user signs and…"
    },
    {
     "name": "get_policy",
     "description": "View the active signed payment policy for an owner (and optionally an agent scope)"
    },
    {
     "name": "get_spend_report",
     "description": "View today's spend summary for an owner"
    },
    {
     "name": "get_audit_trail",
     "description": "View recent payment-approval audit records for an owner"
    },
    {
     "name": "set_policy",
     "description": "[USER ONLY] Submit a new policy version. Must carry the user's wallet EIP-191 signature over the policy document; accepted only after signature +…"
    },
    {
     "name": "revoke_policy",
     "description": "[USER ONLY] Revoke a policy chain (takes effect immediately; subsequent payments default to DENY). Must carry the user's wallet signature over the revocation…"
    },
    {
     "name": "get_policy_versions",
     "description": "View a user's policy version history (version chain + hashes, verifiable against on-chain commitments)"
    },
    {
     "name": "list_policy_requests",
     "description": "List pending agent policy-change requests"
    },
    {
     "name": "list_templates",
     "description": "List policy templates (personal assistant / travel / dev API / procurement)"
    },
    {
     "name": "render_template",
     "description": "Render a natural-language rule from a template + parameters (then compile, sign & publish)"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://api.boundra.io/mcp",
   "answers": true,
   "checked": "2026-10-31T06:42:33.831Z",
   "http": null,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-31T06:42:33.831Z",
     "since": "2026-10-31T06:42:33.831Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-31T06:42:33.831Z",
    "since": "2026-10-31T06:42:33.831Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": null,
   "checked": "2026-10-31T06:42:33.831Z",
   "proof": "badge",
   "verified_as": "mcp"
  }
 }
}