What is pouch
The RWA trading wallet for AI agents on Robinhood Chain. Self-custodial, guardrailed, driven over MCP, 24/7.
pouch is the RWA trading wallet for AI agents. It gives your agent a small, separate, self-custodial wallet it can trade tokenized real-world assets from — official Robinhood stock tokens, 24/7, through Uniswap v4 — inside hard limits you set.
It ships as one npm package, pouch-rwa, containing two things:
- An MCP server — plug it into Claude, ChatGPT, Cursor, or any MCP-capable agent.
- A TypeScript SDK — build fully autonomous trading agents on the same guardrailed engine. See the SDK reference.
┌─────────────────┐ MCP ┌──────────────────────────────┐ txs ┌───────────────────┐
│ AI agent │ ─────────► │ pouch │ ───────► │ Robinhood Chain │
│ (Claude, ...) │ │ classify → guardrails → sign │ │ Uniswap v4 │
└─────────────────┘ └──────────────────────────────┘ └───────────────────┘Why it exists
Giving an agent your exchange API key or wallet seed gives it everything: keys are all-or-nothing. Prompt-level rules ("only trade $100") are suggestions the model can misread, forget, or be injected out of. And open chains are adversarial: full of tokens named after things they are not, including counterfeit versions of every major stock.
pouch answers with three design decisions:
- Isolation. The pouch is a fresh wallet funded with only what the agent may trade. Worst case is the pouch, nothing more.
- Policy before signatures. Every action is valued in USD and checked against your guardrails before anything is signed. A blocked trade costs nothing.
- Scam-aware classification. Every token is sorted into a trust tier using on-chain signals that cost money to fake, never its name.
What the agent can do
- Discover tokens: official tokenized stocks (AAPL, NVDA, TSLA, …) and other onchain assets
- Classify any address into a trust tier, with reasons
- Quote and swap against USDG or native ETH through Uniswap v4
- See the portfolio, its limits, and the full trade history
What the agent can never do
- See the private key (there is no MCP tool that returns it)
- Send funds out of the wallet, unless you opt in to
policy.transfers(off by default; capped and allowlistable when on) - Exceed the per-trade or daily USD limits you set
Ready? Start with the Quickstart.