Solana Swap API
Non-custodial swaps via Jupiter (Solana) and KyberSwap (EVM), cross-chain routing, Solana priority fees and Hyperliquid perps, as unsigned transactions.
Install
The installation steps are in the documentation below. Documentation
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
SwapTitan Swap API — free, non-custodial, no API key
Swap on Solana and 7 EVM chains with one free REST API. Every endpoint returns an unsigned transaction — you sign with your own wallet. The server never holds funds, never sees keys. No registration, no API key, no KYC.
Base URL: https://swaptitan.net
Run as MCP server (stdio)
A self-contained MCP server — no dependencies, Node >= 18:
node mcp-server.js
18 tools (prices, quotes, Solana + EVM swaps, routing, priority fees, Hyperliquid, rug checks). The protocol layer runs locally; tool calls hit the free public API. Hosted alternative: https://swaptitan.net/mcp (streamable HTTP, no auth).
Solana swap (Jupiter aggregator)
# Quote
curl "https://swaptitan.net/v1/sol/quote?from=sol&to=usdc&amount=0.1"
# Build unsigned swap transaction for YOUR wallet
curl -X POST https://swaptitan.net/v1/sol/swap \
-H "Content-Type: application/json" \
-d '{"from":"sol","to":"usdc","amount":0.1,"userPublicKey":"<YOUR_WALLET>"}'
Response contains swapTransaction (base64, unsigned) — deserialize, sign, send to any RPC:
import { VersionedTransaction, Connection } from '@solana/web3.js';
const { swapTransaction } = await (await fetch('https://swaptitan.net/v1/sol/swap', {
method: 'POST', headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ from: 'sol', to: 'usdc', amount: 0.1, userPublicKey: wallet.publicKey.toString() })
})).json();
const tx = VersionedTransaction.deserialize(Buffer.from(swapTransaction, 'base64'));
tx.sign([wallet]);
await new Connection('https://api.mainnet-beta.solana.com').sendRawTransaction(tx.serialize());
from/to:sol,usdc,usdtor any base58 mint (memecoins, pump.fun tokens — anything Jupiter routes)amount(human units for sol/usdc/usdt) oramountRaw(base units, any mint)slippageBps: 1–1000, default 50- Pricing: free API — 0.3% routing fee + small flat network service fee inside the transaction (disclosed in the response as
feeBpsandserviceFeeLamports)
EVM swap — Ethereum, Base, BSC, Arbitrum, Polygon, Optimism, Avalanche (KyberSwap aggregator)
# Quote
curl "https://swaptitan.net/v1/evm/base/quote?tokenIn=native&tokenOut=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913&amount=0.1"
# Build unsigned calldata
curl -X POST https://swaptitan.net/v1/evm/base/swap \
-H "Content-Type: application/json" \
-d '{"tokenIn":"native","tokenOut":"0x8335...2913","amount":0.1,"account":"<YOUR_0x_WALLET>"}'
Response: tx: { to, data, value } — sign and broadcast with your own wallet (ethers/viem/web3.js). ERC-20 input requires prior approval to tx.to. Pricing: free API, 0.3% routing fee in calldata.
Universal cross-chain router
One call compares all rails (cross-chain exchange bridge, direct H2H liquidity, Solana DEX) and returns the best route with ready-to-execute parameters — including hard pairs like eth -> xmr:
curl "https://swaptitan.net/v1/route?from=eth&to=xmr&amount=0.5"
Solana priority-fee oracle
Live compute-unit price tiers, refreshed continuously — call before sending any Solana transaction:
curl "https://swaptitan.net/v1/sol/priority-fee"
# -> { "recommended": { "low": ..., "medium": ..., "high": ..., "turbo": ... }, "computeUnitsHint": {...} }
Connect
Remote endpoint (no auth, free tier): https://swaptitan.net/mcp — JSON-RPC 2.0, streamable HTTP, 18 tools.
- Claude (web & desktop): Settings → Connectors → Add custom connector → paste
https://swaptitan.net/mcp→ Connect. - Claude Desktop / Cursor / VS Code / Cline: add to your MCP config:
{ "mcpServers": { "swaptitan": { "url": "https://swaptitan.net/mcp" } } } - Local stdio (no hosted dependency):
node mcp-server.js(see above). - Any SDK / agent: call
tools/listthentools/call. Tools:sol_swap,evm_swap,smart_route,sol_priority_fee,swap_create,swap_status,get_prices,rug_checkand more.
Discovery: /llms.txt · /.well-known/agent-skills/index.json · /.well-known/mcp/server-card.json
More
- 1288+ asset cross-chain swaps:
GET /v1/swap/quote?from=btc&to=eth&amount=1 - Live prices:
GET /v1/prices - XMR/Monero no-KYC swaps:
GET /v1/xmr/quote?from=sol&amount=1&to=xmr - Docs: https://swaptitan.net/developers
Rate limits & fair use
Public endpoints are rate-limited per IP (20–60/min depending on endpoint). Fees are always disclosed in the API response. All transactions are non-custodial: nothing executes until you sign.
Frequently asked questions
What is Solana Swap API?
Non-custodial swaps via Jupiter (Solana) and KyberSwap (EVM), cross-chain routing, Solana priority fees and Hyperliquid perps, as unsigned transactions.
How do I install Solana Swap API?
Follow the installation steps in its documentation, shown on this page and in its repository.
Is Solana Swap API open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains Solana Swap API?
It is published by polsolbridge. AI.tn lists it but does not maintain or endorse it.
From the community awesome-mcp-servers lists and the project's GitHub repository. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.