Trade Router Mcp

io.github.re-bruce-waynePublished by GitHub account re-bruce-waynev1.0.6Updated Oct 24, 2026

Non-custodial Solana swap & limit order engine for AI agents.

The publisher's own server: 370.ai — AI Gateway: 100+ Chat Models, Image & Speech Generation

VerifiedSTDIODesktop onlyFinanceAI & ML

Overview

AI-generated overview

Non-custodial Solana trading MCP server that lets an assistant build swaps, place limit, trailing-stop, DCA, TWAP and combo orders, and check holdings and…

What you can do
  • Build unsigned multi-DEX swap transactions and submit signed ones through a MEV-protected bundle
  • Scan wallet holdings and look up token market cap and price
  • Create and monitor limit orders, trailing stops, DCA/TWAP and combo orders over a WebSocket
  • Generate trade card images and read the server trust-anchor public key
  • Sign transactions locally with the configured Solana key
When to use it
Use it when an assistant should trade Solana tokens or manage automated order strategies on the user's behalf, with the private key kept on the local machine. Read-only holdings and market-cap lookups are also possible without spending.
Requirements
Runs locally over stdio via npx or the PyPI package; needs a Solana base58 private key in TRADEROUTER_PRIVATE_KEY. Optional settings include TRADEROUTER_BASE_URL, TRADEROUTER_SERVER_PUBKEY and a custom Solana RPC URL. Network access to the trading API and Solana is required.
Before you install
The server holds a Solana private key in TRADEROUTER_PRIVATE_KEY, which controls real funds; anyone with it can move the wallet. Swaps spend money and carry a 1% fee on swap volume. The MCP server does not implement DRY_RUN or daily-loss caps, so add your own spending limits. Wallet address, token mint and amount are sent to the remote API, and overriding the trust-anchor key weakens signature verification.

Installation

In SourceWeft

  1. Open Trade Router Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Trade Router — ClawHub skill

Non-custodial Solana trading API for AI agents. One interface for swaps, MEV-protected execution, wallet holdings, limit orders, trailing stops, DCA, TWAP, and combo orders. The private key stays with the agent that calls the API.

[Security: non-custodial] [License: MIT]

Is this safe?

Yes, and here's exactly why. The private key never crosses the network to api.traderouter.ai. POST /swap returns an unsigned transaction; the agent signs it locally; only the signed transaction goes to POST /protect (Jito MEV-protected bundle). Server responses are Ed25519-verified against a hard-coded trust anchor. See SECURITY.md for the full threat model, data-flow diagram, and permissions manifest.

Signing flow:

  1. Agent calls the skill's swap action → HTTPS request to api.traderouter.ai sends the wallet address (public key), token mint, amount
  2. API returns an unsigned transaction
  3. Agent signs the tx locally with its private key
  4. The signed transaction is submitted to /protect (Jito MEV-protected bundle)
  5. Server confirms and returns balance changes. The private key never leaves the agent's machine.

Two ways to consume this skill

A. Direct API integration (what SKILL.md documents)

Read SKILL.md for the full API spec — REST endpoints, WebSocket order protocol, request/response shapes, error handling, and reference agent example code. Pair it with any HTTP client and Solana signing library.

The example code in SKILL.md uses these conventions (feel free to pick your own — they're the agent's choice, not imposed by the API):

Example env varExample defaultPurpose in the reference agent
PRIVATE_KEY(required)Solana base58 private key held by the agent process
DRY_RUNtrueSafe-by-default gate — swap actions only submit when you set DRY_RUN=false
MAX_DAILY_LOSS_LAMPORTS2_000_000_000 (2 SOL)Activates the reference agent's KILL_SWITCH when exceeded

These are the reference agent's own conventions. The API itself doesn't require any of them.

B. Ready-made MCP server (@traderouter/trade-router-mcp)

For Claude Desktop, Cursor, Cline, and any MCP-compatible client, a published MCP server wraps the same API:

bash
npx -y @traderouter/trade-router-mcp

Or wire it into your MCP client config:

json
{  "mcpServers": {    "traderouter": {      "command": "npx",      "args": ["-y", "@traderouter/trade-router-mcp"],      "env": {        "TRADEROUTER_PRIVATE_KEY": "your_base58_private_key"      }    }  }}

The MCP server's env conventions are different from the example code in SKILL.md — they're prefixed with TRADEROUTER_ for namespace hygiene in multi-MCP environments:

MCP env varRequiredPurpose
TRADEROUTER_PRIVATE_KEY✅Solana base58 private key (local use only)
SOLANA_RPC_URL❌Custom RPC (defaults to mainnet-beta)
TRADEROUTER_SERVER_PUBKEY❌Override the server Ed25519 trust anchor
TRADEROUTER_SERVER_PUBKEY_NEXT❌Accept an additional key during server rotation
TRADEROUTER_REQUIRE_SERVER_SIGNATURE❌Default true; fail-closed on order_filled verification
TRADEROUTER_REQUIRE_ORDER_CREATED_SIGNATURE❌Default true; fail-closed on order_created verification

The MCP server does not currently implement DRY_RUN or daily-loss caps — those live only in the reference agent example in SKILL.md. If you need them end-to-end, either use the reference agent pattern directly, or wrap the MCP tool calls with your own gate.

Full details, all 21 tools, and the LangChain adapter snippet are in the npm package README: https://www.npmjs.com/package/@traderouter/trade-router-mcp

Features

REST endpoints

EndpointPurpose
POST /swapBuild unsigned swap (multi-DEX: Raydium, PumpSwap, Orca, Meteora)
POST /protectSubmit signed tx via Jito bundle — MEV-protected, returns confirmed balance changes
POST /holdingsAccurate wallet scan — catches tokens standard RPC misses
GET /mcapMarket cap + price for any token
GET /flexTrade card PNG generation
GET /securityServer trust-anchor public key

WebSocket (wss://api.traderouter.ai/ws)

Persistent connection for server-side order monitoring:

  • Limit orders — trigger by market cap or price
  • Trailing stops — percentage or absolute
  • DCA / TWAP — time-weighted execution
  • Combo orders — limit+trailing, limit+TWAP, trailing+TWAP, limit+trailing+TWAP

Server polls market-cap ~every 5s. When an order triggers, you receive an unsigned tx → sign locally → submit.

Trust anchor

The baked-in server public key is EXX3nRzfDUvbjZSmxFzHDdiSYeGVP1EGr77iziFZ4Jd4. Every order_filled, order_created, and twap_execution message is Ed25519-verified against this key before being treated as authoritative. The server can rotate via TRADEROUTER_SERVER_PUBKEY_NEXT.

Fees

Flat 1% fee on swap volume, embedded in routing at /protect. No subscription, no API key, no monthly minimums. Read-only endpoints (/holdings, /mcap) are free.

Links

Security disclosure

Found a vulnerability? Email [email protected] or use GitHub Security Advisories on this repo. 48-hour acknowledgement. See SECURITY.md for the full policy.

License

MIT. See LICENSE.

Changelog

See CHANGELOG.md.

Source: trade-router/README.md at commit 0fe3373

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.6LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.

Other Router integrations