io.github.the-staq/tradestaq-mcp
AI-powered crypto trading tools. Strategies, backtests, bots, and portfolio management.
Open source Open in the app JSON README (API)
About
AI-powered crypto trading tools. Strategies, backtests, bots, and portfolio management.
Details
- Kind
- MCP servers
- Topic
- Finance & crypto
- Publisher
- the-staq
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.1
- Last push
- 2026-08-27T08:44:27Z
- Repository state
- ativo
- Language
- TypeScript
- Added
- 2026-08-29 04:01:31
- Updated
- 2026-08-29 04:01:31
- Origin id
io.github.the-staq/tradestaq-mcp
README
# TradeStaq MCP Server
[](https://www.npmjs.com/package/@the-staq/tradestaq-mcp)
[](https://opensource.org/licenses/MIT)
**[Website](https://tradestaq.com)** · **[Docs](https://tradestaq.com/docs)** · **[MCP / AI Tools](https://tradestaq.com/mcp)** · **[Pricing](https://tradestaq.com/pricing)**
**31 AI-powered trading tools for Claude, Cursor, and any MCP client.**
Create strategies, backtest them, deploy trading bots, copy top traders, monitor positions, and manage your crypto portfolio, all from conversation. Supports Binance, Bybit, OKX, Bitget, Hyperliquid, dYdX, and more.
```
"Show me my portfolio" → get_portfolio
"Backtest GhostRider on BTC/USDT for 3 months" → what_if_backtest
"Deploy it on my Binance account" → deploy_bot
"Who are the top traders this month?" → list_top_traders
"Generate a momentum strategy for ETH" → generate_strategy
```
## Quick Start
### Option A: Remote server (no install needed)
For MCP clients that support HTTP transport:
```json
{
"mcpServers": {
"tradestaq": {
"url": "https://mcp.tradestaq.com/mcp"
}
}
}
```
### Option B: npx (recommended for local)
No clone, no build. Just add to your MCP config:
**Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`):
```json
{
"mcpServers": {
"tradestaq": {
"command": "npx",
"args": ["-y", "@the-staq/tradestaq-mcp"]
}
}
}
```
**Cursor** (`.cursor/mcp.json`):
```json
{
"mcpServers": {
"tradestaq": {
"command": "npx",
"args": ["-y", "@the-staq/tradestaq-mcp"]
}
}
}
```
**Claude Code:**
```sh
claude mcp add tradestaq -- npx -y @the-staq/tradestaq-mcp
```
### Option C: Clone and build
```sh
git clone https://github.com/the-staq/tradestaq-mcp.git
cd tradestaq-mcp
npm install
npm run build
```
Then point your MCP client to `dist/index.js`.
## Authenticate
After adding the server, ask your AI assistant to log in:
- **"Log me in to TradeStaq"** — uses email/password directly
- **"Authenticate with TradeStaq"** — opens a browser window for secure OAuth login
Credentials never enter the chat when using the browser flow. Token is stored locally at `~/.tradestaq/mcp-config.json` with restricted permissions (0600).
## Tools
### Auth
| Tool | Description |
|------|-------------|
| `login` | Log in with email and password |
| `authenticate` | Log in via browser (OAuth + PKCE) |
| `check_auth` | Check authentication status |
| `set_token` | Manually set a JWT token |
| `connect_exchange` | Connect an exchange account via browser |
| `logout` | Remove stored credentials |
### Market Data
| Tool | Description |
|------|-------------|
| `get_price` | Current price, 24h change, volume |
| `get_candles` | OHLCV candlestick data (1m to 1d) |
| `list_exchanges` | List connected exchange accounts |
| `search_markets` | Find trading pairs on a specific exchange |
### Portfolio
| Tool | Description |
|------|-------------|
| `get_portfolio` | Total balance, exchanges, active bots |
| `get_positions` | Open positions with live PnL |
### Strategies
| Tool | Description |
|------|-------------|
| `list_strategies` | Browse marketplace or your own strategies |
| `get_strategy` | Full strategy details and performance |
| `explain_strategy` | Plain-English explanation with risk profile |
| `compare_strategies` | Side-by-side metrics comparison |
| `create_strategy` | Create a strategy from TradeDroid code |
| `generate_strategy` | Generate a strategy from natural language using AI |
### Backtesting
| Tool | Description |
|------|-------------|
| `what_if_backtest` | Run a historical backtest (async, 30-120s) |
| `get_backtest_results` | Check status of a running backtest |
### Bot Management
| Tool | Description |
|------|-------------|
| `list_bots` | All bots with status and performance |
| `get_bot_status` | Detailed bot metrics and config |
| `deploy_bot` | Deploy a strategy as a trading bot |
| `stop_bot` | Stop a running bot |
| `close_position` | Close an open position (full or partial) |
`deploy_bot` defaults to paper trading. Pass `live: true` for real money.
### Trade History
| Tool | Description |
|------|-------------|
| `get_trade_history` | Closed trades with PnL, entry/exit prices |
| `get_performance_metrics` | ROI, win rate, Sortino ratio, PnL breakdown |
### Copy Trading
| Tool | Description |
|------|-------------|
| `list_top_traders` | Browse the leaderboard of top traders |
| `follow_trader` | Subscribe to copy a trader's trades |
### Advisor
| Tool | Description |
|------|-------------|
| `suggest_strategies` | Match strategies to your risk profile |
| `get_market_context` | Trend, volatility, support/resistance for a symbol |
## Prompt Templates
**Trading Assistant** — Start a conversation about your portfolio and positions. The AI calls `get_portfolio` and `get_positions` to ground its responses in your actual data.
**Strategy Builder** — Walk through creating, backtesting, and deploying a strategy. Pass an optional `goal` like "momentum strategy for ETH" to get focused suggestions.
**Portfolio Reviewer** — Deep analysis of your portfolio, positions, trade history, and performance. Identifies what's working, what isn't, and suggests improvements.
## Resources
MCP resources provide browsable data that AI clients can read directly:
| Resource | URI | Description |
|----------|-----|-------------|
| Portfolio | `tradestaq://portfolio` | Balances, positions, and active bots |
| Bots | `tradestaq://bots` | All bots with status and PnL |
| Strategies | `tradestaq://strategies` | Strategy catalog with ratings |
## Architecture
```
stdio HTTPS
┌──────────────┐◄──────────►┐ ┌────────────────►┌──────────────┐
│Claude Desktop│ │ │ │ │
│Cursor / CLI │ │ tradestaq-mcp │ Bearer JWT │ TradeStaq │
└──────────────┘ │ 31 tools │◄────────────────│ API │
│ 3 prompts │ │ │
┌──────────────┐ HTTP+SSE │ 3 resources │ └──────────────┘
│ Any MCP │◄──────────►│ │
│ client (web) │ └──────────────────┘
└──────────────┘
```
- **Two transports:** stdio (local, default) and HTTP+SSE (remote, `--http` flag)
- Hosted at `https://mcp.tradestaq.com/mcp` for remote clients
- JWT auth via OAuth PKCE or email/password login
- All tools return structured JSON with error contract
- Token auto-refresh when expiring within 1 hour
## Development
```sh
npm run dev # watch mode with tsx
npm run build # compile TypeScript
npm run lint # type check without emitting
npm test # run tests
npm start # run server (stdio)
npm run start:http # run server (HTTP+SSE on port 3100)
```
## Error Handling
All tool errors return structured responses:
```json
{
"error": {
"code": "INSUFFICIENT_BALANCE",
"message": "Human-readable description",
"retryable": true,
"retryAfterMs": 5000
}
}
```
Error codes: `AUTH_EXPIRED`, `TIMEOUT`, `RATE_LIMITED`, `NETWORK_ERROR`, `HTTP_4xx`, `HTTP_5xx`.
## Security
- Credentials never enter AI conversation history
- OAuth PKCE flow with browser-based authentication
- Token stored with 0600 file permissions
- Localhost-only OAuth callbacks
- `deploy_bot`, `stop_bot`, `close_position`, and `follow_trader` are destructive operations (AI confirms with user)
## Links
- **Website:** [tradestaq.com](https://tradestaq.com)
- **Documentation:** [tradestaq.com/docs](https://tradestaq.com/docs)
- **MCP & AI trading tools:** [tradestaq.com/mcp](https://tradestaq.com/mcp)
- **Pricing:** [tradestaq.com/pricing](https://tradestaq.com/pricing)
- **npm package:** [@the-staq/tradestaq-mcp](https://www.npmjs.com/package/@the-staq/tradestaq-mcp)
## License
MIT