privy_get_wallet_by_address
Resolve an on-chain address to a Privy wallet. Hits `POST /v1/wallets/address` with `{ address, chain_type }`. Returns a single `PrivyWallet` on a hit, a 404 on a miss. The handler does the same ownership check as `privy_get_wallet`: a wallet whose `owner_id` is `null` or does not match the caller's DID returns a 403-style isError. Use this when you have an address and need to confirm the wallet exists in Putty and is owned by the caller; for the inverse direction (a wallet id and the address), use `privy_get_wallet`.
Resolve an on-chain address to a Privy wallet. Hits POST /v1/wallets/address with { address, chain_type }. Returns a single PrivyWallet on a hit, a 404 on a miss.
Endpoint
POST /v1/wallets/address
Input
The tool takes a single JSON object. Every field, its type, and an example are on the generated reference at GET /mcp/tools, under this tool's name.
Calling it
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": { "name": "privy_get_wallet_by_address", "arguments": {} }
}Put your arguments in place of the empty object. A call that fails comes back as a normal result carrying isError: true and a message naming what went wrong, not as a JSON-RPC protocol error.
Notes
The handler does the same ownership check as privy_get_wallet: a wallet whose owner_id is null or does not match the caller's DID returns a 403-style isError. Use this when you have an address and need to confirm the wallet exists in Putty and is owned by the caller; for the inverse direction (a wallet id and the address), use privy_get_wallet.
The full request and response shape, and a live playground, live on the generated reference at GET /mcp/tools.
privy_get_wallet
Get a single wallet by id. Hits `GET /v1/wallets/{wallet_id}`. The handler does an ownership check after the fetch: a wallet whose `owner_id` is `null` or does not match the caller's DID returns a 403-style isError so the agent cannot read other users' wallets. The Putty embedded wallets, which are user-owned, return the full `PrivyWallet` shape including the linked-account metadata (wallet_client, connector_type, ...).
privy_get_wallet_balance
Get the token balances for a wallet. Hits `GET /v1/wallets/{wallet_id}/balance`. The handler does the same ownership check as `privy_get_wallet`. Returns `PrivyWalletBalance[]` — the first entry is the native asset, the rest are ERC-20 / SPL tokens. Each balance is a string in the smallest unit (wei for EVM, lamports for Solana) plus the token's `decimals` and address. Use this to confirm the wallet has the funds a `privy_prepare_transaction` would spend before the user signs.