Skip to main content
Glama
polsolbridge

polsolbridge/solana-swap-api

by polsolbridge

SwapTitan Swap API β€” free, non-custodial, no API key

solana-swap-api MCP server

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).

Related MCP server: maxia-mcp

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, usdt or any base58 mint (memecoins, pump.fun tokens β€” anything Jupiter routes)

  • amount (human units for sol/usdc/usdt) or amountRaw (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 feeBps and serviceFeeLamports)

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/list then tools/call. Tools: sol_swap, evm_swap, smart_route, sol_priority_fee, swap_create, swap_status, get_prices, rug_check and 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.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Non-custodial DeFi for AI agents: swaps, concentrated liquidity (V3/V4) zaps + ranges, 5 EVM chains

  • Native Solana staking for AI agents. 26 MCP tools, one-shot signing, webhooks.

  • No-KYC managed MCP for AI agents: sandboxed TypeScript trading SDK, isolated sub-accounts, futures.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/polsolbridge/solana-swap-api'

If you have feedback or need assistance with the MCP directory API, please join our Discord server