Skip to main content
Glama

Odyssey Loopr

Build borrow

build_borrow
Read-only

Build the steps that borrow more against a position. Returns UNSIGNED transaction steps for the owner to sign in order; this server never holds keys or sends transactions. The build expires after 180 seconds (expiresAt, unix ms): build immediately before signing, not as a plan for later. Builds are single-use: rebuilding an open predicts a different position address, so never replay one. A successful build does not guarantee a successful transaction: pass steps to simulate and check ok before asking anyone to sign.

Input Schema

NameRequiredDescriptionDefault
ownerYesEOA that owns the position and signs the steps. The smart account is derived from it server-side.
chainIdYesEVM chain id
marketIdNo
strategyIdYesStrategy id from list_strategies (`strategyId`)
borrowAmountYes
positionAddressYesPosition (vault) address

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations only say readOnlyHint=true and idempotentHint=false; the description goes well beyond them by explaining the 180-second expiry with the `expiresAt` field, single-use semantics and why rebuilding changes the predicted position address, and the caveat that a successful build does not guarantee a successful transaction. The 'server never holds keys or sends transactions' line is consistent with readOnlyHint and reinforces rather than repeats it.

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

Conciseness5/5

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

Four tight sentences, front-loaded with what is returned and who signs, then the expiry, single-use, and simulate caveats in order of operational risk. No filler or restatement of the name.

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?

Covers the things that would cause real failures: expiry, non-replayability, unsigned output, and the simulate gate, and with no output schema it still explains the return shape (`steps`, `expiresAt`). The gap is the borrowAmount value format and the role of optional marketId, which an agent must read from a thin or absent schema description.

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

Parameters3/5

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

At 67% schema description coverage the schema already documents owner, chainId, strategyId, and positionAddress, so a baseline 3 is appropriate. The description adds nothing about the undocumented parameters (borrowAmount units/decimals, marketId optionality) and its mentions of `steps`, `expiresAt`, and `ok` are output fields, not input semantics.

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 the steps that borrow more against a position', and clarifies the output is UNSIGNED transaction steps. This separates it from build_open/build_repay/build_close by scope, but it never names the closest sibling (quote_borrow) or explains build-vs-quote, so an agent must infer that distinction from sibling names alone.

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

Usage Guidelines4/5

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

Gives concrete timing guidance ('build immediately before signing, not as a plan for later'), a hard constraint ('never replay one'), and a required follow-up workflow ('pass `steps` to `simulate` and check `ok`'). It stops short of explicitly routing to quote_borrow when the user only wants a preview, which is the one obvious alternative an agent would weigh.

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.

Resources