list_user_lp_positions
Maps to GET /positions. Reads all LP positions a wallet holds on a given chain by calling the SwapWizard API, which discovers positions across all supported protocols: Uniswap V2/V3/V4, Aerodrome, Thena, SushiSwap, PancakeSwap, Algebra, Balancer, Curve, and all Solidly forks. Each position includ...
This record as markdown: /tools/defire-business-swapwizard-mcp/list-user-lp-positions.md
What list_user_lp_positions does on Swapwizard
AI agents call list_user_lp_positions to retrieve information from Swapwizard without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
| Parameter | Type | Required | Description |
|---|---|---|---|
owner | string | Yes | Wallet address to query positions for |
rpcUrl | string | — | Custom RPC endpoint URL. If the URL is from Alchemy, the API auto-extracts the key for accelerated NFT-based position discovery. |
chainId | integer | Yes | EVM chain ID |
Parameters from the server's own tool schema.
Why list_user_lp_positions is rated Low
This tool performs read-only queries of blockchain state. It retrieves and aggregates LP position data across multiple DeFi protocols without modifying or executing any transactions. While the server context involves DeFi operations, this specific tool only exposes data retrieval. The 'momentumSignal' metadata is advisory information only, not an execution trigger.
From the tool's definition Tool name is 'list_user_lp_positions' and description states it 'Maps to GET /positions. Reads all LP positions a wallet holds on a given chain'.
Attacks that exploit this kind of access
The rule that runs list_user_lp_positions safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Swapwizard, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For list_user_lp_positions, this is the rule to start with:
list_user_lp_positions is read-only, so it stays allowed. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Swapwizard, apply this rule, and every list_user_lp_positions call is checked against it from then on.
Questions about list_user_lp_positions
Maps to GET /positions. Reads all LP positions a wallet holds on a given chain by calling the SwapWizard API, which discovers positions across all supported protocols: Uniswap V2/V3/V4, Aerodrome, Thena, SushiSwap, PancakeSwap, Algebra, Balancer, Curve, and all Solidly forks. Each position includes positionId, nftManager, dexName, liquidityKind, token addresses, amounts, fees, in-range status, APR, and USD values. EXIT SIGNAL: each position also carries momentumSignal for its pool — "exit" means the pool's volume is dying or LPs are leaving (consider zapping out), "watch"/"entry" mean momentum is still alive. When momentumSignal is ABSENT, the pool has dropped out of the momentum ranking (momentum exhausted) — also a reason to review and likely exit the position. momentumScore is the composite strength. Use this to drive exit decisions, mirroring the entry signal from search_liquidity_pools. The API uses Alchemy's NFT APIs for optimal position discovery — pass an Alchemy RPC URL via rpcUrl for fastest results. Without an Alchemy key, the API falls back to on-chain scanning which may be slower and newly created positions may take longer to appear. IMPORTANT: Always call this BEFORE zap_out_of_lp_position — pass the returned positionId, nftManager, dexName, and liquidityKind directly to zap_out_of_lp_position. It is categorised as a Read tool in the Swapwizard MCP Server, which means it retrieves data without modifying state.
list_user_lp_positions accepts 3 parameters: owner, rpcUrl, chainId. Required: owner, chainId. The full parameter table on this page comes from the server's own tool schema.
Register the Swapwizard MCP server in PolicyLayer and add a rule for list_user_lp_positions: 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 Swapwizard. Nothing to install.
list_user_lp_positions is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the list_user_lp_positions 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.
Set action: deny in the PolicyLayer policy for list_user_lp_positions. 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.
list_user_lp_positions is provided by the Swapwizard MCP server (@swapwizard/mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Swapwizard, and thousands of servers like it.
This server
Across the catalogue