Skip to main content
Glama

prepare_uniswap_v3_collect

DestructiveIdempotent

Harvest uncollected fees and tokens owed from a Uniswap V3 LP position by building an unsigned collect transaction. Requires wallet ownership of the tokenId; optionally send to a different recipient.

Instructions

Build an unsigned Uniswap V3 LP collect transaction — harvests every token the position is owed (decreased liquidity from prior prepare_uniswap_v3_decrease_liquidity calls + accrued swap fees) up to uint128.max per side. Hard-refuses when the tokenId is not owned by wallet. The protocol auto-settles uncollected fee growth into tokensOwed inside the call, so even a position with tokensOwed{0,1}=0 may receive tokens. recipient defaults to the wallet; pass an address to send the harvest elsewhere.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
walletYes
chainNoethereum
tokenIdYesERC-721 tokenId of the LP NFT to harvest fees + tokensOwed from. Must be owned by `wallet`.
recipientNoAddress to receive the harvested tokens. Default: wallet (the position owner).
Behavior4/5

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

The description adds useful behavioral details beyond annotations: it hard-refuses when tokenId not owned, explains that the protocol auto-settles fee growth into tokensOwed, and notes that the tool builds an unsigned transaction (non-destructive). However, there is a potential contradiction with the destructiveHint annotation.

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?

The description is a single, well-structured paragraph with about five sentences. It is front-loaded with the main action, uses clear language, and every sentence adds necessary information without redundancy.

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?

The description lacks details about the output format of the unsigned transaction (e.g., hex bytes, structure). Given no output schema, the agent would need to know what to expect. It also does not cover prerequisites like needing a previous decrease liquidity call, though it mentions the source of owed tokens.

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?

The description adds value beyond the input schema by explaining the default for recipient and implying wallet as owner. Schema coverage is 50%, so the description partly compensates. It does not explain chain or wallet formats beyond 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?

The description explicitly states it builds an unsigned Uniswap V3 LP collect transaction to harvest owed tokens and fees. It specifies the scope (every token, up to uint128.max) and distinguishes from sibling tools like prepare_uniswap_v3_burn and prepare_uniswap_v3_decrease_liquidity by its focus on collection.

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?

The description implies when to use this tool: after decreasing liquidity or when fees have accrued. It also specifies prerequisites (tokenId must be owned by wallet) and explains the default and override for recipient. Clear context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/szhygulin/recon-crypto-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server