Skip to main content
Glama

Build Transaction

cardano_transaction_build
Idempotent

Construct a Cardano transaction body with inputs, outputs, change address, fees, TTL, certificates, withdrawals, metadata, collateral, required signers, and minting, then save it to a file.

Instructions

Build a transaction body. Supports inputs, outputs, change address, fees, TTL, certificates, withdrawals, metadata, collateral, required signers, and minting.

Args:

  • tx_ins (string[]): Transaction inputs in format "tx_hash#index"

  • tx_outs (string[]): Transaction outputs in format "address+amount" (amount in lovelace, or "address+amount+multi_asset")

  • change_address (string, optional): Address to send change to (required for auto-balancing)

  • fee (number, optional): Transaction fee in lovelace (if omitted, auto-calculated when change_address provided)

  • ttl (number, optional): Transaction time-to-live (slot number)

  • certificate_files (string[], optional): Paths to certificate files to include

  • withdrawals (string[], optional): Stake withdrawals in format "stake_address+amount"

  • metadata_json_file (string, optional): Path to metadata JSON file

  • tx_in_collateral (string[], optional): Collateral inputs in format "tx_hash#index"

  • required_signer_hashes (string[], optional): Required signer key hashes

  • mint (string[], optional): Minting operations in format "policy_id.asset_name+/-quantity"

  • out_file (string): Output path for the transaction body file

Returns: Confirmation with estimated fee (if auto-calculated).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
feeNoTransaction fee in lovelace
ttlNoTransaction time-to-live slot
mintNoMinting operations in format "policy_id.asset_name+/-quantity"
tx_insYesTransaction inputs in format "tx_hash#index"
tx_outsYesTransaction outputs in format "address+amount"
out_fileYesOutput path for the transaction body file
withdrawalsNoStake withdrawals in format "stake_address+amount"
change_addressNoAddress to send change to
tx_in_collateralNoCollateral inputs in format "tx_hash#index"
certificate_filesNoPaths to certificate files
metadata_json_fileNoPath to metadata JSON file
required_signer_hashesNoRequired signer key hashes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations declare it is a non-readonly, idempotent, non-destructive, closed-world operation, so safety is largely covered. The description still adds real behavioral context the annotations cannot: change_address is required for auto-balancing, fee is auto-calculated only when change_address is supplied, and the result is a written out_file.

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

Conciseness3/5

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

The opening sentence is well front-loaded, but the Arg list then restates the schema descriptions almost verbatim, adding bulk without new information. The return note is brief and useful, but the near-duplication of structured data dilutes conciseness.

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

Completeness4/5

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

With no output schema, the description fills the gap by stating that the tool returns confirmation plus an estimated fee, and it documents all 12 parameters including optionality. A brief note on the required siblings to run next would make it complete.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description goes beyond the schema in meaningful ways: the conditional dependency between change_address and fee auto-calculation, and the 'required for auto-balancing' constraint on an otherwise optional-looking parameter, are documented nowhere in the schema.

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

Purpose4/5

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

States a specific verb and resource ('Build a transaction body') and enumerates the features supported, so an agent can distinguish it from sibling tools like cardano_transaction_sign, _assemble, and _view. It does not explicitly name those siblings, so it stops short of a 5.

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?

Usage is only implied: it is clear this is the construction step preceding sign/assemble/submit, but the description never states when to use this tool vs. alternatives such as cardano_transaction_calculate_min_fee or cardano_transaction_view, nor does it state prerequisites or exclusions.

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

Deploy Server

Other Tools