TradeRouter MCP (Python)
mcp-name: io.github.re-bruce-wayne/trade-router-mcp
Non-custodial Solana trading API for AI agents. One integration replaces Jupiter + Helius + Jito + custom limit-order code. Your private key never leaves the local process — only signed transactions are transmitted to api.traderouter.ai.
See SECURITY.md for the full threat model and data-flow diagram.
Install
Run directly without installing (recommended):
{
"traderouter": {
"command": "uvx",
"args": ["traderouter-mcp"],
"env": {
"TRADEROUTER_PRIVATE_KEY": "<your-solana-base58-private-key>"
}
}
}
Or install into a project:
uv add traderouter-mcp
Environment variables
| Variable | Default | Purpose |
|---|---|---|
TRADEROUTER_PRIVATE_KEY |
required for signing | Solana base58-encoded private key. Used locally for signing, never transmitted. |
TRADEROUTER_SERVER_PUBKEY |
hardcoded trust anchor | Override the server public key used to verify order_filled events |
TRADEROUTER_BASE_URL |
https://api.traderouter.ai |
Override API base (e.g. for staging) |
Features
REST tools
swap— build an unsigned swap transaction (multi-DEX: Raydium, PumpSwap, Orca, Meteora)protect— submit signed tx via Jito bundle, returns confirmed balance changesholdings— most accurate wallet scan on Solanamcap— market cap + priceflex— generate trade-card PNG
WebSocket order types
place_limit— limit order by mcap or priceplace_trailing— trailing stop (percentage or absolute)place_dca— dollar-cost averagingplace_twap— time-weighted average priceplace_combo— limit + trailing + TWAP in one chaincheck_order,list_orders,cancel_order,extend_order
Server monitors mcap ~every 5 seconds. When an order triggers, you receive a signed-tx-ready payload; the MCP signs it locally (using TRADEROUTER_PRIVATE_KEY) and submits to /protect automatically.
Non-custodial by construction
See SECURITY.md for the complete threat model. TL;DR:
swaptool returns unsigned transaction- MCP signs locally with
TRADEROUTER_PRIVATE_KEY(held in local process memory) - Signed transaction sent to
api.traderouter.ai/protect - Server submits to Jito bundle, returns confirmed balance changes
- Private key never touches the network
Links
- Docs / API reference: https://traderouter.ai/
- OpenAPI spec: https://traderouter.ai/openapi.yaml
- llms.txt: https://traderouter.ai/llms.txt
- GitHub: https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router
- X/Twitter: @trade_router
License
MIT. See LICENSE.
Security disclosure
Email security@traderouter.ai or open a GitHub Security Advisory. See SECURITY.md for policy.
Metadata
Release files for traderouter-mcp 1.0.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| traderouter_mcp-1.0.13.tar.gz | 18.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| traderouter_mcp-1.0.13-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 34.4 kB
Release files / traderouter_mcp-1.0.13.tar.gz
| Download URL | traderouter_mcp-1.0.13.tar.gz |
|---|---|
| Size | 18.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c8877b4d67f7425ff737de8422931a061d1898020a741cc7a61544cdae27b688
|
|
BLAKE2b-256 checksum How to use checksums |
fef6bacd20b136a6307eb1b7a09c1dd4c224920b0b1c65c16d53f284c6b5be72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / traderouter_mcp-1.0.13-py3-none-any.whl
| Download URL | traderouter_mcp-1.0.13-py3-none-any.whl |
|---|---|
| Size | 15.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c88ed406baff7cf4260b06cdba923432d4fd79caf270e6546bd3c637274bf817
|
|
BLAKE2b-256 checksum How to use checksums |
3cf5b5d1ff19a2a220c7691384edd4c1dd980fc8579f7cf872da73e0c983b29b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|