{"apiVersion":"v1","directorySlug":"ottoai-mcp-fb88e2530d","title":"Otto Intel","description":"40 tools for AI agents over one MCP endpoint — 13 market-intelligence scanners and 7 execution constructors. First eligible cached call free, then USDC on Base per call.","pageUrl":"https://www.mcpbundles.com/skills/ottoai-mcp-fb88e2530d","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.ottoai.services/mcp","hostedMcpUrl":null,"toolCount":40,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"services.ottoai/ottoai-mcp-fb88e2530d","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"otto_crypto_news","description":"Read importance-ranked crypto headlines with source links and publication times, plus a sentiment-scored market brief. The hourly snapshot reports its analysis window and freshness; missing source links remain unknown. Paid-only, including the first call: this tool preserves the hosted free intelligence allowance. Market context only; not a recommendation. Hosted access: paid-only; each call costs $0.001 USDC through x402 and preserves the free allowance.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto crypto news","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_crypto_news","displayName":"Otto crypto news"},{"name":"otto_news_recaps","description":"Read a concise crypto market recap with ranked stories, source links where available, analysis window and freshness. A cached result can use the hosted free allowance; a cold or unavailable read returns a payment challenge without generating a recap for free. Stale-but-servable cached results retain their upstream freshness and degraded indicators. Market context only; not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.003 USDC thr","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto crypto market recap","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_news_recaps","displayName":"Otto crypto market recap"},{"name":"otto_tokenized_equities","description":"Scan the live registry of US equities and ETFs tokenized on Robinhood Chain (4663): symbol, canonical token address, decimals, the executable buy price a live route returns, the catalog reference price and the deviation between them, plus a verifiable tradability signal. An optional thesis returns a relevance-ranked shortlist with a match reason per row. Data only; not a recommendation or executable quote. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"thesis":{"type":"string","maxLength":200,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto tokenized equities","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_tokenized_equities","displayName":"Otto tokenized equities"},{"name":"otto_rh_season","description":"Scan rug-screened Robinhood Chain (4663) movers with honeypot filters and per-token risk flags. Market context only; not a pick, recommendation, or trade instruction. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.001 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto Robinhood Chain season","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_rh_season","displayName":"Otto Robinhood Chain season"},{"name":"otto_equity_intel","description":"Read SEC-EDGAR fundamentals and filings context for a US ticker: revenue and net-income trends, margins, EPS, leverage, recent 10-K/10-Q/8-K filings, and a guarded AI summary. Fundamentals scanner only; not a price feed or recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.003 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["ticker"],"properties":{"ticker":{"type":"string","pattern":"^\\$?[A-Za-z][A-Za-z.-]{0,9}$","maxLength":11,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto equity intelligence","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_equity_intel","displayName":"Otto equity intelligence"},{"name":"otto_insider_trades","description":"Read parsed SEC Form 4 insider transactions for a US ticker, including purchase/sale counts, dollar values, roles, and net P/S balance. Filing scanner only; not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.003 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["ticker"],"properties":{"ticker":{"type":"string","pattern":"^\\$?[A-Za-z][A-Za-z.-]{0,9}$","maxLength":11,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto insider trades","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_insider_trades","displayName":"Otto insider trades"},{"name":"otto_institutional_holdings","description":"Read the latest SEC 13F-HR top positions for an institutional manager by CIK or manager ticker, with amendments applied. Ownership data only; not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.003 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["manager"],"properties":{"manager":{"type":"string","pattern":"^\\$?[A-Za-z0-9][A-Za-z0-9.-]{0,9}$","maxLength":11,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto institutional holdings","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_institutional_holdings","displayName":"Otto institutional holdings"},{"name":"otto_equity_smart_money","description":"Read a public-domain SEC bundle for a US ticker: Form 4 insider activity plus trailing-twelve-month XBRL fundamentals. Scanner context only; not a pick or recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.006 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["ticker"],"properties":{"ticker":{"type":"string","pattern":"^\\$?[A-Za-z][A-Za-z.-]{0,9}$","maxLength":11,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto equity smart-money scanner","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_equity_smart_money","displayName":"Otto equity smart-money scanner"},{"name":"otto_equity_smart_money_brief","description":"Read one guarded AI brief over observed SEC Form 4 flow, 13D/13G ownership events, and fundamentals for a US ticker. Filing scanner only; generation rejects buy/sell advice and the result is not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.10 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["ticker"],"properties":{"ticker":{"type":"string","pattern":"^\\$?[A-Za-z][A-Za-z.-]{0,9}$","maxLength":11,"minLength":1},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto equity smart-money brief","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_equity_smart_money_brief","displayName":"Otto equity smart-money brief"},{"name":"otto_base_season","description":"Scan quality-screened Base tokens with current social-intelligence and trusted-KOL context. Market context only; not a pick, recommendation, or trade instruction. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.002 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto Base season","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_base_season","displayName":"Otto Base season"},{"name":"otto_pm_markets","description":"Read the highest-volume open Polymarket markets with live outcome probabilities, bid/ask context, liquidity, volume, and end dates. Event-probability context only; not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.001 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto prediction-market context","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_pm_markets","displayName":"Otto prediction-market context"},{"name":"otto_pm_crypto","description":"Read high-volume open BTC, ETH, and crypto Polymarket markets with current outcome probabilities and market context. Event-probability data only; not a recommendation. Hosted access: the first eligible cached intelligence result is free; otherwise calls cost $0.001 USDC through x402.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto crypto prediction-market context","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_pm_crypto","displayName":"Otto crypto prediction-market context"},{"name":"otto_stock_pools","description":"Find the DEX pools a tokenized US stock or ETF is actually a member of, on Robinhood Chain, Base, BNB Chain or Solana. Returns each pool id (Uniswap v4 pool ids kept distinct from v3 pool addresses), DEX and version, which side the asset is on, the counterpart token with an evidence-backed classification (verified stock, verified stablecoin, or unclassified), reported USD liquidity and 24h volume, 24h transaction count, pool creation time, and the source coverage limits. Membership discovery onl","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["stock"],"properties":{"stock":{"type":"string","pattern":"^\\$?(robinhood|base|bsc|solana):[A-Za-z0-9._-]{1,50}$","maxLength":64,"minLength":3},"x_payment":{"type":"string","maxLength":65536,"minLength":1}},"additionalProperties":false},"title":"Otto tokenized-stock pool discovery","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_stock_pools","displayName":"Otto tokenized-stock pool discovery"},{"name":"otto_prepare_swap","description":"Prepare, decode, and verify an unsigned same-chain EVM ERC20 swap construction aid for the caller-owned EOA or Safe. The envelope's valid_until bounds freshness and is committed to the artifact digest; the signer account nonce is the on-chain replay boundary, and this tool cannot guarantee single execution. Returns ordered allowance-reset, approval, and call steps only; never signs or submits. Every envelope from this server is valid for 300 seconds from construction (valid_until); a stale envel","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","chainId","fromToken","toToken","fromAmount","slippage"],"properties":{"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"toToken":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"slippage":{"type":"object","required":["maxBps"],"properties":{"maxBps":{"type":"integer","maximum":1000,"minimum":1},"minAmountOut":{"type":"string","pattern":"^[1-9]\\d*$"}},"additionalProperties":false},"fromToken":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"client_ref":{"type":"string","maxLength":128,"minLength":1},"fromAmount":{"type":"string","pattern":"^[1-9]\\d*$"},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false}},"additionalProperties":false},"title":"Prepare an Otto-attributed LI.FI swap","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_swap","displayName":"Prepare an Otto-attributed LI.FI swap"},{"name":"otto_prepare_bridge","description":"Prepare, decode, and verify an unsigned cross-chain native-USDC bridge construction aid for the caller-owned EOA or Safe, over the enumerated v1 Circle-CCTP route set (Ethereum, Polygon, Base, Arbitrum, Avalanche); any other chain, token, or bridge route is refused by name. The envelope's valid_until bounds freshness and is committed to the artifact digest; the signer account nonce is the on-chain replay boundary, and this tool cannot guarantee single execution. Returns ordered allowance-reset,","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","fromChainId","toChainId","fromToken","toToken","fromAmount","slippage"],"properties":{"toToken":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"slippage":{"type":"object","required":["maxBps"],"properties":{"maxBps":{"type":"integer","maximum":1000,"minimum":1},"minAmountOut":{"type":"string","pattern":"^[1-9]\\d*$"}},"additionalProperties":false},"fromToken":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"toChainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"client_ref":{"type":"string","maxLength":128,"minLength":1},"fromAmount":{"type":"string","pattern":"^[1-9]\\d*$"},"fromChainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false},"destinationRecipient":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"}},"additionalProperties":false},"title":"Prepare an Otto-attributed LI.FI cross-chain USDC bridge","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_bridge","displayName":"Prepare an Otto-attributed LI.FI cross-chain USDC bridge"},{"name":"otto_prepare_polymarket_order","description":"Prepare and verify an unsigned Polymarket CTF Exchange V2 limit order (GTC) for the caller-owned Polygon EOA, with Otto's builder code stamped inside the EIP-712 order struct and re-asserted on the exact digest the signer will sign. The price must be an exact multiple of the market's live minimum tick size and the size at or above its published minimum. The envelope's valid_until bounds freshness and is committed to the artifact digest; the exchange's own order hash is the replay boundary, and t","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","tokenId","side","price","size"],"properties":{"side":{"enum":["BUY","SELL"],"type":"string"},"size":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,9})(?:\\.\\d{1,2})?$"},"price":{"type":"string","pattern":"^0\\.\\d{1,4}$"},"tokenId":{"type":"string","pattern":"^[1-9]\\d{0,77}$"},"client_ref":{"type":"string","maxLength":128,"minLength":1},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false}},"additionalProperties":false},"title":"Prepare an Otto-attributed Polymarket CLOB limit order","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_polymarket_order","displayName":"Prepare an Otto-attributed Polymarket CLOB limit order"},{"name":"otto_prepare_perp_order","description":"Prepare and verify an unsigned Hyperliquid perpetuals order (limit, with optional reduce-only take-profit and stop-loss triggers bundled as normalTpsl) for the caller-owned Hyperliquid account, returned as the canonical L1 action plus the exact EIP-712 Agent domain, struct, and connectionId recipe the caller's own signer needs. The asset id, size grid, and price grid come from the live perp universe: an unknown or delisted perp, a size finer than the asset's szDecimals, or a price off the venue'","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","asset","side","size","limitPrice"],"properties":{"side":{"enum":["BUY","SELL"],"type":"string"},"size":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,15})(?:\\.\\d{0,14}[1-9])?$"},"asset":{"type":"string","pattern":"^[A-Za-z0-9]{1,32}$"},"client_ref":{"type":"string","maxLength":128,"minLength":1},"limitPrice":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,15})(?:\\.\\d{0,14}[1-9])?$"},"reduceOnly":{"type":"boolean","default":false},"timeInForce":{"enum":["Gtc","Ioc","Alo"],"type":"string","default":"Gtc"},"vaultAddress":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"stopLossPrice":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,15})(?:\\.\\d{0,14}[1-9])?$"},"tradingSigner":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false},"takeProfitPrice":{"type":"string","pattern":"^(?:0|[1-9]\\d{0,15})(?:\\.\\d{0,14}[1-9])?$"}},"additionalProperties":false},"title":"Prepare an unsigned Hyperliquid perp order L1 action","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_perp_order","displayName":"Prepare an unsigned Hyperliquid perp order L1 action"},{"name":"otto_prepare_yield_deposit","description":"Prepare the EXACT otto_prepare_swap pair (envelope + prepareInput) that deposits USDC into one of the executable Morpho vaults from the Yield Copilot registry, as a LI.FI position-acquisition route (which may buy shares or compose a protocol deposit) whose output token is the vault's ERC-4626 share token and whose receiver is the signing account. The vault comes from the registry row named by executableMarketId and is never an input; the caller's registryCommitment must equal the commitment reco","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","executableMarketId","registryCommitment","amount","slippage"],"properties":{"amount":{"type":"string","pattern":"^[1-9]\\d*$"},"slippage":{"type":"object","required":["maxBps"],"properties":{"maxBps":{"type":"integer","maximum":1000,"minimum":1}},"additionalProperties":false},"client_ref":{"type":"string","maxLength":128,"minLength":1},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false},"executableMarketId":{"type":"string","maxLength":120,"minLength":1},"registryCommitment":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"}},"additionalProperties":false},"title":"Prepare a Yield Copilot vault deposit (Morpho USDC on Base) as a delegable swap pair","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_yield_deposit","displayName":"Prepare a Yield Copilot vault deposit (Morpho USDC on Base) as a delegable swap pair"},{"name":"otto_prepare_yield_withdraw","description":"Prepare the EXACT otto_prepare_swap pair (envelope + prepareInput) that redeems vault shares from one of the executable Morpho vaults in the Yield Copilot registry back to USDC in the signing account, as a LI.FI exit route (which may sell shares or compose a protocol redemption) whose input token is the vault's ERC-4626 share token. The vault and the asset come from the registry row named by executableMarketId and are never inputs; the caller's registryCommitment must equal the commitment recomp","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","executableMarketId","registryCommitment","shares","slippage"],"properties":{"shares":{"type":"string","pattern":"^[1-9]\\d*$"},"slippage":{"type":"object","required":["maxBps"],"properties":{"maxBps":{"type":"integer","maximum":1000,"minimum":1}},"additionalProperties":false},"client_ref":{"type":"string","maxLength":128,"minLength":1},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false},"executableMarketId":{"type":"string","maxLength":120,"minLength":1},"registryCommitment":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"}},"additionalProperties":false},"title":"Prepare a Yield Copilot vault withdraw (Morpho USDC on Base) as a delegable swap pair","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_yield_withdraw","displayName":"Prepare a Yield Copilot vault withdraw (Morpho USDC on Base) as a delegable swap pair"},{"name":"otto_prepare_stock_buy","description":"Prepare the EXACT otto_prepare_swap pair (envelope + prepareInput) that buys one of the executable Coinbase B20 tokenized equities on Base with USDC, as a LI.FI route through the fenced diamond whose receiver is the signing account. The token comes from the registry row named by executableEquityId and is never an input; the caller's registryCommitment must equal the commitment recomputed over the current record. The WORST PERMISSIBLE FILL (amount over the route's own floor) is checked against th","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accountProfile","executableEquityId","registryCommitment","amount","slippage"],"properties":{"amount":{"type":"string","pattern":"^[1-9]\\d*$"},"slippage":{"type":"object","required":["maxBps"],"properties":{"maxBps":{"type":"integer","maximum":100,"minimum":1}},"additionalProperties":false},"client_ref":{"type":"string","maxLength":128,"minLength":1},"accountProfile":{"type":"object","required":["kind","address","chainId"],"properties":{"kind":{"enum":["eoa","safe"],"type":"string"},"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$"},"chainId":{"type":"integer","maximum":9007199254740991,"exclusiveMinimum":0}},"additionalProperties":false},"executableEquityId":{"type":"string","maxLength":120,"minLength":1},"registryCommitment":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$"}},"additionalProperties":false},"title":"Prepare a tokenized-stock buy (Coinbase B20 on Base) as a delegable swap pair","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_prepare_stock_buy","displayName":"Prepare a tokenized-stock buy (Coinbase B20 on Base) as a delegable swap pair"},{"name":"otto_sponsored_account","description":"Protected account action: availability, prepare, reviewGas for current gas payer and estimate, explicit submit, owned read or reconcile. Gas refresh is read-only planning and requires new confirmation before any send. Wallet upgrade is separate. Sponsorship requires a reviewed source activation; current availability is authoritative. A missing submission response is unknown and must never cause a replacement submission.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Review or recover an account transaction","logicalName":"otto_sponsored_account","displayName":"Review or recover an account transaction","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_native_yield_userop","description":"Protected native protocol action. Read availability, review and confirm native scope, prepare, reviewGas for current payer and network estimate, and explicitly confirm one operation, or read/reconcile/revoke native consent. Account upgrade is separate. Source activation and current owner authority are required. Unknown delivery retains the original operation; no replacement is allowed. A preparation or simulation is not funded execution.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Review or recover an account native yield action","logicalName":"otto_native_yield_userop","displayName":"Review or recover an account native yield action","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_submit_under_delegation","description":"Submit a verified otto_prepare_swap envelope on Base under the end user's CDP delegation. Arguments: { userId, envelope (the otto_prepare_swap result), prepareInput (the exact otto_prepare_swap request, with slippage.minAmountOut) } — validated strictly AFTER the caller is authenticated, so the listed input schema is intentionally permissive. Server-to-server only: the caller presents Otto's delegation secret in the `x-otto-delegation-auth` request header (never in arguments); a call without it","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Submit an Otto-prepared swap under a CDP end-user delegation","logicalName":"otto_submit_under_delegation","displayName":"Submit an Otto-prepared swap under a CDP end-user delegation","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_delegation_fence_status","description":"PUBLIC and read-only, no header: whether the Model-B project policy that fences every delegated send is installed and v-current on this server, with its versioned name, rules digest, the per-swap cap ceiling in USD (shared by every delegated user — a person may choose any whole-dollar cap from per_swap_cap_min_usd up to it, enforced server-side and recorded against their own grant), and Otto's PUBLIC CDP project id (a UUID — the authority an agent binds its mint to). Exposes ONLY the fence's pub","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":false},"title":"Read the Model-B delegation fence (public promise: present, name, rules digest, per-swap cap)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_delegation_fence_status","displayName":"Read the Model-B delegation fence (public promise: present, name, rules digest, per-swap cap)"},{"name":"otto_delegation_fence","description":"Idempotent ensure-by-digest of the ONE CDP project-scope policy that fences every delegated send, then a read-back. Writes only when no project policy exists (creates it) or when the existing one is Otto's own lineage with stale rules (updates it in place). REFUSES BY NAME if a different project-scope policy is installed — it is never overwritten or deleted. Never downgrades a newer fence. An OPS action: at most one ensure runs project-wide at a time, never during a rolling deploy, never from th","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Ensure the Model-B project policy (the delegation fence) is installed and reads back as v-current","logicalName":"otto_delegation_fence","displayName":"Ensure the Model-B project policy (the delegation fence) is installed and reads back as v-current","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_delegation_status","description":"Read back, for the end user identified by a CDP access token, their CDP accounts, whether the Model-B fence is present, and whether an active delegation reads back (with its expiry and the per-swap cap recorded for it). Arguments: { accessToken } — the server resolves the user from the token; a client-sent user id is refused. delegation.per_swap_cap_usd is the number THIS user chose at mint time; it is ABSENT when no cap is recorded for the grant, which means the delegated send will refuse it —","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Read one end user's delegation status (token-bound)","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_delegation_status","displayName":"Read one end user's delegation status (token-bound)"},{"name":"otto_delegation_revoke","description":"Revoke the end user's delegation from Otto's side and confirm by read-back that it no longer exists; from then on this server submits nothing for that user (fail-closed, even if the read-back had failed). Arguments: EITHER { accessToken } (the user path — the server resolves the user from the token) OR { userId, support_reason } (the support path, for an operator holding the server secret; the reason is logged, the token never is). Server-to-server only: the caller presents Otto's delegation sec","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Revoke one end user's delegation, developer-side, confirmed by read-back","logicalName":"otto_delegation_revoke","displayName":"Revoke one end user's delegation, developer-side, confirmed by read-back","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_delegation_cap","description":"TWO PHASES, both header authed, both resolving the end user from the access token. { phase: \"reserve\", accessToken, perSwapCapUsd, requestedDays, mintKey } takes a generation-bound unified mint claim, picks a whole-second expiry instant at or BEFORE the requested duration that no durable row for this user already occupies, writes the chosen cap (whole USD, 1…5000) against it, and answers { expires_at, mint_expires_at, per_swap_cap_usd, recorded }. Call createDelegation with mint_expires_at EXACT","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Reserve the expiry a delegation is minted with, record the chosen per-swap cap against it, then confirm the mint","logicalName":"otto_delegation_cap","displayName":"Reserve the expiry a delegation is minted with, record the chosen per-swap cap against it, then confirm the mint","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_delegation_operations","description":"Read the durable Base delegated-operation journal for the end user resolved from { accessToken }. Optional artifactId selects one exact own-user operation; without it, the result includes a bounded recent terminal history and every unresolved operation regardless of age. The global unresolved flag is fail-closed: it is true when the store is unavailable, journal coverage is not rollout-ready, or any operation has a prepared/submitted/unknown outcome. Stored serialized transactions and CDP idempo","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Read one end user's delegated operation history and recovery state","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_delegation_operations","displayName":"Read one end user's delegated operation history and recovery state"},{"name":"otto_delegation_reconcile","description":"Acquire the artifact's permanent process-liveness guard, then check Base for finalized canonical receipts of already-stored transaction hashes. Every chain transaction must match the stored chain, hash, sender, target, calldata, value, nonce, gas and EIP-1559 fee fields before its receipt is recorded. This tool never calls CDP, never retries a request, never builds or submits a later step, and leaves prepared/unknown no-hash steps unresolved. It returns the same token-bound operation snapshot as","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Reconcile one end user's known-hash delegated operation","logicalName":"otto_delegation_reconcile","displayName":"Reconcile one end user's known-hash delegated operation","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_delegation_exit","description":"Move an authenticated CDP end user's own Base USDC only through a server-held durable reservation. prepare returns one exact EIP-1559 transaction for client-side signing; the client must never broadcast it. submit validates and durably records the signed bytes and computed hash before the server broadcasts. status is read-only and cross-device. reconcile proves a canonical receipt without broadcasting, or returns the exact finalized sender+nonce replacement proof when another transaction consume","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Prepare, submit, and recover an exact Base USDC exit","logicalName":"otto_delegation_exit","displayName":"Prepare, submit, and recover an exact Base USDC exit","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_lp_collect_userop","description":"Protected same-account Uniswap V3 guarded collection on Base. Read availability, prepare and explicitly confirm one operation, or read/reconcile it. May collect owed principal and fees; profit remains unknown. Account upgrade is separate. Current owner authority, reviewed guard and provider policy are required. Unknown delivery retains the original operation; no replacement is allowed. Preparation and simulation are not funded execution.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Review or recover sponsored LP collection","logicalName":"otto_lp_collect_userop","displayName":"Review or recover sponsored LP collection","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_muse_autopay_availability","description":"Manage same-wallet research autopay. Enrollment needs a CDP-authenticated pending reservation; capability is returned once. Secret-bearing input/output must not be logged.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":{}},"title":"Otto Muse research autopay availability","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_muse_autopay_availability","displayName":"Otto Muse research autopay availability"},{"name":"otto_muse_autopay_prepare","description":"Manage same-wallet research autopay. Enrollment needs a CDP-authenticated pending reservation; capability is returned once. Secret-bearing input/output must not be logged.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accessToken","wallet","expiresAt","perCallAtomic","totalAtomic","allowedTools"],"properties":{"wallet":{"type":"string"},"expiresAt":{"type":"string"},"accessToken":{"type":"string"},"totalAtomic":{"type":"string"},"allowedTools":{"type":"array","items":{"type":"string"}},"perCallAtomic":{"type":"string"}},"additionalProperties":{}},"title":"Otto Muse research autopay prepare","logicalName":"otto_muse_autopay_prepare","displayName":"Otto Muse research autopay prepare","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_muse_autopay_enroll","description":"Manage same-wallet research autopay. Enrollment needs a CDP-authenticated pending reservation; capability is returned once. Secret-bearing input/output must not be logged.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["accessToken","enrollmentId"],"properties":{"accessToken":{"type":"string"},"enrollmentId":{"type":"string"}},"additionalProperties":{}},"title":"Otto Muse research autopay enroll","logicalName":"otto_muse_autopay_enroll","displayName":"Otto Muse research autopay enroll","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_muse_autopay_sign","description":"Sign one exact allowlisted Base-USDC research payment under an existing bounded capability. Never sends it. Never retry an uncertain signing attempt with a new nonce.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["capability","operationId","tool","arguments","resource","amountAtomic","nonce","validAfter","validBefore"],"properties":{"tool":{"type":"string"},"nonce":{"type":"string"},"resource":{"type":"string"},"arguments":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"capability":{"type":"string"},"validAfter":{"type":"string"},"operationId":{"type":"string"},"validBefore":{"type":"string"},"amountAtomic":{"type":"string"}},"additionalProperties":{}},"title":"Otto Muse research autopay sign","logicalName":"otto_muse_autopay_sign","displayName":"Otto Muse research autopay sign","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_muse_autopay_status","description":"Manage same-wallet research autopay. Enrollment needs a CDP-authenticated pending reservation; capability is returned once. Secret-bearing input/output must not be logged.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"wallet":{"type":"string"},"sessionId":{"type":"string"},"capability":{"type":"string"},"accessToken":{"type":"string"},"operationId":{"type":"string"},"enrollmentId":{"type":"string"}},"additionalProperties":{}},"title":"Otto Muse research autopay status","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_muse_autopay_status","displayName":"Otto Muse research autopay status"},{"name":"otto_muse_autopay_revoke","description":"Manage same-wallet research autopay. Enrollment needs a CDP-authenticated pending reservation; capability is returned once. Secret-bearing input/output must not be logged.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"sessionId":{"type":"string"},"capability":{"type":"string"},"accessToken":{"type":"string"}},"additionalProperties":{}},"title":"Otto Muse research autopay revoke","logicalName":"otto_muse_autopay_revoke","displayName":"Otto Muse research autopay revoke","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"otto_catalog","description":"Return the full live otto x402 menu with endpoint paths, descriptions, prices, and Base-USDC payment instructions. Always free; does not consume the free intelligence call.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":false},"title":"otto x402 catalog","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_catalog","displayName":"otto x402 catalog"},{"name":"otto_x_recipes","description":"Return Otto X's live X Layer recipe menu — each recipe's path, price, and the X Layer (eip155:196) payment requirement decoded from its unpaid 402 challenge: token asset, issuer name/version, payTo, and a copy-paste curl. Settles in USD₮0 / USD Coin / Global Dollar on X Layer via the PAYMENT-SIGNATURE header. Always free and read-only; never signs or pays and does not consume the free intelligence call.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{},"additionalProperties":false},"title":"otto x layer recipes","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"otto_x_recipes","displayName":"otto x layer recipes"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Otto-Intel&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3Aub3R0b2FpLnNlcnZpY2VzL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Otto-Intel%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.ottoai.services%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Otto-Intel%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.ottoai.services%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Otto+Intel&connectorUrl=https%3A%2F%2Fmcp.ottoai.services%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Otto-Intel\" --url \"https://mcp.ottoai.services/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ottoai-mcp-fb88e2530d","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ottoai-mcp-fb88e2530d/tools/{tool}","mcpServerUrl":"https://mcp.ottoai.services/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ottoai-mcp-fb88e2530d?live=1"}