omnitrade-mcp 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +672 -268
- package/dist/chunk-B4Z7ZOTE.js +85 -0
- package/dist/chunk-FTMAZW2Z.js +245 -0
- package/dist/chunk-MMSBUZZV.js +87 -0
- package/dist/chunk-OKULA66P.js +64 -0
- package/dist/chunk-RDXXINT5.js +134 -0
- package/dist/cli.js +654 -8
- package/dist/core-UZMUAQBA.js +262 -0
- package/dist/dashboard-6GJ4UVRY.js +250 -0
- package/dist/discord-NGI6A323.js +8 -0
- package/dist/index.js +376 -322
- package/dist/loader-REPQTF22.js +8 -0
- package/dist/telegram-SX66AN5G.js +8 -0
- package/dist/wallet-DAPG5P5X.js +28 -0
- package/package.json +7 -4
package/README.md
CHANGED
|
@@ -1,28 +1,125 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<br />
|
|
3
|
+
<picture>
|
|
4
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/Connectry-io/omnitrade-mcp/main/.github/assets/logo-dark.svg">
|
|
5
|
+
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/Connectry-io/omnitrade-mcp/main/.github/assets/logo-light.svg">
|
|
6
|
+
<img alt="OmniTrade" src="https://raw.githubusercontent.com/Connectry-io/omnitrade-mcp/main/.github/assets/logo-dark.svg" width="350">
|
|
7
|
+
</picture>
|
|
8
|
+
<br />
|
|
9
|
+
</p>
|
|
10
|
+
|
|
11
|
+
<h3 align="center">
|
|
12
|
+
Trade crypto with natural language
|
|
13
|
+
</h3>
|
|
14
|
+
|
|
15
|
+
<p align="center">
|
|
16
|
+
Connect Claude to 107+ exchanges through the Model Context Protocol.<br />
|
|
17
|
+
Buy, sell, track, and analyze — all by just asking.
|
|
18
|
+
</p>
|
|
19
|
+
|
|
20
|
+
<p align="center">
|
|
21
|
+
<a href="https://www.npmjs.com/package/omnitrade-mcp"><img src="https://img.shields.io/npm/v/omnitrade-mcp?style=flat&colorA=18181B&colorB=28CF8D" alt="npm version"></a>
|
|
22
|
+
<a href="https://www.npmjs.com/package/omnitrade-mcp"><img src="https://img.shields.io/npm/dm/omnitrade-mcp?style=flat&colorA=18181B&colorB=28CF8D" alt="npm downloads"></a>
|
|
23
|
+
<a href="https://github.com/Connectry-io/omnitrade-mcp"><img src="https://img.shields.io/github/stars/Connectry-io/omnitrade-mcp?style=flat&colorA=18181B&colorB=28CF8D" alt="GitHub stars"></a>
|
|
24
|
+
<a href="https://github.com/Connectry-io/omnitrade-mcp/blob/main/LICENSE"><img src="https://img.shields.io/github/license/Connectry-io/omnitrade-mcp?style=flat&colorA=18181B&colorB=28CF8D" alt="License"></a>
|
|
25
|
+
</p>
|
|
26
|
+
|
|
27
|
+
<p align="center">
|
|
28
|
+
<a href="#-quick-start">Quick Start</a> •
|
|
29
|
+
<a href="#-features">Features</a> •
|
|
30
|
+
<a href="#-examples">Examples</a> •
|
|
31
|
+
<a href="#-tui-dashboard">Dashboard</a> •
|
|
32
|
+
<a href="#-paper-trading">Paper Trading</a> •
|
|
33
|
+
<a href="#-tools">Tools</a> •
|
|
34
|
+
<a href="#-security">Security</a>
|
|
35
|
+
</p>
|
|
2
36
|
|
|
3
|
-
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
> ⚠️ **Disclaimer:** OmniTrade is a developer tool and does not constitute financial advice. Cryptocurrency trading involves substantial risk. Connectry Labs is not a licensed financial advisor. Always do your own research and consult a qualified financial advisor before making investment decisions. [Use at your own risk.](https://github.com/Connectry-io/omnitrade-mcp/blob/main/LICENSE)
|
|
40
|
+
|
|
41
|
+
## 💬 What is OmniTrade?
|
|
42
|
+
|
|
43
|
+
OmniTrade is an [MCP](https://modelcontextprotocol.io/) server that lets you trade cryptocurrency using natural language through Claude. No more juggling exchange dashboards — just tell Claude what you want:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
You: "What's my portfolio worth?"
|
|
47
|
+
Claude: Your portfolio across 2 exchanges is worth $12,456.78
|
|
48
|
+
|
|
49
|
+
Binance: $8,234.56
|
|
50
|
+
└── 0.15 BTC ($6,322.50)
|
|
51
|
+
└── 2.5 ETH ($1,912.06)
|
|
52
|
+
|
|
53
|
+
Coinbase: $4,222.22
|
|
54
|
+
└── 100 SOL ($4,222.22)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
You: "Buy $100 of ETH on the cheapest exchange"
|
|
59
|
+
Claude: I found the best price for ETH:
|
|
60
|
+
• Kraken: $765.20 (cheapest)
|
|
61
|
+
• Binance: $765.89 (+0.09%)
|
|
62
|
+
• Coinbase: $766.12 (+0.12%)
|
|
63
|
+
|
|
64
|
+
✅ Bought 0.1306 ETH on Kraken for $100.00
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
<br />
|
|
68
|
+
|
|
69
|
+
## ✨ Features
|
|
70
|
+
|
|
71
|
+
<table>
|
|
72
|
+
<tr>
|
|
73
|
+
<td width="50%">
|
|
74
|
+
|
|
75
|
+
### 🔗 107+ Exchanges
|
|
76
|
+
Connect to Binance, Coinbase, Kraken, and 104 more exchanges through [CCXT](https://github.com/ccxt/ccxt). One config, all exchanges.
|
|
77
|
+
|
|
78
|
+
### 💬 Natural Language
|
|
79
|
+
No commands to memorize. Just ask Claude in plain English. "Buy ETH", "Show my balance", "Find arbitrage opportunities".
|
|
4
80
|
|
|
5
|
-
|
|
81
|
+
### 📊 Portfolio Intelligence
|
|
82
|
+
Unified view of all holdings across exchanges. Track P&L over time, record snapshots, and see performance trends.
|
|
6
83
|
|
|
7
|
-
|
|
8
|
-
|
|
84
|
+
### 🔔 Price Alerts
|
|
85
|
+
Set alerts for any trading pair. Get notified when prices hit your targets. Works across all connected exchanges.
|
|
9
86
|
|
|
10
|
-
|
|
87
|
+
</td>
|
|
88
|
+
<td width="50%">
|
|
11
89
|
|
|
12
|
-
|
|
13
|
-
-
|
|
14
|
-
- 🔒 **Local-Only** — API keys never leave your machine
|
|
15
|
-
- ⚡ **Arbitrage Detection** — Find price differences across exchanges
|
|
16
|
-
- 📊 **Unified Portfolio** — See all holdings in one view
|
|
17
|
-
- 🛡️ **Safety First** — Order limits, pair whitelists, testnet mode
|
|
18
|
-
- 🔔 **Price Alerts** — Get notified when crypto hits your target price
|
|
19
|
-
- 📈 **ASCII Charts** — View price history right in your terminal
|
|
20
|
-
- 📊 **Portfolio Tracking** — Track P&L over time with snapshots
|
|
21
|
-
- ⚖️ **Auto-Rebalance** — Automatically rebalance to target allocations
|
|
22
|
-
- 💰 **DCA (Dollar Cost Average)** — Set up recurring buys
|
|
23
|
-
- 🎯 **Conditional Orders** — Execute trades based on price conditions
|
|
90
|
+
### 📈 DCA & Conditional Orders
|
|
91
|
+
Dollar-cost averaging with natural language: "Buy $10 of BTC every day". Conditional orders: "Buy ETH if it drops 5%".
|
|
24
92
|
|
|
25
|
-
|
|
93
|
+
### ⚡ Auto-Rebalancing
|
|
94
|
+
"Rebalance to 50% BTC, 30% ETH, 20% SOL" — Claude calculates and executes the trades to hit your targets.
|
|
95
|
+
|
|
96
|
+
### 📉 Rich Price Charts
|
|
97
|
+
View price charts right in your conversation. 1h, 4h, 24h, 7d timeframes. Returns rich **SVG charts** — full color, no need to switch apps.
|
|
98
|
+
|
|
99
|
+
### 🔒 100% Local & Secure
|
|
100
|
+
Your API keys never leave your machine. No cloud, no telemetry, fully open source. Audit every line.
|
|
101
|
+
|
|
102
|
+
</td>
|
|
103
|
+
</tr>
|
|
104
|
+
<tr>
|
|
105
|
+
<td width="50%">
|
|
106
|
+
|
|
107
|
+
### 🖥️ TUI Dashboard *(v0.9.0)*
|
|
108
|
+
Full-screen Bloomberg Terminal-style interface in your terminal. Live prices, interactive charts, and a live portfolio panel — all in one view. Run `omnitrade dashboard` to launch.
|
|
109
|
+
|
|
110
|
+
</td>
|
|
111
|
+
<td width="50%">
|
|
112
|
+
|
|
113
|
+
### 📝 Paper Trading *(v0.9.0)*
|
|
114
|
+
Practice risk-free with a virtual $10,000 USDT wallet. Buy and sell at live market prices, track your portfolio, review trade history, and reset anytime. No real funds, full real data.
|
|
115
|
+
|
|
116
|
+
</td>
|
|
117
|
+
</tr>
|
|
118
|
+
</table>
|
|
119
|
+
|
|
120
|
+
<br />
|
|
121
|
+
|
|
122
|
+
## 🚀 Quick Start
|
|
26
123
|
|
|
27
124
|
### 1. Install
|
|
28
125
|
|
|
@@ -30,364 +127,671 @@ Connect Claude to Binance, Coinbase, Kraken, and 104 more cryptocurrency exchang
|
|
|
30
127
|
npm install -g omnitrade-mcp
|
|
31
128
|
```
|
|
32
129
|
|
|
33
|
-
### 2.
|
|
130
|
+
### 2. Run the Setup Wizard
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
omnitrade setup
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
The interactive wizard walks you through everything in ~2 minutes:
|
|
137
|
+
|
|
138
|
+
- 🔑 Add your exchange API keys (Binance, Coinbase, Kraken, and more)
|
|
139
|
+
- 🔒 Configure security settings (order size limits, allowed pairs, testnet mode)
|
|
140
|
+
- 🖥️ Auto-configure **Claude Desktop** — writes to your config file automatically
|
|
141
|
+
- 💻 Optionally auto-configure **Claude Code** (terminal) — writes to `~/.claude/settings.json`
|
|
142
|
+
|
|
143
|
+
That's it. No manual JSON editing required.
|
|
34
144
|
|
|
35
|
-
|
|
145
|
+
### 3. Start Trading
|
|
146
|
+
|
|
147
|
+
Restart Claude Desktop (or reload Claude Code) and start chatting:
|
|
148
|
+
|
|
149
|
+
- *"What's my balance on Binance?"*
|
|
150
|
+
- *"Show me ETH prices across all exchanges"*
|
|
151
|
+
- *"Buy $50 of BTC on the cheapest exchange"*
|
|
152
|
+
- *"Are there any arbitrage opportunities?"*
|
|
153
|
+
|
|
154
|
+
<br />
|
|
155
|
+
|
|
156
|
+
## ⚙️ Manual Configuration
|
|
157
|
+
|
|
158
|
+
Prefer to configure manually? Add OmniTrade to your Claude config:
|
|
159
|
+
|
|
160
|
+
### Claude Desktop
|
|
161
|
+
|
|
162
|
+
<details>
|
|
163
|
+
<summary><b>macOS</b> — <code>~/Library/Application Support/Claude/claude_desktop_config.json</code></summary>
|
|
36
164
|
|
|
37
165
|
```json
|
|
38
166
|
{
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"testnet": true
|
|
44
|
-
},
|
|
45
|
-
"coinbase": {
|
|
46
|
-
"apiKey": "YOUR_API_KEY",
|
|
47
|
-
"secret": "YOUR_SECRET",
|
|
48
|
-
"password": "YOUR_PASSPHRASE",
|
|
49
|
-
"testnet": true
|
|
167
|
+
"mcpServers": {
|
|
168
|
+
"omnitrade": {
|
|
169
|
+
"command": "omnitrade",
|
|
170
|
+
"args": ["start"]
|
|
50
171
|
}
|
|
51
|
-
},
|
|
52
|
-
"security": {
|
|
53
|
-
"maxOrderSize": 100,
|
|
54
|
-
"confirmTrades": true
|
|
55
172
|
}
|
|
56
173
|
}
|
|
57
174
|
```
|
|
58
175
|
|
|
59
|
-
|
|
176
|
+
</details>
|
|
60
177
|
|
|
61
|
-
|
|
62
|
-
|
|
178
|
+
<details>
|
|
179
|
+
<summary><b>Windows</b> — <code>%APPDATA%\Claude\claude_desktop_config.json</code></summary>
|
|
180
|
+
|
|
181
|
+
```json
|
|
182
|
+
{
|
|
183
|
+
"mcpServers": {
|
|
184
|
+
"omnitrade": {
|
|
185
|
+
"command": "omnitrade",
|
|
186
|
+
"args": ["start"]
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
63
190
|
```
|
|
64
191
|
|
|
65
|
-
|
|
192
|
+
</details>
|
|
66
193
|
|
|
67
|
-
|
|
194
|
+
### Claude Code (Terminal)
|
|
195
|
+
|
|
196
|
+
Add to `~/.claude/settings.json`:
|
|
68
197
|
|
|
69
198
|
```json
|
|
70
199
|
{
|
|
71
200
|
"mcpServers": {
|
|
72
201
|
"omnitrade": {
|
|
73
|
-
"command": "omnitrade
|
|
202
|
+
"command": "omnitrade",
|
|
203
|
+
"args": ["start"]
|
|
74
204
|
}
|
|
75
205
|
}
|
|
76
206
|
}
|
|
77
207
|
```
|
|
78
208
|
|
|
79
|
-
|
|
209
|
+
Then run `claude` in your terminal and OmniTrade will be available.
|
|
80
210
|
|
|
81
|
-
|
|
211
|
+
<br />
|
|
82
212
|
|
|
83
|
-
|
|
84
|
-
- *"Show me ETH prices across all exchanges"*
|
|
85
|
-
- *"Buy $50 of BTC on the cheapest exchange"*
|
|
86
|
-
- *"Are there any arbitrage opportunities for SOL?"*
|
|
87
|
-
- *"Alert me when BTC drops below $40000"*
|
|
88
|
-
- *"Show me a 24h chart for ETH"*
|
|
89
|
-
- *"How has my portfolio performed this week?"*
|
|
90
|
-
- *"Rebalance my portfolio to 50% BTC, 30% ETH, 20% SOL"*
|
|
91
|
-
- *"Setup DCA to buy $10 of BTC daily"*
|
|
92
|
-
- *"Buy ETH if it drops 5%"*
|
|
213
|
+
## 💡 Examples
|
|
93
214
|
|
|
94
|
-
|
|
215
|
+
### Portfolio Overview
|
|
95
216
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
217
|
+
```
|
|
218
|
+
You: "Show me my portfolio"
|
|
219
|
+
|
|
220
|
+
Claude: 📊 Portfolio Summary
|
|
221
|
+
Total Value: $24,567.89
|
|
222
|
+
|
|
223
|
+
┌─────────────────────────────────────────┐
|
|
224
|
+
│ Asset │ Amount │ Value │ % │
|
|
225
|
+
├─────────────────────────────────────────┤
|
|
226
|
+
│ BTC │ 0.3521 │ $14,821.42 │ 60.3% │
|
|
227
|
+
│ ETH │ 4.2100 │ $6,847.28 │ 27.9% │
|
|
228
|
+
│ SOL │ 28.5000 │ $2,899.19 │ 11.8% │
|
|
229
|
+
└─────────────────────────────────────────┘
|
|
230
|
+
```
|
|
106
231
|
|
|
107
|
-
###
|
|
108
|
-
| Tool | Description |
|
|
109
|
-
|------|-------------|
|
|
110
|
-
| `get_arbitrage` | Find arbitrage opportunities |
|
|
111
|
-
| `execute_arbitrage` | Execute arbitrage trades automatically |
|
|
112
|
-
| `check_spread` | Check spread for a specific pair |
|
|
232
|
+
### Price Alerts
|
|
113
233
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
234
|
+
```
|
|
235
|
+
You: "Alert me when BTC drops below $40,000"
|
|
236
|
+
|
|
237
|
+
Claude: ✅ Price alert created
|
|
238
|
+
|
|
239
|
+
📍 BTC/USDT on Binance
|
|
240
|
+
🎯 Trigger: Below $40,000
|
|
241
|
+
📊 Current: $42,156.78
|
|
242
|
+
|
|
243
|
+
I'll let you know when it triggers!
|
|
244
|
+
```
|
|
122
245
|
|
|
123
|
-
### Charts
|
|
124
|
-
| Tool | Description |
|
|
125
|
-
|------|-------------|
|
|
126
|
-
| `get_chart` | Display ASCII price charts (1h, 4h, 24h, 7d) |
|
|
127
|
-
| `record_portfolio_snapshot` | Record current portfolio value |
|
|
128
|
-
| `get_portfolio_history` | View portfolio P&L over time |
|
|
129
|
-
| `clear_portfolio_history` | Clear portfolio history |
|
|
246
|
+
### ASCII Charts
|
|
130
247
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|------|-------------|
|
|
134
|
-
| `rebalance_portfolio` | Auto-rebalance to target allocations |
|
|
248
|
+
```
|
|
249
|
+
You: "Show me a 24h chart for ETH"
|
|
135
250
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
251
|
+
Claude: ETH/USDT — 24h Chart (Binance)
|
|
252
|
+
|
|
253
|
+
$3,312 ┤ ╭──
|
|
254
|
+
$3,290 ┤ ╭─────╯
|
|
255
|
+
$3,268 ┤ ╭────────╯
|
|
256
|
+
$3,245 ┤ ╭────────╯
|
|
257
|
+
$3,223 ┼────╯
|
|
258
|
+
└────────────────────────────────────
|
|
259
|
+
00:00 12:00 23:59
|
|
260
|
+
|
|
261
|
+
Open: $3,245.20 → Close: $3,312.50
|
|
262
|
+
Change: ↑ +$67.30 (+2.07%)
|
|
263
|
+
```
|
|
144
264
|
|
|
145
|
-
###
|
|
146
|
-
| Tool | Description |
|
|
147
|
-
|------|-------------|
|
|
148
|
-
| `set_conditional_order` | Create price-triggered orders |
|
|
149
|
-
| `list_conditional_orders` | View all conditional orders |
|
|
150
|
-
| `check_conditional_orders` | Check and execute conditions |
|
|
151
|
-
| `remove_conditional_order` | Remove conditional order |
|
|
265
|
+
### DCA Setup
|
|
152
266
|
|
|
153
|
-
|
|
267
|
+
```
|
|
268
|
+
You: "Set up DCA to buy $25 of BTC every week"
|
|
269
|
+
|
|
270
|
+
Claude: ✅ DCA Strategy Created
|
|
271
|
+
|
|
272
|
+
📈 Asset: BTC/USDT
|
|
273
|
+
💰 Amount: $25.00
|
|
274
|
+
📅 Frequency: Weekly (every Monday)
|
|
275
|
+
🏦 Exchange: Binance
|
|
276
|
+
|
|
277
|
+
Next execution: Monday, Feb 24, 2025
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Auto-Rebalance
|
|
154
281
|
|
|
155
|
-
### Price Alerts
|
|
156
282
|
```
|
|
157
|
-
You: "
|
|
158
|
-
Claude: ✅ Alert set for BTC/USDT below $40000
|
|
283
|
+
You: "Rebalance my portfolio to 50% BTC, 30% ETH, 20% SOL"
|
|
159
284
|
|
|
160
|
-
|
|
161
|
-
|
|
285
|
+
Claude: 📊 Rebalance Preview
|
|
286
|
+
|
|
287
|
+
Current → Target:
|
|
288
|
+
• BTC: 60.3% → 50.0% (sell $2,528.54)
|
|
289
|
+
• ETH: 27.9% → 30.0% (buy $516.17)
|
|
290
|
+
• SOL: 11.8% → 20.0% (buy $2,012.37)
|
|
291
|
+
|
|
292
|
+
Trades required:
|
|
293
|
+
1. SELL 0.0601 BTC → $2,528.54
|
|
294
|
+
2. BUY 0.3171 ETH ← $516.17
|
|
295
|
+
3. BUY 19.79 SOL ← $2,012.37
|
|
296
|
+
|
|
297
|
+
Shall I execute these trades?
|
|
162
298
|
```
|
|
163
299
|
|
|
164
|
-
###
|
|
300
|
+
### Arbitrage Detection
|
|
301
|
+
|
|
165
302
|
```
|
|
166
|
-
You: "
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
303
|
+
You: "Find arbitrage opportunities for BTC"
|
|
304
|
+
|
|
305
|
+
Claude: 🔍 Arbitrage Scan: BTC/USDT
|
|
306
|
+
|
|
307
|
+
✅ Opportunity Found!
|
|
308
|
+
|
|
309
|
+
Buy on Kraken: $42,150.00
|
|
310
|
+
Sell on Binance: $42,298.00
|
|
311
|
+
|
|
312
|
+
Spread: 0.35% ($148.00)
|
|
313
|
+
After fees (~0.2%): ~$63.00 profit per BTC
|
|
314
|
+
|
|
315
|
+
Want me to execute this?
|
|
178
316
|
```
|
|
179
317
|
|
|
180
|
-
###
|
|
318
|
+
### Paper Trading
|
|
319
|
+
|
|
320
|
+
```
|
|
321
|
+
You: "Buy 0.01 BTC in paper trading"
|
|
322
|
+
|
|
323
|
+
Claude: ✅ Paper Trade Executed
|
|
324
|
+
|
|
325
|
+
📄 BUY 0.01 BTC
|
|
326
|
+
💵 Price: $42,312.00
|
|
327
|
+
💸 Cost: $423.12 USDT
|
|
328
|
+
|
|
329
|
+
Virtual Portfolio:
|
|
330
|
+
┌──────────────────────────────────────────┐
|
|
331
|
+
│ USDT $9,576.88 (available) │
|
|
332
|
+
│ BTC 0.01000 ≈ $423.12 │
|
|
333
|
+
└──────────────────────────────────────────┘
|
|
334
|
+
Total Value: $10,000.00
|
|
181
335
|
```
|
|
182
|
-
You: "Record my portfolio value"
|
|
183
|
-
Claude: ✅ Portfolio snapshot recorded: $12,345.67
|
|
184
336
|
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
337
|
+
```
|
|
338
|
+
You: "Show my paper trading portfolio"
|
|
339
|
+
|
|
340
|
+
Claude: 📝 Paper Portfolio
|
|
341
|
+
|
|
342
|
+
┌─────────────────────────────────────────────┐
|
|
343
|
+
│ Asset │ Amount │ Value │ P&L │
|
|
344
|
+
├─────────────────────────────────────────────┤
|
|
345
|
+
│ USDT │ 9,076.88 │ $9,076.88 │ — │
|
|
346
|
+
│ BTC │ 0.0200 │ $856.40 │ +$10.16 │
|
|
347
|
+
│ ETH │ 0.5000 │ $914.25 │ +$22.50 │
|
|
348
|
+
└─────────────────────────────────────────────┘
|
|
349
|
+
Total: $10,847.53 | All-time P&L: +$847.53 (+8.5%)
|
|
192
350
|
```
|
|
193
351
|
|
|
194
|
-
###
|
|
352
|
+
### SVG Chart
|
|
353
|
+
|
|
195
354
|
```
|
|
196
|
-
You: "
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
355
|
+
You: "Show me a 24h chart for ETH"
|
|
356
|
+
|
|
357
|
+
Claude: [renders rich SVG chart]
|
|
358
|
+
|
|
359
|
+
ETH/USDT — 24h Chart (Binance)
|
|
360
|
+
Full-color candlestick chart with volume bars,
|
|
361
|
+
gridlines, and price annotations.
|
|
362
|
+
|
|
363
|
+
Open: $3,245.20 → Close: $3,312.50
|
|
364
|
+
Change: ↑ +$67.30 (+2.07%)
|
|
206
365
|
```
|
|
207
366
|
|
|
208
|
-
|
|
367
|
+
<br />
|
|
368
|
+
|
|
369
|
+
## 🖥️ TUI Dashboard
|
|
370
|
+
|
|
371
|
+
Launch a full-screen Bloomberg Terminal-style interface directly in your terminal — live prices, charts, and your portfolio panel updating in real time.
|
|
372
|
+
|
|
373
|
+
```bash
|
|
374
|
+
omnitrade dashboard
|
|
209
375
|
```
|
|
210
|
-
You: "Setup DCA to buy $10 of BTC every day"
|
|
211
|
-
Claude: ✅ DCA strategy created for BTC/USDT: $10 daily
|
|
212
376
|
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
377
|
+
The dashboard opens in full-screen and shows:
|
|
378
|
+
|
|
379
|
+
- **Live price ticker** — Watchlist of your configured pairs, updating every few seconds
|
|
380
|
+
- **Price chart panel** — Interactive candlestick chart for the selected pair (1h, 4h, 24h, 7d)
|
|
381
|
+
- **Portfolio panel** — Current holdings and real-time P&L across all connected exchanges
|
|
382
|
+
|
|
383
|
+
**Keyboard shortcuts:**
|
|
384
|
+
|
|
385
|
+
| Key | Action |
|
|
386
|
+
|-----|--------|
|
|
387
|
+
| `↑` / `↓` | Navigate the watchlist |
|
|
388
|
+
| `1` `4` `D` `W` | Switch chart timeframe (1h / 4h / 24h / 7d) |
|
|
389
|
+
| `Tab` | Cycle between panels |
|
|
390
|
+
| `q` / `Ctrl+C` | Exit dashboard |
|
|
391
|
+
|
|
392
|
+
The dashboard reads from the same `~/.omnitrade/config.json` as the MCP server — no extra setup required.
|
|
393
|
+
|
|
394
|
+
<br />
|
|
395
|
+
|
|
396
|
+
## 📝 Paper Trading
|
|
397
|
+
|
|
398
|
+
Practice risk-free with a virtual wallet before committing real funds. Paper trading uses **live market prices** from your connected exchanges, so your results reflect what would actually happen.
|
|
399
|
+
|
|
400
|
+
**Starting balance:** $10,000 USDT
|
|
401
|
+
|
|
402
|
+
```bash
|
|
403
|
+
# Buy in paper mode
|
|
404
|
+
omnitrade paper buy BTC 0.01
|
|
405
|
+
|
|
406
|
+
# Sell in paper mode
|
|
407
|
+
omnitrade paper sell ETH 0.5
|
|
408
|
+
|
|
409
|
+
# View your virtual portfolio
|
|
410
|
+
omnitrade paper portfolio
|
|
411
|
+
|
|
412
|
+
# Review trade history
|
|
413
|
+
omnitrade paper history
|
|
414
|
+
|
|
415
|
+
# Reset back to $10,000 USDT
|
|
416
|
+
omnitrade paper reset
|
|
216
417
|
```
|
|
217
418
|
|
|
218
|
-
|
|
419
|
+
| Command | Description |
|
|
420
|
+
|---------|-------------|
|
|
421
|
+
| `omnitrade paper buy <ASSET> <AMOUNT>` | Buy at current live price, deducting from virtual USDT balance |
|
|
422
|
+
| `omnitrade paper sell <ASSET> <AMOUNT>` | Sell at current live price, crediting virtual USDT balance |
|
|
423
|
+
| `omnitrade paper portfolio` | Show all virtual holdings with live valuations and P&L |
|
|
424
|
+
| `omnitrade paper history` | View the full list of paper trades with timestamps and prices |
|
|
425
|
+
| `omnitrade paper reset` | Wipe trade history and reset balance to $10,000 USDT |
|
|
426
|
+
|
|
427
|
+
Paper trading state is stored locally in `~/.omnitrade/paper.json` — separate from your live trading config. It has no impact on real orders.
|
|
428
|
+
|
|
429
|
+
<br />
|
|
430
|
+
|
|
431
|
+
## 🖥 CLI Commands
|
|
432
|
+
|
|
433
|
+
OmniTrade ships with a standalone CLI for setup, monitoring, and background operation — separate from the MCP server that Claude uses.
|
|
434
|
+
|
|
435
|
+
### Daemon — Background Price Monitoring
|
|
436
|
+
|
|
437
|
+
The daemon runs in the background and fires notifications when your price alerts trigger, even when Claude isn't open.
|
|
438
|
+
|
|
439
|
+
```bash
|
|
440
|
+
# Start the background daemon
|
|
441
|
+
omnitrade daemon start
|
|
442
|
+
|
|
443
|
+
# Check if the daemon is running (shows PID, uptime, recent log)
|
|
444
|
+
omnitrade daemon status
|
|
445
|
+
|
|
446
|
+
# Stop the daemon
|
|
447
|
+
omnitrade daemon stop
|
|
219
448
|
```
|
|
220
|
-
You: "Buy ETH if it drops 5%"
|
|
221
|
-
Claude: ✅ Conditional order created
|
|
222
|
-
When: ETH price decreases by 5% (from $3,245.20)
|
|
223
|
-
Will execute: MARKET BUY 0.5 ETH
|
|
224
449
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
450
|
+
| Command | Description |
|
|
451
|
+
|---------|-------------|
|
|
452
|
+
| `omnitrade daemon start` | Spawns the daemon as a detached background process. Writes a PID file to `~/.omnitrade/daemon.pid`. Logs to `~/.omnitrade/daemon.log`. |
|
|
453
|
+
| `omnitrade daemon status` | Shows whether the daemon is running, its PID, uptime, and the last 5 lines of the activity log. |
|
|
454
|
+
| `omnitrade daemon stop` | Sends SIGTERM to the daemon for a clean shutdown (waits up to 5s, then force-kills if needed). |
|
|
455
|
+
|
|
456
|
+
The daemon poll interval defaults to **60 seconds** and is configurable in `~/.omnitrade/config.json`:
|
|
457
|
+
|
|
458
|
+
```json
|
|
459
|
+
{
|
|
460
|
+
"daemon": {
|
|
461
|
+
"pollInterval": 30
|
|
462
|
+
}
|
|
463
|
+
}
|
|
229
464
|
```
|
|
230
465
|
|
|
231
|
-
###
|
|
466
|
+
### Watch — Live Terminal Price Ticker
|
|
467
|
+
|
|
468
|
+
Stream live prices for one or more assets directly in your terminal. Updates every 5 seconds.
|
|
469
|
+
|
|
470
|
+
```bash
|
|
471
|
+
# Watch a single asset (defaults to USDT pair)
|
|
472
|
+
omnitrade watch BTC
|
|
473
|
+
|
|
474
|
+
# Watch multiple assets simultaneously
|
|
475
|
+
omnitrade watch BTC ETH SOL
|
|
476
|
+
|
|
477
|
+
# Watch full trading pairs
|
|
478
|
+
omnitrade watch BTC/USDT ETH/BTC SOL/ETH
|
|
232
479
|
```
|
|
233
|
-
You: "Find arbitrage for BTC"
|
|
234
|
-
Claude: Found 1 opportunity:
|
|
235
|
-
Buy BTC on Kraken: $42,150
|
|
236
|
-
Sell BTC on Binance: $42,300
|
|
237
|
-
Spread: 0.36% ($150)
|
|
238
480
|
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
481
|
+
The ticker auto-detects your configured exchange (falls back to public Binance data if no config exists). Each row shows the current price, direction indicator (▲ / ▼), and the change since the previous poll. If a symbol is **invalid or not available** on the exchange, the row is displayed in red with `⚠ INVALID` — it will never silently show `$0.00`.
|
|
482
|
+
|
|
483
|
+
Press **Ctrl+C** to exit the watch view cleanly.
|
|
484
|
+
|
|
485
|
+
### Setup — Interactive Configuration Wizard
|
|
486
|
+
|
|
487
|
+
Configure everything in ~2 minutes with the interactive setup wizard.
|
|
488
|
+
|
|
489
|
+
```bash
|
|
490
|
+
omnitrade setup
|
|
247
491
|
```
|
|
248
492
|
|
|
249
|
-
|
|
493
|
+
The wizard walks you through:
|
|
494
|
+
|
|
495
|
+
1. **Exchange API keys** — Binance, Coinbase, Kraken, and 104+ more
|
|
496
|
+
2. **Security settings** — order size limits, allowed pairs, testnet mode
|
|
497
|
+
3. **Notification channels** — choose how to receive price alerts:
|
|
250
498
|
|
|
251
|
-
|
|
499
|
+
| Channel | How to configure |
|
|
500
|
+
|---------|-----------------|
|
|
501
|
+
| **Native OS** | Zero setup — uses system notifications on macOS, Windows, and Linux |
|
|
502
|
+
| **Telegram** | Create a bot via [@BotFather](https://t.me/BotFather), get your token + chat ID |
|
|
503
|
+
| **Discord** | Create a webhook in your server's channel settings, paste the URL |
|
|
252
504
|
|
|
253
|
-
**
|
|
505
|
+
4. **Claude integration** — auto-writes to Claude Desktop config and optionally `~/.claude/settings.json` for Claude Code
|
|
506
|
+
|
|
507
|
+
You can re-run `omnitrade setup` at any time to update credentials or add new notification channels.
|
|
508
|
+
|
|
509
|
+
### Dashboard — Full-Screen TUI *(v0.9.0)*
|
|
510
|
+
|
|
511
|
+
Launch the Bloomberg Terminal-style interface with live prices, charts, and portfolio panel.
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
omnitrade dashboard
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
| Command | Description |
|
|
518
|
+
|---------|-------------|
|
|
519
|
+
| `omnitrade dashboard` | Opens the full-screen TUI. Press `q` or `Ctrl+C` to exit. No arguments required — reads your existing config. |
|
|
520
|
+
|
|
521
|
+
### Paper — Risk-Free Practice Trading *(v0.9.0)*
|
|
522
|
+
|
|
523
|
+
Trade against live prices using a virtual $10,000 USDT wallet. State persists between sessions.
|
|
524
|
+
|
|
525
|
+
```bash
|
|
526
|
+
# Buy and sell with virtual funds
|
|
527
|
+
omnitrade paper buy BTC 0.01
|
|
528
|
+
omnitrade paper sell ETH 0.5
|
|
529
|
+
|
|
530
|
+
# Review your positions and history
|
|
531
|
+
omnitrade paper portfolio
|
|
532
|
+
omnitrade paper history
|
|
533
|
+
|
|
534
|
+
# Start fresh
|
|
535
|
+
omnitrade paper reset
|
|
536
|
+
```
|
|
537
|
+
|
|
538
|
+
| Command | Description |
|
|
539
|
+
|---------|-------------|
|
|
540
|
+
| `omnitrade paper buy <ASSET> <AMOUNT>` | Buy at the current live price. Deducts USDT from virtual wallet. |
|
|
541
|
+
| `omnitrade paper sell <ASSET> <AMOUNT>` | Sell at the current live price. Credits USDT to virtual wallet. |
|
|
542
|
+
| `omnitrade paper portfolio` | Show all virtual holdings with live valuations and total P&L. |
|
|
543
|
+
| `omnitrade paper history` | List every paper trade with timestamp, price, and value at execution. |
|
|
544
|
+
| `omnitrade paper reset` | Reset virtual wallet to $10,000 USDT and clear trade history. |
|
|
545
|
+
|
|
546
|
+
<br />
|
|
547
|
+
|
|
548
|
+
## 🛠 Tools
|
|
549
|
+
|
|
550
|
+
OmniTrade provides **40 tools** organized by category:
|
|
551
|
+
|
|
552
|
+
<details>
|
|
553
|
+
<summary><b>Core Trading</b> — Balances, prices, orders</summary>
|
|
554
|
+
|
|
555
|
+
| Tool | Description |
|
|
556
|
+
|------|-------------|
|
|
557
|
+
| `get_balances` | Get balances from one or all exchanges |
|
|
558
|
+
| `get_portfolio` | Unified portfolio view with totals |
|
|
559
|
+
| `get_prices` | Current price for any trading pair |
|
|
560
|
+
| `compare_prices` | Find best price across all exchanges |
|
|
561
|
+
| `place_order` | Execute market or limit orders |
|
|
562
|
+
| `get_orders` | View open and recent orders |
|
|
563
|
+
| `cancel_order` | Cancel an open order |
|
|
564
|
+
|
|
565
|
+
</details>
|
|
566
|
+
|
|
567
|
+
<details>
|
|
568
|
+
<summary><b>Arbitrage</b> — Cross-exchange opportunities</summary>
|
|
569
|
+
|
|
570
|
+
| Tool | Description |
|
|
571
|
+
|------|-------------|
|
|
572
|
+
| `get_arbitrage` | Scan for arbitrage opportunities |
|
|
573
|
+
| `execute_arbitrage` | Execute arbitrage trades |
|
|
574
|
+
| `check_spread` | Check bid/ask spread on a pair |
|
|
254
575
|
|
|
255
|
-
|
|
576
|
+
</details>
|
|
256
577
|
|
|
257
|
-
|
|
578
|
+
<details>
|
|
579
|
+
<summary><b>Price Alerts</b> — Notifications & triggers</summary>
|
|
580
|
+
|
|
581
|
+
| Tool | Description |
|
|
582
|
+
|------|-------------|
|
|
583
|
+
| `set_price_alert` | Create price alerts (above/below) |
|
|
584
|
+
| `list_alerts` | View all alerts and their status |
|
|
585
|
+
| `check_alerts` | Check if any alerts triggered |
|
|
586
|
+
| `remove_alert` | Delete a specific alert |
|
|
587
|
+
| `clear_triggered_alerts` | Clear triggered alert history |
|
|
588
|
+
|
|
589
|
+
</details>
|
|
590
|
+
|
|
591
|
+
<details>
|
|
592
|
+
<summary><b>Charts & Analytics</b> — Visualization & tracking</summary>
|
|
593
|
+
|
|
594
|
+
| Tool | Description |
|
|
595
|
+
|------|-------------|
|
|
596
|
+
| `get_chart` | Rich SVG price charts (1h/4h/24h/7d) |
|
|
597
|
+
| `record_portfolio_snapshot` | Save current portfolio value |
|
|
598
|
+
| `get_portfolio_history` | View P&L over time |
|
|
599
|
+
| `clear_portfolio_history` | Reset portfolio history |
|
|
600
|
+
|
|
601
|
+
</details>
|
|
602
|
+
|
|
603
|
+
<details>
|
|
604
|
+
<summary><b>Portfolio Management</b> — Rebalancing</summary>
|
|
605
|
+
|
|
606
|
+
| Tool | Description |
|
|
607
|
+
|------|-------------|
|
|
608
|
+
| `rebalance_portfolio` | Calculate and execute rebalance |
|
|
609
|
+
|
|
610
|
+
</details>
|
|
611
|
+
|
|
612
|
+
<details>
|
|
613
|
+
<summary><b>DCA (Dollar Cost Averaging)</b> — Recurring buys</summary>
|
|
614
|
+
|
|
615
|
+
| Tool | Description |
|
|
616
|
+
|------|-------------|
|
|
617
|
+
| `setup_dca` | Create DCA strategy |
|
|
618
|
+
| `list_dca_configs` | View all DCA configurations |
|
|
619
|
+
| `execute_dca_orders` | Run pending DCA orders |
|
|
620
|
+
| `toggle_dca` | Enable/disable DCA configs |
|
|
621
|
+
| `remove_dca` | Delete DCA configuration |
|
|
622
|
+
|
|
623
|
+
</details>
|
|
624
|
+
|
|
625
|
+
<details>
|
|
626
|
+
<summary><b>Conditional Orders</b> — Price-triggered trades</summary>
|
|
627
|
+
|
|
628
|
+
| Tool | Description |
|
|
629
|
+
|------|-------------|
|
|
630
|
+
| `set_conditional_order` | Create conditional order |
|
|
631
|
+
| `list_conditional_orders` | View all conditional orders |
|
|
632
|
+
| `check_conditional_orders` | Check and execute conditions |
|
|
633
|
+
| `remove_conditional_order` | Delete conditional order |
|
|
634
|
+
|
|
635
|
+
</details>
|
|
636
|
+
|
|
637
|
+
<details>
|
|
638
|
+
<summary><b>Paper Trading</b> — Risk-free practice with live prices <em>(v0.9.0)</em></summary>
|
|
639
|
+
|
|
640
|
+
| Tool | Description |
|
|
641
|
+
|------|-------------|
|
|
642
|
+
| `paper_buy` | Buy an asset in the virtual wallet at the current live price |
|
|
643
|
+
| `paper_sell` | Sell an asset from the virtual wallet at the current live price |
|
|
644
|
+
| `get_paper_portfolio` | View virtual holdings, live valuations, and total P&L |
|
|
645
|
+
| `get_paper_history` | List all paper trades with timestamps and execution prices |
|
|
646
|
+
| `reset_paper_wallet` | Reset virtual wallet to $10,000 USDT and clear trade history |
|
|
647
|
+
|
|
648
|
+
</details>
|
|
649
|
+
|
|
650
|
+
<br />
|
|
651
|
+
|
|
652
|
+
## 🔒 Security
|
|
258
653
|
|
|
259
654
|
### Local-Only Architecture
|
|
260
655
|
|
|
261
656
|
```
|
|
262
|
-
|
|
263
|
-
│
|
|
264
|
-
│
|
|
265
|
-
│
|
|
266
|
-
│
|
|
267
|
-
│
|
|
268
|
-
│
|
|
269
|
-
│
|
|
270
|
-
|
|
271
|
-
|
|
657
|
+
┌─────────────────────────────────────────────────────────┐
|
|
658
|
+
│ YOUR MACHINE │
|
|
659
|
+
│ │
|
|
660
|
+
│ ┌──────────┐ ┌─────────────────┐ │
|
|
661
|
+
│ │ Claude │ ◄─────► │ OmniTrade MCP │ │
|
|
662
|
+
│ └──────────┘ MCP └────────┬────────┘ │
|
|
663
|
+
│ │ │
|
|
664
|
+
│ ~/.omnitrade/config.json │
|
|
665
|
+
│ (your keys, chmod 600) │
|
|
666
|
+
│ │ │
|
|
667
|
+
└─────────────────────────────────│────────────────────────┘
|
|
668
|
+
│ HTTPS
|
|
669
|
+
▼
|
|
670
|
+
┌─────────────────────────┐
|
|
671
|
+
│ Exchange APIs │
|
|
672
|
+
│ (Binance, Coinbase, │
|
|
673
|
+
│ Kraken, etc.) │
|
|
674
|
+
└─────────────────────────┘
|
|
272
675
|
```
|
|
273
676
|
|
|
274
|
-
- ✅ API keys stay on your machine
|
|
275
|
-
- ✅ No cloud storage
|
|
276
|
-
- ✅ No telemetry
|
|
277
|
-
- ✅ Open source —
|
|
677
|
+
- ✅ **API keys stay on your machine** — Never sent anywhere else
|
|
678
|
+
- ✅ **No cloud storage** — Everything local
|
|
679
|
+
- ✅ **No telemetry** — Zero data collection
|
|
680
|
+
- ✅ **Open source** — [Audit the code yourself](https://github.com/Connectry-io/omnitrade-mcp)
|
|
278
681
|
|
|
279
682
|
### API Key Best Practices
|
|
280
683
|
|
|
281
|
-
|
|
684
|
+
<table>
|
|
685
|
+
<tr>
|
|
686
|
+
<td>
|
|
687
|
+
|
|
688
|
+
**✅ Always**
|
|
282
689
|
- Enable only View + Trade permissions
|
|
283
|
-
- **Disable** withdrawal permissions
|
|
284
690
|
- Use IP restrictions when available
|
|
285
|
-
- Use testnet for testing
|
|
691
|
+
- Use testnet for testing first
|
|
692
|
+
- Set `chmod 600` on config file
|
|
286
693
|
|
|
287
|
-
|
|
694
|
+
</td>
|
|
695
|
+
<td>
|
|
696
|
+
|
|
697
|
+
**❌ Never**
|
|
698
|
+
- Enable withdrawal permissions
|
|
288
699
|
- Share your config file
|
|
289
700
|
- Commit config to git
|
|
290
|
-
-
|
|
701
|
+
- Skip testnet testing
|
|
291
702
|
|
|
292
|
-
|
|
703
|
+
</td>
|
|
704
|
+
</tr>
|
|
705
|
+
</table>
|
|
293
706
|
|
|
294
|
-
|
|
295
|
-
{
|
|
296
|
-
"security": {
|
|
297
|
-
"maxOrderSize": 100, // Max $100 per order
|
|
298
|
-
"allowedPairs": ["BTC/USDT", "ETH/USDT"], // Whitelist
|
|
299
|
-
"testnetOnly": true, // Force testnet
|
|
300
|
-
"confirmTrades": true // Require confirmation
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
```
|
|
707
|
+
### Safety Settings
|
|
304
708
|
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
### Full Config Example
|
|
709
|
+
Configure trading limits in `~/.omnitrade/config.json`:
|
|
308
710
|
|
|
309
711
|
```json
|
|
310
712
|
{
|
|
311
|
-
"exchanges": {
|
|
312
|
-
"binance": {
|
|
313
|
-
"apiKey": "xxx",
|
|
314
|
-
"secret": "xxx",
|
|
315
|
-
"testnet": true
|
|
316
|
-
},
|
|
317
|
-
"coinbase": {
|
|
318
|
-
"apiKey": "xxx",
|
|
319
|
-
"secret": "xxx",
|
|
320
|
-
"password": "xxx",
|
|
321
|
-
"testnet": true
|
|
322
|
-
},
|
|
323
|
-
"kraken": {
|
|
324
|
-
"apiKey": "xxx",
|
|
325
|
-
"secret": "xxx",
|
|
326
|
-
"testnet": false
|
|
327
|
-
}
|
|
328
|
-
},
|
|
329
|
-
"defaultExchange": "binance",
|
|
330
713
|
"security": {
|
|
331
714
|
"maxOrderSize": 100,
|
|
332
|
-
"allowedPairs": ["BTC/USDT", "ETH/USDT"
|
|
333
|
-
"testnetOnly":
|
|
715
|
+
"allowedPairs": ["BTC/USDT", "ETH/USDT"],
|
|
716
|
+
"testnetOnly": true,
|
|
334
717
|
"confirmTrades": true
|
|
335
718
|
}
|
|
336
719
|
}
|
|
337
720
|
```
|
|
338
721
|
|
|
339
|
-
|
|
722
|
+
<br />
|
|
340
723
|
|
|
341
|
-
|
|
724
|
+
## 🏦 Supported Exchanges
|
|
342
725
|
|
|
343
|
-
|
|
344
|
-
2. `./omnitrade.config.json`
|
|
345
|
-
3. `./.omnitrade.json`
|
|
726
|
+
OmniTrade supports **107 exchanges** through [CCXT](https://github.com/ccxt/ccxt):
|
|
346
727
|
|
|
347
|
-
|
|
728
|
+
**Tier 1 (Certified)**
|
|
729
|
+
> Binance • Bybit • OKX • Gate.io • KuCoin • Bitget • HTX • Crypto.com • MEXC • WOO X • Hyperliquid
|
|
348
730
|
|
|
349
|
-
|
|
731
|
+
**Tier 2**
|
|
732
|
+
> Coinbase • Kraken • Bitstamp • Gemini • Bitfinex • Poloniex • Deribit • Upbit • Bithumb • Bitvavo
|
|
350
733
|
|
|
351
|
-
|
|
352
|
-
2. Login with GitHub
|
|
353
|
-
3. Generate API keys
|
|
354
|
-
4. Get free testnet coins from faucet
|
|
734
|
+
**+ 87 more** via [CCXT](https://github.com/ccxt/ccxt/wiki/Exchange-Markets)
|
|
355
735
|
|
|
356
|
-
|
|
736
|
+
<br />
|
|
357
737
|
|
|
358
|
-
|
|
359
|
-
2. Create new project
|
|
360
|
-
3. Enable sandbox mode
|
|
361
|
-
4. Generate API keys
|
|
738
|
+
## 🤝 Contributing
|
|
362
739
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
```
|
|
366
|
-
⚠️ IMPORTANT
|
|
740
|
+
We love contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
|
367
741
|
|
|
368
|
-
|
|
742
|
+
```bash
|
|
743
|
+
# Clone the repo
|
|
744
|
+
git clone https://github.com/Connectry-io/omnitrade-mcp.git
|
|
745
|
+
cd omnitrade-mcp
|
|
369
746
|
|
|
370
|
-
|
|
371
|
-
|
|
747
|
+
# Install dependencies
|
|
748
|
+
npm install
|
|
372
749
|
|
|
373
|
-
|
|
374
|
-
|
|
750
|
+
# Build
|
|
751
|
+
npm run build
|
|
375
752
|
|
|
376
|
-
|
|
377
|
-
|
|
753
|
+
# Run locally
|
|
754
|
+
node dist/cli.js setup
|
|
378
755
|
```
|
|
379
756
|
|
|
380
|
-
|
|
757
|
+
<br />
|
|
758
|
+
|
|
759
|
+
## 📄 License
|
|
760
|
+
|
|
761
|
+
MIT © [Connectry Labs](https://connectry.io/labs)
|
|
381
762
|
|
|
382
|
-
|
|
763
|
+
<br />
|
|
383
764
|
|
|
384
|
-
##
|
|
765
|
+
## 🙏 Credits
|
|
385
766
|
|
|
386
|
-
- [
|
|
387
|
-
- [
|
|
388
|
-
- [
|
|
389
|
-
|
|
767
|
+
- [CCXT](https://github.com/ccxt/ccxt) — Unified exchange library
|
|
768
|
+
- [Anthropic](https://anthropic.com) — Claude & MCP
|
|
769
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/) — The protocol that makes this possible
|
|
770
|
+
|
|
771
|
+
<br />
|
|
390
772
|
|
|
391
773
|
---
|
|
392
774
|
|
|
393
|
-
|
|
775
|
+
## ⚠️ Disclaimer
|
|
776
|
+
|
|
777
|
+
OmniTrade is an experimental developer tool provided under the MIT License. It does not constitute financial advice, investment advice, or any other form of advice. **Connectry Labs is not a licensed financial advisor.** Cryptocurrency trading involves substantial risk of loss and is not appropriate for all investors.
|
|
778
|
+
|
|
779
|
+
- Past performance is not indicative of future results
|
|
780
|
+
- You are solely responsible for your trading decisions
|
|
781
|
+
- Always conduct your own research
|
|
782
|
+
- Consult a qualified financial advisor before investing
|
|
783
|
+
- Never trade more than you can afford to lose
|
|
784
|
+
|
|
785
|
+
OmniTrade is a project by [Connectry Labs](https://connectry.io/labs) — the innovation lab of [Connectry](https://connectry.io).
|
|
786
|
+
|
|
787
|
+
<br />
|
|
788
|
+
|
|
789
|
+
<p align="center">
|
|
790
|
+
<sub>Built with ⚡ by <a href="https://connectry.io/labs">Connectry Labs</a></sub>
|
|
791
|
+
</p>
|
|
792
|
+
|
|
793
|
+
<p align="center">
|
|
794
|
+
<a href="https://github.com/Connectry-io/omnitrade-mcp">GitHub</a> •
|
|
795
|
+
<a href="https://www.npmjs.com/package/omnitrade-mcp">npm</a> •
|
|
796
|
+
<a href="https://connectry.io/labs/omnitrade">Website</a>
|
|
797
|
+
</p>
|