btc_getAddressBalance
Scan the Bitcoin UTXO set for an address and return its confirmed spendable outputs. This is not address history and shared RPC nodes may reject concurrent scans.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes |
Scan the Bitcoin UTXO set for an address and return its confirmed spendable outputs. This is not address history and shared RPC nodes may reject concurrent scans.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive. The description adds meaningful behavioral context: it iterates over the UTXO set, only returns confirmed spendable outputs, and may fail on shared RPC nodes under concurrency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action and resource, followed by a useful limitation. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter read-only tool with strong annotations, the description covers purpose, scope, and failure modes. It does not explicitly describe the return format, but the tool name and 'confirmed spendable outputs' imply a balance-like result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'address' is described only as an address in the Bitcoin UTXO context, which adds some meaning beyond the generic schema pattern. However, it does not clarify accepted address formats (e.g., bech32, base58), leaving some ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Scan the Bitcoin UTXO set') and the target resource (an address), returning confirmed spendable outputs. It also explicitly distinguishes itself from address history, avoiding confusion with related tools like btc_getTransaction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides practical guidance by noting this is not address history and warns that shared RPC nodes may reject concurrent scans. While it does not explicitly name alternative tools, these caveats help the agent decide when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool is clearly scoped to a specific chain (btc_ vs evm_) and action (broadcast, decode, estimate, get, call, read). There is no overlap or ambiguity between tools, and even similar-sounding operations like evm_call, evm_readContract, and evm_estimateTransaction are distinct in their purpose and input requirements.
All tools follow a consistent snake_case pattern with chain prefix (btc_ or evm_) followed by a descriptive verb and noun (e.g., btc_getBlock, evm_getLogs). The naming is uniform across both chains, making it predictable and easy to navigate.
At 18 tools, the server sits in the 16-25 range which is considered heavy per the rubric. While the count is justifiable given the dual-chain scope, it could be trimmed or grouped further. It doesn't feel overwhelming, but it's above the typical well-scoped range.
The server covers the essential read and write operations for both Bitcoin and EVM chains, including balances, blocks, transactions, gas estimation, contract reads, and transaction broadcasting. No critical gaps are apparent for a chain RPC server, and all common workflows are supported.