# Otto AI Idle Capital Detector

> Otto AI Idle Capital Detector is a paid API for AI agents from x402.ottoai.services, paid per call via x402, $0.001000/call, status unknown (last checked 2026-09-15).

Detects undeployed tokens sitting idle in a user's Safe wallets and highlights the best yield-earning opportunities across Aave, Morpho, Compound, and Syrup.

## Facts

- Endpoint: GET https://x402.ottoai.services/idle-capital
- Price: $0.001000/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 2
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-ottoai-services-77f63ba9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_hk6TuJ-I60gl367x9oEhS

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability x402-ottoai-services-77f63ba9
```

Example prompt: Can you check my Safe wallet at 0x1234567890123456789012345678901234567890 and tell me which tokens are sitting idle — not earning any yield — and what the best Aave, Morpho, or Compound rates are for each of them?

## When to prefer this

Use this endpoint when you need to surface yield opportunities specifically for tokens sitting idle in Safe (Gnosis Safe) wallets and want protocol-level comparisons across Aave, Morpho, Compound, and Syrup in a single call. Prefer this over generic portfolio endpoints when the user's goal is specifically to identify undeployed capital and act on yield optimization rather than just view balances.

## Known failure modes

- Invalid or malformed EVM address returns an error response
- Wallet with no supported tokens returns empty idleAssets array with totalIdleUsd of 0
- Non-Safe wallet address may return no results if only Safe wallets are indexed
- Rate limiting or upstream vaults.fyi API outage may cause failures
- Payment of 0.001 USDC required; missing or invalid x402 payment header results in 402 response

## How this service works

Detect undeployed tokens sitting in a user's Safe wallets that could be earning yield. Highlights best Aave / Morpho / Compound / Syrup opportunities per token. Powered by vaults.fyi.

## Output

Returns a list of idle assets found in the user's Safe wallet, the total USD value of undeployed capital, and the best available yield opportunities per token across Aave V3, Morpho, Compound, and Syrup protocols, along with the wallet address and a status field.

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {
   "userAddress": "0x1234567890123456789012345678901234567890"
  }
 }
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "userAddress"
     ],
     "properties": {
      "userAddress": {
       "type": "string",
       "description": "EVM wallet address"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "error": {
       "type": "string"
      },
      "status": {
       "type": "string"
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-ottoai-services-77f63ba9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.ottoai.services](https://www.zero.xyz/host/x402.ottoai.services/llms.txt)
