Skip to main content
Glama

btc_broadcastTransaction

Destructive

Validate and broadcast an already-signed Bitcoin transaction. Disabled unless ALLOW_BITCOIN_BROADCAST=true; never signs or stores keys.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
confirmationYes
rawTransactionYes
expectedNetworkYes
maxFeeRateBtcPerKvBNo

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructive and non-read-only behavior, but the description adds unique context: the tool is disabled unless an environment variable is set, and it never signs or stores keys. These are valuable behavioral details not in annotations, though it doesn't cover return values or error cases.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences contain only essential details with no fluff. The key constraint (env var) and safety note (no key storage) are front-loaded, but the structure could be slightly improved by separating the prerequisite from the main function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's safety-critical nature (broadcasting real transactions) and the lack of output schema or parameter descriptions, the description is insufficient. It doesn't mention the confirmation requirement, network specificity, fee cap, or what the tool returns. The agent would need to infer too much from the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain any of the four parameters. It only hints that rawTransaction is the signed transaction, but doesn't clarify expectedNetwork, confirmation, or maxFeeRateBtcPerKvB. The description completely fails to compensate for the missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb (broadcast) and resource (Bitcoin transaction), and clarifies it handles already-signed transactions. Sibling tools like decode and estimate are clearly distinct, as is the EVM broadcast sibling. The purpose is unambiguous and easily distinguishable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the prerequisite (ALLOW_BITCOIN_BROADCAST=true) and the core use case, but doesn't explicitly state when to avoid this tool or mention alternatives like evm_broadcastTransaction. The context is clear but lacks explicit exclusions or comparisons.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count3/5

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.

Completeness5/5

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.