Trade Router Mcp

ai.traderouter由 traderouter.ai 發布v1.0.13更新於 Oct 25, 2026

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

發布方自己的服務:370.ai — AI Gateway: 100+ Chat Models, Image & Speech Generation

已驗證STDIO僅桌面金融開發者工具

概覽

AI 產生的概覽

本機 MCP 伺服器,讓 AI 助理透過 TradeRouter 建立、簽署並送出 Solana 兌換,並下限價、追蹤、DCA、TWAP 與組合訂單。

可以做什麼
讀取錢包位址、代幣持倉、代幣市值與價格、交易卡片圖片,以及成交訂單紀錄。建立未簽署兌換交易、送出人工簽署的兌換,或一次呼叫完成建立、簽署與送出。下限價、追蹤、TWAP、限價轉 TWAP、追蹤轉 TWAP、限價轉追蹤及限價轉追蹤再轉 TWAP 訂單。列出進行中訂單、查詢指定訂單狀態、取消訂單、延長訂單到期時間。透過持續連線的 WebSocket 註冊錢包並查看連線狀態。
適用情境
當你希望助理用專用錢包在 Solana 上交易時使用:現貨兌換、限價與追蹤的買入或賣出、依排程執行的 TWAP 或 DCA 式下單,並可在同一段對話中查詢與取消訂單。
執行需求
透過 npx 在本機執行,需要 Node.js 18 或更新版本。需要在 TRADEROUTER_PRIVATE_KEY 提供 base58 格式的 Solana 錢包私鑰。選用設定包括 SOLANA_RPC_URL、TRADEROUTER_DRY_RUN、TRADEROUTER_SERVER_PUBKEY、TRADEROUTER_SERVER_PUBKEY_NEXT 以及兩個簽章驗證開關。需要能連線至 TradeRouter API 與 Solana RPC 端點的網路。
安裝前請注意
伺服器持有可動用真實資金的 Solana 私鑰;README 建議使用專用交易錢包,而非主要持倉錢包。寫入類工具會簽署並送出真實交易,兌換量收取固定 1% 費用。可將 TRADEROUTER_DRY_RUN 設為 true,在不呼叫 API 的情況下測試寫入工具。錢包位址與已簽署交易會送至 TradeRouter API 與 Jito 打包端點;私鑰據稱僅用於本機簽署。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Trade Router Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@traderouter/trade-router-mcp

A Model Context Protocol server for TradeRouter.ai — non-custodial Solana swap, limit, trailing, DCA, TWAP, and combo-order engine for AI agents.

[Security: non-custodial] [License: MIT] [npm] [Awesome MCP Servers] [Glama MCP Server] [MCP Registry]

Is this safe?

Yes, and here's exactly why. The private key is read once from TRADEROUTER_PRIVATE_KEY, used for local signing with @solana/web3.js + tweetnacl, and never transmitted, logged, or persisted. Only signed transactions leave your machine. Server messages 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 build_swap → MCP sends wallet address (public key) to api.traderouter.ai
  2. API returns an unsigned transaction
  3. MCP signs the tx locally using TRADEROUTER_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 crosses the network.

Requirements

  • Node.js ≥ 18
  • A Solana wallet private key in base58 format (use a dedicated trading wallet, not your main holdings)

Install

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

Or wire it into an MCP client (Claude Desktop, Cursor, Cline, etc.):

json
{  "mcpServers": {    "traderouter": {      "command": "npx",      "args": ["-y", "@traderouter/trade-router-mcp"],      "env": {        "TRADEROUTER_PRIVATE_KEY": "your_base58_private_key"      }    }  }}
OSClaude Desktop config path
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json

Environment variables

VariableRequiredDefaultPurpose
TRADEROUTER_PRIVATE_KEY✅—Solana wallet private key (base58). Local use only.
SOLANA_RPC_URL❌https://api.mainnet-beta.solana.comCustom RPC for reads
TRADEROUTER_SERVER_PUBKEY❌baked-in trust anchorOverride the server's Ed25519 trust anchor
TRADEROUTER_SERVER_PUBKEY_NEXT❌(unset)Accept messages signed by this key in addition to the primary (key rotation)
TRADEROUTER_REQUIRE_SERVER_SIGNATURE❌trueVerify server signatures on order_filled / twap_execution
TRADEROUTER_REQUIRE_ORDER_CREATED_SIGNATURE❌trueVerify server signatures on order_created
TRADEROUTER_DRY_RUN❌falseWhen true, every write-action tool (submit_signed_swap, auto_swap, place_*_order, cancel_order, extend_order) returns { dry_run: true, tool, args } instead of calling the API. Read-only tools execute normally. Added in 1.0.9.

