Peer Cash
Custody-separated MCP tools for preparing, tracking, and managing crypto-to-fiat orders.
Custody Boundary
The cash profile exposes the complete peer_cash_* tool family. It fetches live capabilities and protocol state and prepares ordered unsigned transaction plans. It never accepts a private key, signs, or broadcasts.
Start it with:
peer mcp --profile cashKeep PEER_CASH_* configuration in the host's secret or MCP configuration, never in prompts or tracked files.
Tool Families
| Purpose | Tools |
|---|---|
| Discover and estimate | peer_cash_capabilities, peer_cash_estimate, peer_cash_fill_stats |
| Fund from another chain | peer_cash_source_capabilities, peer_cash_quote_source, peer_cash_relay_status |
| Create an order | peer_cash_prepare, peer_cash_finalize |
| Resume and inspect | peer_cash_order, peer_cash_orders, peer_cash_buyer |
| Manage an order | peer_cash_prepare_access_policy, peer_cash_prepare_withdraw, peer_cash_prepare_top_up |
Call peer_cash_capabilities before naming a rail, fiat currency, token, or amount bound. The live service response owns availability.
Treat peer_cash_fill_stats as historical routing evidence, not a fill
guarantee. Call peer_cash_source_capabilities before quoting a cross-chain
source asset, and track any submitted Relay route by request ID before deciding
whether to retry.
Amounts and Rates
Base USDC amounts are decimal strings in 6-decimal base units. For example, 100 USDC is 100000000.
An estimate is not a locked quote. The binding Chainlink rate resolves when a buyer fills the deposit.
Mutation Discipline
peer_cash_prepare returns an ordered plan, not a completed transaction. Show the destination, value, calldata purpose, and expected effect for every step. Obtain approval for that exact plan, then let the host wallet submit it in order.
After the createDeposit transaction confirms, call peer_cash_finalize with its hash. Persist the returned depositId; it is the durable resume key.
For a full operational sequence, use the Peer Cash Order playbook.