Skip to content

Add Trade Router — non-custodial Solana swap MCP + skill#153

Open
re-bruce-wayne wants to merge 2 commits into
solana-foundation:mainfrom
re-bruce-wayne:add-traderouter
Open

Add Trade Router — non-custodial Solana swap MCP + skill#153
re-bruce-wayne wants to merge 2 commits into
solana-foundation:mainfrom
re-bruce-wayne:add-traderouter

Conversation

@re-bruce-wayne

Copy link
Copy Markdown

What

Adds two entries:

  1. DeFi (AI Coding Skills)trade-router-skill — points to the SKILL.md in openclaw-skills/trade-router/ (the same SKILL.md that's live on ClawHub).
  2. Developer Toolstrade-router-mcp — the npm-published MCP server @traderouter/trade-router-mcp wrapping the same API for use in Claude Desktop, Cursor, Cline, and any MCP-compatible client.

What's distinctive vs other DeFi entries already in this list

Most entries currently use a single DEX (Jupiter most often). Trade Router differentiates on:

  • Multi-DEX routing across Raydium, PumpSwap, Orca, Meteora (chosen per-token by liquidity)
  • 11 order types including 4 combo permutations (limit + trailing + TWAP)
  • Jito MEV-protected execution via /protect Jito bundles
  • Ed25519-verified server messages with a hardcoded trust anchor + a rotation slot (TRADEROUTER_SERVER_PUBKEY_NEXT)
  • TRADEROUTER_DRY_RUN env var lets agents drive the full flow with no live tx — every write tool short-circuits to { dry_run: true, ... }
  • Non-custodial: POST /swap returns an unsigned tx, the agent signs locally, only the signed bundle goes to /protect. The private key never crosses the network. Full threat model in SECURITY.md.

Verification

Both entries fit existing format conventions in their respective sections.

Two entries:

1. DeFi (AI Coding Skills): trade-router-skill — points to the SKILL.md
   in openclaw-skills/trade-router/ with the full API reference for
   non-custodial Solana swaps + limit/trailing/TWAP/combo orders.

2. Developer Tools: trade-router-mcp — the npm-published MCP server
   (@traderouter/trade-router-mcp) wrapping the same API for use in
   Claude Desktop, Cursor, Cline, and any MCP-compatible client.

The skill exists as a Claude Code / OpenClaw spec; the MCP server is
a ready-to-install runtime for the same API. Both are MIT licensed.

Notable properties:
- Multi-DEX routing across Raydium, PumpSwap, Orca, Meteora (vs the
  single-DEX/Jupiter-only entries already in this list)
- 11 order types including 4 combo permutations (limit+trailing+TWAP)
- Jito MEV-protected execution via /protect
- Ed25519-verified server messages with hardcoded trust anchor +
  rotation slot (TRADEROUTER_SERVER_PUBKEY_NEXT)
- TRADEROUTER_DRY_RUN env var for safe agent testing
- Non-custodial: private key never leaves the agent process

Sister listings: io.github.TradeRouter/trade-router-mcp + ai.traderouter/trade-router-mcp on the MCP Registry, glama.ai listing, awesome-mcp-servers PR #5345.

VirusTotal scan on v1.0.10 tarball: 0/62 detections.
CI green: github.com/TradeRouter/trade-router-mcp/actions
@greptile-apps

greptile-apps Bot commented Apr 25, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds two entries to the curated list: trade-router-skill in the DeFi section and trade-router-mcp in Developer Tools, both covering the Trade Router non-custodial Solana swap service.

  • The trade-router-skill link resolves to the PR author's personal GitHub fork (re-bruce-wayne/openclaw-skills) rather than a canonical org or stable upstream URL, making it fragile if the fork is removed or renamed.
  • Both entries are appended after an extra blank line at the end of their sections rather than inserted in alphabetical order, and neither has a blank line before the following section header, inconsistent with the rest of the file's formatting.

Confidence Score: 3/5

Mergeable after addressing the personal fork link; formatting issues are minor but the link durability concern should be resolved first.

One P1 finding (skill URL points to a personal GitHub fork rather than a stable canonical source, risking a broken link) plus two P2 style issues (missing blank lines before section headers, out-of-alphabetical-order placement) bring the score below 4.

README.md — specifically the trade-router-skill URL on line 51 and the formatting around both new entries.

Important Files Changed

Filename Overview
README.md Adds two entries (trade-router-skill and trade-router-mcp); skill entry links to a personal GitHub fork rather than a canonical org repo, and both entries are appended out of alphabetical order with missing blank lines before section headers.

Sequence Diagram

sequenceDiagram
    participant Agent as AI Agent
    participant MCP as trade-router-mcp
    participant API as Trade Router API
    participant DEX as DEX (Raydium/Orca/etc.)
    participant Jito as Jito Bundle

    Agent->>MCP: swap / limit / TWAP tool call
    MCP->>API: POST /quote (multi-DEX routing)
    API-->>MCP: best route + unsigned tx
    MCP-->>Agent: unsigned transaction
    Agent->>Agent: sign tx with local keypair
    Agent->>MCP: submit signed tx
    MCP->>API: POST /protect (Jito bundle)
    API->>Jito: MEV-protected bundle
    Jito->>DEX: execute swap
    DEX-->>Agent: confirmation
Loading

Reviews (1): Last reviewed commit: "Add Trade Router (skill + MCP server)" | Re-trigger Greptile

Comment thread README.md Outdated
- [pnp-markets-skill](https://github.com/pnp-protocol/solana-skill) - AI coding skill for PNP Protocol covering permissionless prediction markets on Solana with V2 AMM, P2P betting, custom oracle settlement, and social media-linked markets.
- [Sentients](https://github.com/koshmade/sentients.wtf) - AI agents minting unique inscriptions on Solana. First AI Agent-Native Protocol with autonomous wallets and deterministic art generated from blockchain entropy.

- [trade-router-skill](https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router) - AI coding skill for Trade Router covering non-custodial Solana swaps with multi-DEX routing across Raydium, PumpSwap, Orca, and Meteora, Jito MEV-protected execution via /protect, and limit/trailing/TWAP/combo orders over WebSocket. The agent signs locally; the API never holds keys.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Skill links to a personal GitHub fork

The trade-router-skill URL (github.com/re-bruce-wayne/openclaw-skills/…) points to the PR author's personal account rather than a canonical org repository. If the fork is renamed, deleted, or the branch changes, the link silently breaks. Every other DeFi skill in this section resolves to an organization or official repo (e.g., sendaifun/skills, jup-ag/agent-skills, pnp-protocol/solana-skill). The PR description mentions this skill is "live on ClawHub" — if there's a stable upstream URL (e.g., a ClawHub raw URL or a TradeRouter/ org repo), that would be a more durable canonical link.

Comment thread README.md Outdated
Comment on lines 51 to 52
- [trade-router-skill](https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router) - AI coding skill for Trade Router covering non-custodial Solana swaps with multi-DEX routing across Raydium, PumpSwap, Orca, and Meteora, Jito MEV-protected execution via /protect, and limit/trailing/TWAP/combo orders over WebSocket. The agent signs locally; the API never holds keys.
### Infrastructure

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing blank line before section header

There is no blank line between the new entry and ### Infrastructure, breaking the visual spacing that every other section transition uses in this file.

Suggested change
- [trade-router-skill](https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router) - AI coding skill for Trade Router covering non-custodial Solana swaps with multi-DEX routing across Raydium, PumpSwap, Orca, and Meteora, Jito MEV-protected execution via /protect, and limit/trailing/TWAP/combo orders over WebSocket. The agent signs locally; the API never holds keys.
### Infrastructure
- [trade-router-skill](https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router) - AI coding skill for Trade Router covering non-custodial Solana swaps with multi-DEX routing across Raydium, PumpSwap, Orca, and Meteora, Jito MEV-protected execution via /protect, and limit/trailing/TWAP/combo orders over WebSocket. The agent signs locally; the API never holds keys.
### Infrastructure

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment thread README.md
Comment on lines 49 to 52
- [Sentients](https://github.com/koshmade/sentients.wtf) - AI agents minting unique inscriptions on Solana. First AI Agent-Native Protocol with autonomous wallets and deterministic art generated from blockchain entropy.

- [trade-router-skill](https://github.com/re-bruce-wayne/openclaw-skills/tree/main/trade-router) - AI coding skill for Trade Router covering non-custodial Solana swaps with multi-DEX routing across Raydium, PumpSwap, Orca, and Meteora, Jito MEV-protected execution via /protect, and limit/trailing/TWAP/combo orders over WebSocket. The agent signs locally; the API never holds keys.
### Infrastructure

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Entries placed out of alphabetical order with an extra blank line separator

Both additions are appended at the end of their respective sections after an extra blank line (breaking the list visually), rather than being inserted in alphabetical order inline. The DeFi list runs alphabetically from clawpump-arbitrage-skill through sanctum-skill, then pnp-markets-skill and Sentients appear out of order, and trade-router-skill is appended after another blank line. trade-router-mcp has the same pattern in Developer Tools. Inserting in alphabetical position and removing the extra blank line would match the existing formatting convention.

Comment thread README.md
Comment on lines +103 to 104
- [trade-router-mcp](https://www.npmjs.com/package/@traderouter/trade-router-mcp) - Non-custodial Solana swap & limit-order MCP server for AI agents. 21 tools: swap, limit, trailing, TWAP, DCA, and combo orders (limit+trailing+TWAP) across Raydium, PumpSwap, Orca, and Meteora. Jito MEV-protected, Ed25519 server-message verification, `TRADEROUTER_DRY_RUN` for safe testing. Install: `npx -y @traderouter/trade-router-mcp`.
## Learning Resources

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Missing blank line before section header

There is no blank line between the new trade-router-mcp entry and ## Learning Resources, inconsistent with every other section boundary in the file. Add a blank line between line 103 and 104 to match the established formatting convention.

Per review on PR solana-foundation#153:

1. Move trade-router-skill from end-of-DeFi (after Sentients with extra
   blank line above) into its alphabetical position right after
   sanctum-skill (s < t < trailing entries). Removes the visual break
   the appended placement created and matches the alphabetical run from
   clawpump-arbitrage-skill through sanctum-skill.

2. Add the blank line before ### Infrastructure that the appended
   placement was missing — now restored as a side effect of moving the
   entry up (the section break preserves Sentients's existing trailing
   blank line).

3. Add the blank line between trade-router-mcp and ## Learning Resources
   in Developer Tools to match the formatting convention every other
   section transition uses.
@re-bruce-wayne

Copy link
Copy Markdown
Author

Thanks for the careful review — all three nits addressed in the latest commit:

  1. DeFi alphabetical placement: moved trade-router-skill from end-of-section into its alphabetical slot right after sanctum-skill (s < t). The out-of-order entries (pnp-markets-skill, Sentients) are left where they were since they're not part of this PR.
  2. Blank line before ### Infrastructure: restored as a side effect of moving the entry up — the existing trailing blank line under Sentients now sits where it was before this PR.
  3. Blank line before ## Learning Resources: added between the trade-router-mcp entry and the ## Learning Resources header in Developer Tools.

Diff is rendered at the PR. Happy to make any further tweaks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant