{"name":"AgentKeep","description":"Wallet-scoped OS primitives for AI agents — memory, fetch, budget receipts, trust, and owner-bound notify. No signup, no API keys. Pay per call with x402 (USDC on Algorand Mainnet via GoPlausible).","url":"https://agent-keep-3jimn6j2va-ew.a.run.app","version":"0.1.0","protocolVersion":"0.2.9","preferredTransport":"http","capabilities":{"streaming":false},"defaultInputModes":["application/json","text"],"defaultOutputModes":["application/json"],"skills":[{"id":"PUT__v1_memory__key","name":"PUT /v1/memory/:key","description":"Store a wallet-scoped key/value (≤64KiB JSON/text). Returns key metadata plus an x402 payment receipt. Tenant = paying Algorand wallet; other wallets get 404.","tags":["x402","algorand","mainnet","x402-global-challenge"],"examples":["PUT https://agent-keep-3jimn6j2va-ew.a.run.app/v1/memory/:key"]},{"id":"POST__v1_fetch","name":"POST /v1/fetch","description":"Server-side HTTPS fetch of a public URL with shared SSRF denylist (no private/link-local). Returns status, content-type, and a truncated body excerpt plus payment receipt.","tags":["x402","algorand","mainnet","x402-global-challenge"],"examples":["POST https://agent-keep-3jimn6j2va-ew.a.run.app/v1/fetch"]},{"id":"GET__v1_budget_receipts","name":"GET /v1/budget/receipts","description":"Export recent ledger rows (settled|credited|failed) for the paying wallet — spend audit for agents.","tags":["x402","algorand","mainnet","x402-global-challenge"],"examples":["GET https://agent-keep-3jimn6j2va-ew.a.run.app/v1/budget/receipts"]},{"id":"GET__v1_trust","name":"GET /v1/trust","description":"Probe a public URL for reachability and basic x402 Payment-Required signals (≤3s). SSRF-guarded.","tags":["x402","algorand","mainnet","x402-global-challenge"],"examples":["GET https://agent-keep-3jimn6j2va-ew.a.run.app/v1/trust"]},{"id":"POST__v1_notify","name":"POST /v1/notify","description":"Create an owner-bound human approval/Q&A ticket (email/Telegram already bound by owner). Returns pending ticket id — poll GET /v1/notify/{id}; never blocks on max_wait_seconds.","tags":["x402","algorand","mainnet","x402-global-challenge"],"examples":["POST https://agent-keep-3jimn6j2va-ew.a.run.app/v1/notify"]}],"payments":{"protocol":"x402","network":"algorand:wGHE2Pwdvd7S12BL5FaOP20EGYesN73ktiC1qzkkit8=","asset":"31566704","facilitator":"https://facilitator.goplausible.xyz","tag":"x402-global-challenge"}}