Skip to main content
Glama

SoFinance

prepare_withdraw

Prepare a fully simulated position withdrawal with a sign link. Default receive USDC; original keeps position tokens. Supply percent (1–100) OR targetUSDC. Impact above 5% requires confirmHighImpact. For two transactions, finalize the first then call again with stage=swap, tx1Signature and previous (the complete first result).

Input Schema

NameRequiredDescriptionDefault
stageNo
walletYes
percentNo
receiveNo
previousNo
outputMintNo
targetUSDCNo
positionMintYes
tx1SignatureNo
confirmHighImpactNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare the safety profile (not read-only, open-world, not idempotent, non-destructive); the description adds real behavior beyond that: the operation is a simulation rather than a settlement, the default receive path is USDC while original keeps position tokens, there is a 5% impact threshold gated by confirmHighImpact, and the flow can require two calls. It still doesn't state what the returned "sign link" is or how long it remains valid.

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 with the core statement, then conditions and the multi-step flow in priority order, with no filler sentences. It is very dense, though, and compressed fragments like "original keeps position tokens" and "previous (the complete first result)" cost a little clarity in exchange for brevity.

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

Completeness3/5

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

For a 10-parameter tool with a nested `previous` object, an enum stage, an either/or oneOf constraint, and no output schema, the description explains the reasoning flow but not the mechanics: the return shape (sign link), which sibling finalizes it, and the semantics of wallet/positionMint/outputMint are all unstated. Adequate to start the flow, not complete enough to call it confidently in every mode.

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?

With 0% schema description coverage across 10 parameters, the description must carry the load, and it covers only part: percent's 1-100 range, targetUSDC as the alternative amount, confirmHighImpact's threshold trigger, stage=swap, tx1Signature, previous ("the complete first result"), and receive's default via the USDC/token-keeping wording. wallet, positionMint, and outputMint get no explanation at all, leaving a third of the surface undocumented in both schema and description.

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?

"Prepare a fully simulated position withdrawal with a sign link" gives a specific verb (prepare) plus resource (position withdrawal) and scope (simulated, returns a sign link). It implicitly contrasts with the submit_* siblings by saying "prepare," but never names the submit step that completes the flow, so the prepare/submit division is left partly to inference.

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?

Strong conditional guidance: pick percent (1-100) OR targetUSDC, impact above 5% requires confirmHighImpact, and the two-transaction case requires finalizing the first then re-calling with stage=swap, tx1Signature and previous. What's missing is the explicit hand-off rule to submit_withdraw after preparing, and any statement of when this tool should not be used.

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