# get_clean_quote

Maps to POST /quote with excludePositions=true. Shortcut to get_swap_quote that prices the swap as if the caller's own LP position were not in the pool, for concentrated-liquidity positions in the active tick range. Use when an agent holds a significant position in the pool it is about to trade against (rebalancing, exit, treasury sizing) and needs a quote unaffected by its own liquidity. Returns the same router/callData/value execution fields as get_swap_quote, and likewise supports an optional affiliateCode (registered affiliate wallet address) forwarded to the API. EXECUTION FLOW: same as get_swap_quote — approve (wait for confirmation), fresh quote, then send tx to the router contract (requires private key or wallet signer). ⚠️ PRICE IMPACT: The response includes a priceImpact field. Agents MUST present this value to the user and request explicit confirmation before executing. ⚠️ ZERO OUTPUT: If the swap amount is too small relative to the token pair price ratio, the API returns HTTP 400 with "swap amount too small: output rounds to zero for this pair". Increase the amount or use a different pair.

Agent View of the PolicyLayer registry record for `get_clean_quote`. HTML page: https://policylayer.com/tools/defire-business-swapwizard-mcp/get-clean-quote

## Facts

- Tool: `get_clean_quote`
- Server: Swapwizard (`@swapwizard/mcp-server`) — https://policylayer.com/tools/defire-business-swapwizard-mcp.md
- Install: `npx -y @swapwizard/mcp-server`
- Homepage: https://github.com/DeFiRe-business/swapwizard-mcp
- Risk category: Financial (Critical risk)
- Registry record: grade D, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 9 (6 required)
- Recommended policy verdict: Approval-gated

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `side` | string | yes | Quote direction |
| `owner` | string | yes | Wallet address whose LP positions will be excluded from pool state during quoting |
| `amount` | string | yes | Amount as stringified uint256 in token decimals |
| `rpcUrl` | string | no | Custom RPC endpoint URL for position discovery. |
| `chainId` | integer | yes | EVM chain ID (e.g. 56 for BSC) |
| `tokenIn` | string | yes | Input token address (0x0000...0000 for native coin) |
| `tokenOut` | string | yes | Output token address |
| `slippageBps` | integer | no | Slippage tolerance in basis points (default: 100 = 1%) |
| `affiliateCode` | string | no | Optional affiliate wallet address registered on-chain with SwapWizard — forwarded to the API so the affiliate fee for this operation is paid to that address. Om |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_clean_quote",
    "arguments": {
      "side": "<side>",
      "owner": "<owner>",
      "amount": "<amount>",
      "chainId": 0,
      "tokenIn": "<tokenIn>",
      "tokenOut": "<tokenOut>"
    }
  }
}
```

## Why get_clean_quote is rated Critical

This tool generates executable swap quotes with callData/value fields on a DeFi platform. While it appears to be a quoting step, the description explicitly states it returns 'router/callData/value execution fields' identical to get_swap_quote, which is directly used for on-chain swap execution involving real financial assets across AMMs.

From the tool's own definition: "'swap', 'prices the swap', 'execution fields as get_swap_quote', 'router/callData/value execution fields', 'DeFi execution layer for AI agents - swap, zap in/out of LP, route across AMMs on 5 EVM chains'"

## Use case

AI agents use get_clean_quote to commit financial operations through Swapwizard, usually the final step of a payment, billing, or trading workflow. A call moves real money.

## Recommended policy (PolicyLayer)

Verdict: **Approval-gated**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Swapwizard:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "get_clean_quote": {
      "deny_if": [
        {
          "conditions": [],
          "on_deny": "Requires human approval."
        }
      ]
    }
  }
}
```

## Other tools on Swapwizard (10)

- `zap_into_lp_position` — Financial — https://policylayer.com/tools/defire-business-swapwizard-mcp/zap-into-lp-position.md
- `zap_out_of_lp_position` — Financial — https://policylayer.com/tools/defire-business-swapwizard-mcp/zap-out-of-lp-position.md
- `analyze_pool` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/analyze-pool.md
- `check_api_health` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/check-api-health.md
- `get_setup_guide` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/get-setup-guide.md
- `get_supported_chains` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/get-supported-chains.md
- `get_supported_dexes` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/get-supported-dexes.md
- `get_swap_quote` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/get-swap-quote.md
- `list_user_lp_positions` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/list-user-lp-positions.md
- `search_liquidity_pools` — Read — https://policylayer.com/tools/defire-business-swapwizard-mcp/search-liquidity-pools.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=defire-business-swapwizard-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/defire-business-swapwizard-mcp
