When a single wallet handles everything — research payments, trading, and merchant settlements — you lose visibility into what’s spending what, and a bug in one function can drain funds meant for another. The solution: assign a separate wallet to each role. Each wallet is its own District Pass account, running in its own agent instance. One user orchestrates them all, but each wallet is isolated on-chain.Documentation Index
Fetch the complete documentation index at: https://developers.fd.xyz/llms.txt
Use this file to discover all available pages before exploring further.
Why Separate Wallets?
- Blast radius containment — a misbehaving role can only burn its own wallet, not others
- Clear audit trail — every transaction is attributed to a specific wallet address and role
- Per-role budgets — fund each wallet according to its purpose and risk
- Independent control — pause, drain, or shut down one wallet without touching the rest
Architecture Patterns
By Role
Different wallets for different purposes. Each wallet is funded and monitored independently.By Responsibility
One workflow, multiple wallets scoped by what each part of the workflow needs to do.By Scale
Many identical instances doing the same task in parallel, each with its own wallet.Setting Up Multiple Wallets
Each wallet requires its own District Pass account. A single CLI or MCP session authenticates one account at a time, so each wallet runs in a separate instance — a separate container, process, or machine.MCP Configuration
Every instance uses the same MCP server URL but authenticates with its own District Pass via OAuth PKCE:Budget Management
Apply the pocket money philosophy per wallet:| Wallet Role | Suggested Funding | Refill Strategy |
|---|---|---|
| Research / data buying | $10–50 | Per session |
| API access payment | $50–200 | Weekly |
| Active trading | $500–2,000 | Based on performance |
| Payment processing | Task-appropriate | Per batch |
Monitoring
Each wallet has its own on-chain address, making monitoring straightforward:- Per-wallet activity — look up each address on the relevant block explorer
- Balance tracking — check balances via MCP, CLI, or block explorer
- Spending patterns — review transaction history to verify each role is operating within expectations