Skip to main content
Glama

Ekubo Protocol

Prepare expired ve-token withdrawal

prepare_ve33_withdraw
Read-only

Prepare fee-safe withdrawal of an expired ve-token stake, claiming the active pool first when voted and returning pending owner/stake validation. Ends the position: the stake leaves Ve33 and returns to the owner and the vote is cleared. Only an expired stake can be withdrawn — Ve33 reverts with StakeNotExpired at any earlier time, and there is no early exit or penalty path.

Input Schema

NameRequiredDescriptionDefault
ve_idYesdecimal integer
senderYesaddress
chain_idYesWith ve_token, from get_ve33_allocations (STONX: 4663), not the wallet's chain
ve_tokenYesaddress
current_pool_keyNoPoolKey {token0, token1, config} or {token0, token1, fee, tick_spacing, extension, stableswap_params?}, as read from the pool or vote

Output Schema

NameRequiredDescriptionDefault
execution_plan_referenceNoartifact_reference; pass unchanged

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the single readOnlyHint annotation, the description discloses the revert reason (StakeNotExpired), internal ordering ('claiming the active pool first when voted'), the state effect (stake returns to owner, vote cleared), and that the call returns pending owner/stake validation requiring follow-up. The only friction is that 'Ends the position' reads like execution while the tool merely prepares a transaction; the 'Prepare' verb resolves this, but the description never states that an unsigned transaction/signing step results.

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?

Three tight sentences, with the action and the expiry precondition front-loaded before the revert detail. The phrase 'returning pending owner/stake validation' is the one piece of compressed jargon that costs a beat of clarity.

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 5-parameter tool with a nested PoolKey object and a fully documented schema plus an output schema, the description covers the essentials: precondition, side effects, revert behavior, and ordering. What is missing is the prepare-then-sign workflow and how downstream validation results should be handled, which matters for a tool whose output the agent must act on.

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, and the description earns an increment by attaching the conditional 'when voted' to the pool-claim step, which explains when the optional current_pool_key argument actually matters. It adds no guidance on ve_id, sender, or chain_id, but the schema already documents those, including where chain_id comes from (get_ve33_allocations).

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 opens with a specific verb+resource ('Prepare fee-safe withdrawal of an expired ve-token stake') and adds the distinguishing scope ('expired'), which cleanly separates it from siblings like prepare_ve33_clear_vote, prepare_ve33_extend, and prepare_ve33_increase_stake. An agent can identify the operation and its boundary without opening any schema.

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 an explicit precondition ('Only an expired stake can be withdrawn — Ve33 reverts with StakeNotExpired at any earlier time') and rules out a wrong path ('there is no early exit or penalty path'), which is strong when-to-use/when-not guidance. It stops short of naming the sibling to use instead when the stake is not yet expired (e.g., extend or clear_vote), leaving the alternative implicit.

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.