{
 "voice": "One card of the book.",
 "agent": {
  "slug": "spendctl",
  "name": "spendctl",
  "specialty": null,
  "description": "Spend policy for AI agents that pay (x402, MPP). Login-free sandbox, real sidecar, no real funds.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-26T23:08:57.129Z",
  "card": "/agent/spendctl",
  "url": "https://allagents.app/agent/spendctl",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://mcp.spendctl.dev/mcp",
   "site": "https://spendctl.dev/docs/sandbox/"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://spendctl.dev/docs/sandbox/",
   "hire": null
  },
  "bubble": "closed",
  "score": 50,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-10-27",
   "total": 6,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "sandbox_create",
     "description": "Creates an isolated spendctl sandbox and returns its sandbox_id. Call it first: every other tool needs the sandbox_id, and one sandbox serves a whole…"
    },
    {
     "name": "sandbox_pay",
     "description": "Fetches one of the sandbox's paid endpoints (HTTP 402, x402) through the spendctl sidecar, which applies the sandbox agent's budget, allowlist and approval…"
    },
    {
     "name": "check_budget",
     "description": "Shows the sandbox agent's spending limits, what has been spent in each window and what is left. Use it before a paid call when the remaining budget matters…"
    },
    {
     "name": "list_receipts",
     "description": "Lists the sandbox agent's most recent payment attempts, newest first: paid (amount and mock transaction hash), refused (reason codes) and waiting for…"
    },
    {
     "name": "get_policy",
     "description": "Returns the sandbox's spendctl.yaml as text: the preset name and the agent's budgets, allowed hosts and approval rules. Use it to explain why a payment was…"
    },
    {
     "name": "approve",
     "description": "Approves or denies a payment that sandbox_pay reported as waiting for approval, as the human approver would with `spendctl approve`. Use it only with an…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://mcp.spendctl.dev/mcp",
   "answers": true,
   "checked": "2026-10-27T05:55:27.552Z",
   "http": 405,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-27T06:38:31.585Z",
     "since": "2026-10-27T06:38:31.585Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-27T06:38:31.585Z",
    "since": "2026-10-27T06:38:31.585Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 405,
   "checked": "2026-10-27T05:55:27.552Z"
  }
 }
}