Multi-aggregator swap router for AI agents on Base. 10 bps fee. MCP-native, non-custodial.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Open client and API spec for PaladinFi Swap β a competitive multi-aggregator swap router for AI agents on Base. This repository contains the public REST and MCP API specification, working code examples, and thin client wrappers. The hosted backend at swap.paladinfi.com is proprietary.
Routing scope. PaladinFi Swap queries integrated upstream aggregators (currently 0x and Velora) in parallel and returns whichever delivers the higher post-fee buy amount. We do not represent any returned route as the best available, lowest-cost, or optimal across the broader DeFi market. Phrases like "best execution" are reserved-meaning terms in U.S. securities law and are deliberately not used here.
A swap router built for AI agents that need to execute on-chain swaps. Your agent calls a single tool; the service returns ready-to-execute calldata your wallet signs and submits:
Agents skip writing aggregator glue, slippage handling, and fee logic. One call, ready bytes.
The Service is non-custodial: PaladinFi never holds, signs, or moves user funds. Every transaction is signed and submitted by the user's own wallet (or their agent acting on their behalf).
For Claude Code or any MCP-compatible client supporting Streamable-HTTP transport:
Restart your client. Three tools become available:
swap_quote(sellToken, buyToken, sellAmount, taker, chainId?, slippageBps?) β competitive route across 0x and Velora (highest post-fee buy amount); returns ready-to-execute calldata.trust_check_preview(address, chainId?) β sample-fixture preview of the trust gate. Returns _real: false, every factor is real: false, and the recommendation is prefixed sample- (e.g., sample-allow). Do not use the preview verdict to gate real swaps, signing, or any production agent decision. For production trust evaluation, POST to /v1/trust-check (paid, $0.001 USDC/call via x402) or use the npm plugins @paladinfi/eliza-plugin-trust / @paladinfi/agentkit-actions.swap_health() β liveness, fee config, per-source counters, decimals-cache state, last Velora startup-canary verdict, selector-enforcement state.See mcp-tools.json for the full tool schemas.
| Requirement | Status |
|---|---|
Tool title + annotations (readOnlyHint, openWorldHint, idempotentHint, destructiveHint) | β since v0.11.74; verify via the MCP tools/list method |
| Tool name β€64 chars | β longest is trust_check_preview (19 chars) |
| Streamable HTTP transport | β at https://swap.paladinfi.com/mcp |
| Public OpenAPI 3.0 schema | β at /openapi.yaml |
| Documented rate limits | β at paladinfi.com/swap (5 r/s + burst 30 on /v1/quote; 10 r/s + burst 30 on /mcp; 5 concurrent connections per IP) |
| x402 paid-tool challenge | β on the /v1/trust-check paid endpoint. The MCP trust_check_preview tool is gated to sample-fixture output with explicit misuse banners (_real: false, _HUMAN_DO_NOT_USE_AS_REAL_VERDICT, sample- recommendation prefix) β preview by design, never a real verdict |
| Tool descriptions narrow + accurate | β see mcp-tools.json for exact schemas |
| Browser-origin clients (CORS) | β since v0.11.75 on /v1/quote; allowlist is paladinfi.com + www.paladinfi.com only β other origins blocked at preflight |
| Free real-data on-ramp endpoint | β since v0.11.77 β POST /v1/trust-check/ofac runs the OFAC SDN wallet-screen leg only (anonymous, 1 r/s rate-limit + burst 3, daily Treasury XML refresh). Response includes _paid_endpoint_info upgrade hint to the full multi-source composition at /v1/trust-check. Wallet-OFAC scope (token-contract sanctions list planned for future versions). |
| MCP Registry listing | β this package is listed as io.github.paladinfi/paladin-swap. The Β§4.A-clean trust-check-only variant (no payment surface, no calldata, no transaction execution) ships separately as com.paladinfi/trust-check-mcp β Streamable HTTP at trust.paladinfi.com/mcp. Use the trust-check variant when payment-surface adjacency would be a deployment blocker. |
Per MCP ToolAnnotations:
swap_quote β title "Get Swap Quote"; readOnlyHint: true (returns calldata, never mutates server state), openWorldHint: true (calls upstream aggregators 0x AllowanceHolder + Velora Augustus v6.2 on Base)trust_check_preview β title "Token Trust Check (Preview)"; readOnlyHint: true, idempotentHint: true (deterministic sample fixture per address), openWorldHint: true (paid-mode upstream factor sources cross the process boundary; defensive contract-violation handlers exist for shape drift)swap_health β title "Swap Service Health"; readOnlyHint: true, openWorldHint: false (introspection of our own service state only)A representative call chain when an MCP-aware agent (e.g., Claude Code) handles a swap intent. Specific tool-call formatting varies by client; the key point is that the swap router returns ready-to-execute calldata so the agent never composes routing logic itself.
User: "Swap 100 USDC for WETH on Base."
1. Optional pre-trade trust check (free, sample-fixture only). Before composing the swap, the agent may call trust_check_preview to inspect the buy-token contract's risk shape.
The preview is sample-fixture only β agents must check _real === true before consuming a verdict. For production gating, call /v1/trust-check (paid, $0.001 USDC/call via x402) or use the npm plugins @paladinfi/eliza-plugin-trust / @paladinfi/agentkit-actions.
2. Competitive quote with calldata. The agent calls swap_quote to get the route + ready-to-execute transaction.
source indicates whichever upstream aggregator (0x or Velora) delivered the higher post-fee buy amount for this pair. The 10 bps fee is already injected into the calldata; the buyAmount you see is the user's net (post-fee, pre-slippage). minBuyAmount reflects the requested 50 bps slippage tolerance.
3. Sign + submit. The agent surfaces the transaction shape to the user's wallet for signing β to=router, data=calldata, value=0 (for ERC20 β ERC20). PaladinFi never sees the signature; the wallet broadcasts the transaction directly to Base.
4. Confirm. Slippage is enforced on-chain: the swap reverts if the actual fill would deliver less than minBuyAmount. The agent reports the transaction hash; the user's wallet shows the settled buy amount on Base. The 10 bps fee transfers to the published treasury address (/health) atomically as part of the same transaction β no second on-chain step.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/paladin-swap)<a href="https://allmcps.com/mcp/paladin-swap"><img src="https://allmcps.com/api/badge/paladin-swap?style=directory" alt="Paladin Swap on AllMCPs" /></a>