Troubleshooting
Use this page when your agent call fails or returns unexpected output.Endpoint and transport issues
Session not found or Missing mcp-session-id header
Cause: Request sequence does not follow HTTP MCP session flow.
Fix:
- Ensure your client initializes a session on
POST /mcpfirst. - Use an MCP client that supports streamable HTTP sessions.
- Use
https://api.rhaios.com/mcp(not legacy SSE endpoints).
yield_prepare errors
Payment required
Cause: x402 payment was not attached or not verified.
Fix:
- Send the x402 payment header for
yield_prepare. - Retry the same request after payment verification.
No suitable vaults found
Cause: No active vault matched your filters (asset, chain, risk).
Fix:
- Use
asset: "USDC"andchain: "base"first. - Remove strict filters (
riskTolerance, aggressive strategy overrides). - Retry with a larger universe (different chain or strategy).
yield_execute errors
Transaction validation failed
Cause: Signed tx did not match policy (wrong type, wrong chain, wrong target).
Fix:
- Ensure tx is Type 2 or Type 4.
- Ensure
tois EntryPoint (0x0000000071727De22E5E9d8BAf0edAc6f37da032). - Ensure chain is Base (
8453) or Ethereum Sepolia (11155111).
Transaction submission failed with aaCode
yield_execute surfaces common account-abstraction errors:
AA50: postOp reverted (often paymaster/postOp issue)AA24: signature validation failureAA21: account not funded / prefund issue
- Rebuild calldata via
yield_prepare, then re-sign (forAA24). - Check gas sponsorship/funding path (for
AA21/AA50). - Retry once if RPC/bundler transient failure is suspected.
RPC and network issues
Symptoms:- Timeout errors
fetch failed- Receipt not found
- Check
BASE_RPC_URL/ETH_SEPOLIA_RPC_URLreachability. - Retry with backoff (2-3 attempts).
- Verify upstream status for your RPC provider.
Data freshness issues
If strategy quality looks stale:- Run local readiness check:
- Verify latest snapshot and aggregate jobs ran.
- Check health endpoint freshness fields before production cutover.