Skip to main content
Glama

Highwire

Build a trade (unsigned)

build_trade

Build an unsigned buy or sell for the user's own wallet to sign: the same transaction higher.fun's site builds. Quote first with quote_trade and show the user the quote. Set confirm_trade to true only after the user has approved this exact trade (coin, side, amount, slippage). The transaction is checked instruction by instruction, simulated, and returned as base64 with a plain-language summary and a sign_url for the user to review and sign in their own wallet. Highwire never signs and never needs a private key.

Input Schema

NameRequiredDescriptionDefault
solNoFor a buy: SOL to spend.
mintYesThe coin's mint address (base58). higher.fun mints usually end in 'high'.
sideYesbuy spends SOL for tokens; sell spends tokens for SOL.
tokensNoFor a sell: whole tokens to sell (supply is 1B).
walletYesThe wallet that will sign and pay (public key only).
max_solYesCap: a buy may spend at most this much SOL; a sell may return at most this much. At most 10.
confirm_tradeYesSet to true only after the user approved this exact trade.
max_slippage_bpsYesSlippage tolerance in bps, at most 1500 (15%).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only say this is a non-read-only, non-idempotent, open-world call; the description goes far beyond by disclosing the pipeline (checked instruction by instruction, simulated), the return shape (base64 tx, plain-language summary, sign_url), and the custody model ('Highwire never signs and never needs a private key'). That last point is exactly the reassurance an agent needs before asking a user to sign. No conflict with destructiveHint=false, since signing happens in the user's own wallet.

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?

Four tight sentences with the highest-value information (what it builds, quote-first requirement, what comes back) front-loaded. Slightly dense and the custody sentence, while useful, is the most compressible clause.

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 correctly describes the return payload and the safety model for an 8-parameter mutation-adjacent tool. It stops short of covering failure behavior (what happens if the simulation or instruction check fails) or how long a built transaction remains valid, which would matter for retries.

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; the description earns a bump by clarifying that confirm_trade must follow approval of the specific coin/side/amount/slippage tuple, which is a stricter reading than the schema's 'exact trade.' The buy/sell conditional use of sol vs tokens is left entirely to the schema.

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?

States a specific verb and resource ('Build an unsigned buy or sell') plus scope ('for the user's own wallet to sign') and an equivalence anchor ('the same transaction higher.fun's site builds'). It also implicitly distinguishes itself from the sibling quote_trade, which is named for the opposite step.

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

Usage Guidelines5/5

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

Gives explicit sequencing and an alternative: 'Quote first with quote_trade and show the user the quote,' then gates invocation on user approval of 'this exact trade (coin, side, amount, slippage).' A when-not condition is implied by the confirm_trade gate, leaving nothing critical to inference.

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.