prepare_uniswap_v3_mint

Build an unsigned Uniswap V3 LP mint transaction — opens a new concentrated-liquidity position on the (tokenA, tokenB, feeTier) pool, bounded by [tickLower, tickUpper]. Up to two ERC-20 approvals are chained ahead of the mint() call (one per nonzero deposit side); USDT-style reset is handled auto...

Server VaultPilot MCP vaultpilot-mcp
Category Destructive
Risk class Critical
Parameters 127 required

What prepare_uniswap_v3_mint does on VaultPilot MCP

AI agents call prepare_uniswap_v3_mint to permanently remove resources in VaultPilot MCP — typically in cleanup and lifecycle workflows. It does its job in a single call, and there is no undo.

ParameterTypeRequiredDescription
chain string
tokenA string Yes First token in the LP pair. Pass either order; the builder canonically sorts to (token0, token1) before submission. Native ETH is NOT supported in v1 — wrap to
tokenB string Yes Second token in the LP pair. Must differ from tokenA.
wallet string Yes
feeTier number Yes Pool fee in hundredths of a bip: 100 = 0.01%, 500 = 0.05%, 3000 = 0.3%, 10000 = 1%. Each fee tier is a separate pool; pick the one that matches the pair's volat
recipient string Address to receive the minted LP NFT. Default: wallet (the depositor).
tickLower integer Yes Lower tick of the position's price range. MUST align to the fee tier's tickSpacing (100→1, 500→10, 3000→60, 10000→200) — mis-aligned ticks are rejected. Use Uni
tickUpper integer Yes Upper tick. Must be > tickLower and aligned to tickSpacing.
approvalCap string Cap on the ERC-20 approval preceding this action. Omit for "unlimited" (standard DeFi UX — fewer follow-up approvals). Pass "exact" to approve only what this ac
deadlineSec integer Seconds from now until the on-chain `deadline` parameter expires. Default 1200 (20 min).
slippageBps integer Slippage tolerance in basis points (1 bp = 0.01%). Default 50 bps (0.5%). Hard ceiling 500 bps; soft cap 100 bps requires acknowledgeHighSlippage: true. Higher
amountADesired string Yes Human-readable decimal amount of tokenA to deposit. Example: "100.5" for 100.5 USDC. NOT raw wei. Pass "0" for a single-sided range deposit when the current pri

Parameters from the server's own tool schema.

Why prepare_uniswap_v3_mint needs a policy

An AI agent that decides to call prepare_uniswap_v3_mint doesn't hesitate, doesn't double-check, and doesn't stop at one. Whatever it removes from VaultPilot MCP is gone — there is no undo for destructive operations.

Risk signalsHigh parameter count (14 properties)

Questions about prepare_uniswap_v3_mint

What does the prepare_uniswap_v3_mint tool do? +

Build an unsigned Uniswap V3 LP mint transaction — opens a new concentrated-liquidity position on the (tokenA, tokenB, feeTier) pool, bounded by [tickLower, tickUpper]. Up to two ERC-20 approvals are chained ahead of the mint() call (one per nonzero deposit side); USDT-style reset is handled automatically. The pool must already exist (initialized) — refuses with a clear error otherwise. Tick bounds MUST align to the fee tier's tickSpacing (100→1, 500→10, 3000→60, 10000→200); mis-aligned ticks are rejected rather than silently rounded. v1 limitation: only WETH (not native ETH) is supported as a pair side; wrap ETH first via prepare_native_send to the WETH contract. Slippage defaults to 50 bps (0.5%); soft cap at 100 bps requires acknowledgeHighSlippage: true. After signing the mint, the resulting LP NFT appears in get_lp_positions for the recipient address. It is categorised as a Destructive tool in the VaultPilot MCP MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

What parameters does prepare_uniswap_v3_mint accept? +

prepare_uniswap_v3_mint accepts 12 parameters: chain, tokenA, tokenB, wallet, feeTier, recipient, tickLower, tickUpper, approvalCap, deadlineSec, slippageBps, amountADesired. Required: tokenA, tokenB, wallet, feeTier, tickLower, tickUpper, amountADesired. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on prepare_uniswap_v3_mint? +

Register the VaultPilot MCP server in PolicyLayer and add a rule for prepare_uniswap_v3_mint: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches VaultPilot MCP. Nothing to install.

What risk level is prepare_uniswap_v3_mint? +

prepare_uniswap_v3_mint is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit prepare_uniswap_v3_mint? +

Yes. Add a rate_limit block to the prepare_uniswap_v3_mint rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block prepare_uniswap_v3_mint completely? +

Set action: deny in the PolicyLayer policy for prepare_uniswap_v3_mint. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides prepare_uniswap_v3_mint? +

prepare_uniswap_v3_mint is provided by the VaultPilot MCP server (vaultpilot-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.