Skip to main content
Glama

Borro

Prepare: write a call or a put

write_option
Read-onlyIdempotent

Unsigned transactions to write options from the wallet: post an ask at a premium (the collateral is locked now; it fills when a buyer takes it), or with order_id sell into that bid now and receive its premium less Borro's share. A call locks one share of the stock's Borro vault per share written: from the stock (lent into its vault in the same transaction, the default) or from vault shares held (bNVDA). A put locks the strike in USDG in the Steakhouse vault: from USDG (the default) or that vault's shares held. Exact approval of the lock, then the call; simulated from the wallet.

Input Schema

NameRequiredDescriptionDefault
fromNoWhere the lock comes from: a call stock (default) or shares; a put usdg (default) or shares
typeNocall or put
expiryNothis (the nearest Friday still taking orders, the default), next, or a Friday's date like 2026-10-16
sharesYesShares to write (at least 0.001), in whole units as a decimal string, like "1.5"
strikeNoThe strike in dollars, on the $0.25 tick, like "250"
symbolYesA stock on Borro by its ticker, like NVDA or AAPL (markets lists every one)
walletYesThe wallet's address (0x...); the transactions are built for it to sign
premiumNoPremium you ask, USDG a share (for an ask), in whole units as a decimal string, like "1.5"
order_idNoSell into this bid instead of posting an ask (its series, its premium)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations only declare readOnly/idempotent/non-destructive, so the description adds real substance: collateral is locked at write time for an ask and fills only when a buyer takes it, an ask's premium is reduced by Borro's share, one share of stock vault collateral is locked per call share, and the flow does an exact approval then simulates from the wallet. It stops short of covering failure modes or the signing sequence after simulation.

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?

Front-loaded: the first clause says it produces unsigned transactions and the two routing modes come before the collateral mechanics. It is dense and parenthesis-heavy, but every clause carries a distinct fact (lock source, collateral vault, approval/simulation) rather than filler.

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?

For a 9-parameter, no-output-schema prepare tool it covers a lot: what gets locked, from where, the ask-vs-bid branch, and the approval/simulation step. Remaining gap is that it never says what is returned (unsigned transaction objects to sign) nor which parameters pair with which mode (premium vs order_id exclusivity).

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?

Schema coverage is 100%, so parameters are already documented (including the `from` default per option type and order_id replacing premium). The description restates the same choices at a higher level but adds no syntax or constraint detail beyond the schema, so the baseline of 3 applies.

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 names a specific verb and object: it returns unsigned transactions (prepared, not executed) for writing calls or puts, and it spells out the two ways to do it — post an ask at a premium or, with order_id, sell into an existing bid. That 'prepare' framing separates it from execution-oriented siblings like buy_option or settle_series without ambiguity.

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?

It gives clear decision context: omit order_id and supply a premium to post an ask; pass order_id to hit that bid immediately at its premium. It also states the defaults for the `from` source per option type. What it lacks is explicit exclusion language or prerequisites (e.g. required balance/position before writing).

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