bitcoin_non_hd_wallet_balances
Fetch Bitcoin balance and price data for non-HD wallet addresses. Provides total balance, available funds, transaction count, and spot prices in multiple currencies.
Instructions
Fetch Bitcoin balance for a non-HD address. Response includes spot prices and other metadata. This tool provides detailed balance data for regular Bitcoin addresses. Required: walletAddress - The Bitcoin address to query. Optional: quoteCurrency - The currency for price conversion (USD, EUR, etc). Returns complete balance details including total balance, available balance, and transaction count.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| walletAddress | Yes | The Bitcoin address to get balance for. Must be a valid non-HD Bitcoin address. | |
| quoteCurrency | No | Currency to quote Bitcoin values in (e.g., 'USD', 'EUR'). If not specified, uses default quote currency. |
Implementation Reference
- src/services/BitcoinService.ts:125-169 (handler)The registration and handler implementation for the bitcoin_non_hd_wallet_balances MCP tool.
server.tool( "bitcoin_non_hd_wallet_balances", "Fetch Bitcoin balance for a non-HD address. Response includes spot prices and other metadata.\n" + "This tool provides detailed balance data for regular Bitcoin addresses.\n" + "Required: walletAddress - The Bitcoin address to query.\n" + "Optional: quoteCurrency - The currency for price conversion (USD, EUR, etc).\n" + "Returns complete balance details including total balance, available balance, and transaction count.", { walletAddress: z .string() .describe( "The Bitcoin address to get balance for. Must be a valid non-HD Bitcoin address." ), quoteCurrency: z .enum(Object.values(validQuoteValues) as [string, ...string[]]) .optional() .describe( "Currency to quote Bitcoin values in (e.g., 'USD', 'EUR'). If not specified, uses default quote currency." ), }, async (params) => { try { const response = await goldRushClient.BitcoinService.getBitcoinNonHdWalletBalances( params.walletAddress, { quoteCurrency: params.quoteCurrency as Quote, } ); return { content: [ { type: "text", text: stringifyWithBigInt(response.data), }, ], }; } catch (error) { return { content: [{ type: "text", text: `Error: ${error}` }], isError: true, }; } } );