Tools

ToolPurpose
get_wallet_addressGet the configured wallet's public address
build_swapBuild an unsigned swap transaction
submit_signed_swapSubmit a manually signed transaction
auto_swapBuild + sign + submit in one call
get_holdingsGet token holdings for a wallet
get_mcapMarket cap and price for a token
get_flex_cardTrade card PNG URL for wallet + token
place_limit_orderLimit buy/sell by price or market cap
place_trailing_orderTrailing stop buy/sell
place_twap_orderTWAP (time-weighted) buy/sell
place_limit_twap_orderLimit trigger → TWAP execution
place_trailing_twap_orderTrailing trigger → TWAP execution
place_limit_trailing_orderLimit trigger → trailing execution (single swap on trigger)
place_limit_trailing_twap_orderLimit trigger → trailing trigger → TWAP execution
list_ordersList active orders for a wallet
check_orderGet status of a specific order
cancel_orderCancel an active order
extend_orderExtend an order's expiry
connect_websocketRegister a wallet over the persistent WebSocket
connection_statusCurrent WebSocket connection state
get_fill_logLog of filled orders

REST endpoints (under the hood)

EndpointPurpose
POST /swapBuild unsigned swap (multi-DEX: Raydium, PumpSwap, Orca, Meteora)
POST /protectSubmit signed tx via Jito bundle — MEV-protected
POST /holdingsWallet scan — catches tokens standard RPC misses
GET /mcapMarket cap + price
GET /flexTrade card PNG generation
wss://api.traderouter.ai/wsPersistent WebSocket for limits / trailing / DCA / TWAP / combo orders

Trust anchor

The baked-in server public key is EXX3nRzfDUvbjZSmxFzHDdiSYeGVP1EGr77iziFZ4Jd4. Every order_filled, order_created, and twap_execution message from the server is verified with Ed25519 before being treated as authoritative. See SECURITY.md for details and the rotation mechanism (TRADEROUTER_SERVER_PUBKEY_NEXT).

Use with LangChain

Any MCP server works in LangChain via the official adapter:

python
from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient({    "traderouter": {        "command": "npx",        "args": ["-y", "@traderouter/trade-router-mcp"],        "transport": "stdio",        "env": {"TRADEROUTER_PRIVATE_KEY": "<base58>"},    },})tools = await client.get_tools()

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.

Machine-readable specs (live on traderouter.ai)

URLFormatPurpose
https://traderouter.ai/openapi.jsonOpenAPI 3.1 (JSON)Canonical API contract — generate SDKs in any language
https://traderouter.ai/openapi.yamlOpenAPI 3.1 (YAML)Same spec, YAML format (regenerated from the JSON)
https://traderouter.ai/llms.txttextLLM-readable API guide (per llmstxt.org)
https://traderouter.ai/SKILL.mdmarkdownAnthropic Agent Skills format — full implementation guide
https://traderouter.ai/SECURITY.mdmarkdownThreat model + data-flow diagram + permissions manifest (mirrors ./SECURITY.md here)
https://traderouter.ai/CHANGELOG.mdmarkdownUnified changelog across the API / MCP server / Site version tracks

Quick SDK generation:

bash
# TypeScriptopenapi-generator-cli generate -i https://traderouter.ai/openapi.yaml -g typescript-axios -o ./sdk-ts
# Pythonopenapi-generator-cli generate -i https://traderouter.ai/openapi.yaml -g python -o ./sdk-py

Security disclosure

Email [email protected] or use GitHub Security Advisories on this repo. 48-hour acknowledgement. See SECURITY.md (or the hosted version if you'd rather link to a stable URL).

License

MIT. See LICENSE.

Changelog

See CHANGELOG.md.

來源:README.md,提交 95d9ace

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.13最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Router 整合