tradeblocks-mcp 0.2.4 → 0.4.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 +47 -20
- package/dist/chunk-5WRI5ZAA.js +31 -0
- package/dist/chunk-5WRI5ZAA.js.map +1 -0
- package/dist/chunk-GI53PYRT.js +867 -0
- package/dist/chunk-GI53PYRT.js.map +1 -0
- package/dist/chunk-KRHCV4RF.js +442 -0
- package/dist/chunk-KRHCV4RF.js.map +1 -0
- package/dist/chunk-MIVAK2ZU.js +389 -0
- package/dist/chunk-MIVAK2ZU.js.map +1 -0
- package/dist/chunk-PWM4JHGO.js +320 -0
- package/dist/chunk-PWM4JHGO.js.map +1 -0
- package/dist/daily-log-processor-2X7STI2Q.js +9 -0
- package/dist/daily-log-processor-2X7STI2Q.js.map +1 -0
- package/dist/daily-logs-store-NJQC7NBG.js +30 -0
- package/dist/daily-logs-store-NJQC7NBG.js.map +1 -0
- package/dist/test-exports.js +2897 -2550
- package/dist/test-exports.js.map +1 -1
- package/dist/trade-processor-W3H4LVRS.js +9 -0
- package/dist/trade-processor-W3H4LVRS.js.map +1 -0
- package/dist/trades-store-M7VXK35A.js +32 -0
- package/dist/trades-store-M7VXK35A.js.map +1 -0
- package/manifest.json +12 -4
- package/package.json +6 -2
- package/server/chunk-4R6HHOMZ.js +446 -0
- package/server/chunk-4R6HHOMZ.js.map +1 -0
- package/server/chunk-5IDEDNE3.js +321 -0
- package/server/chunk-5IDEDNE3.js.map +1 -0
- package/server/chunk-JCL22FXE.js +1536 -0
- package/server/chunk-JCL22FXE.js.map +1 -0
- package/server/chunk-RROWW55T.js +390 -0
- package/server/chunk-RROWW55T.js.map +1 -0
- package/server/chunk-SEGVTWSK.js +44 -0
- package/server/chunk-SEGVTWSK.js.map +1 -0
- package/server/chunk-WPCACQSP.js +12701 -0
- package/server/chunk-WPCACQSP.js.map +1 -0
- package/server/chunk-WTNFQPOM.js +869 -0
- package/server/chunk-WTNFQPOM.js.map +1 -0
- package/server/daily-log-processor-4WDKMV5C.js +11 -0
- package/server/daily-log-processor-4WDKMV5C.js.map +1 -0
- package/server/daily-logs-store-J2TKMNZA.js +31 -0
- package/server/daily-logs-store-J2TKMNZA.js.map +1 -0
- package/server/http-server.js +27 -0
- package/server/index.js +7980 -21238
- package/server/index.js.map +1 -1
- package/server/trade-processor-XW6TUD7B.js +11 -0
- package/server/trade-processor-XW6TUD7B.js.map +1 -0
- package/server/trades-store-ENKBF2Q2.js +33 -0
- package/server/trades-store-ENKBF2Q2.js.map +1 -0
package/README.md
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
# TradeBlocks MCP Server
|
|
2
2
|
|
|
3
|
-
Model Context Protocol (MCP) server for options trading analysis.
|
|
3
|
+
Model Context Protocol (MCP) server for options trading analysis. Works with Claude Desktop, Claude Code, Codex CLI, Gemini CLI, ChatGPT, Google AI Studio, and any MCP-compatible client.
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
|
-
- **
|
|
7
|
+
- **21 MCP tools** for comprehensive trading analysis
|
|
8
|
+
- **Two transport modes**: stdio (CLI tools) and HTTP (web platforms)
|
|
8
9
|
- **Block-based data organization** - each folder is a trading strategy
|
|
9
|
-
- **Automatic caching** - statistics cached in
|
|
10
|
+
- **Automatic caching** - statistics cached in `block.json` for fast access
|
|
10
11
|
- **Flexible CSV detection** - auto-detects file types by column headers
|
|
11
|
-
- **Cross-platform** - works with Claude, Codex CLI, Gemini CLI, and any MCP client
|
|
12
12
|
|
|
13
13
|
## Installation
|
|
14
14
|
|
|
@@ -18,27 +18,20 @@ Download the latest `.mcpb` file from [GitHub Releases](https://github.com/david
|
|
|
18
18
|
|
|
19
19
|
The installer will prompt you to select your Trading Data Directory.
|
|
20
20
|
|
|
21
|
-
### Option 2: npx (
|
|
21
|
+
### Option 2: npx (All Platforms)
|
|
22
22
|
|
|
23
23
|
Run directly without installation:
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
+
# stdio mode (Claude Desktop, Claude Code, Codex CLI, Gemini CLI)
|
|
26
27
|
npx tradeblocks-mcp ~/Trading/backtests
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
For Claude Desktop, add to your config file:
|
|
30
28
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"mcpServers": {
|
|
34
|
-
"tradeblocks": {
|
|
35
|
-
"command": "npx",
|
|
36
|
-
"args": ["tradeblocks-mcp", "/path/to/your/backtests"]
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
29
|
+
# HTTP mode (ChatGPT, Google AI Studio, Julius AI)
|
|
30
|
+
npx tradeblocks-mcp --http ~/Trading/backtests
|
|
40
31
|
```
|
|
41
32
|
|
|
33
|
+
See [Configuration by Platform](#configuration-by-platform) below for platform-specific setup.
|
|
34
|
+
|
|
42
35
|
### Option 3: From Source
|
|
43
36
|
|
|
44
37
|
```bash
|
|
@@ -54,8 +47,8 @@ node packages/mcp-server/server/index.js ~/Trading/backtests
|
|
|
54
47
|
## Quick Start
|
|
55
48
|
|
|
56
49
|
1. **Set up your data** - Create folders for each strategy with CSV files
|
|
57
|
-
2. **Connect
|
|
58
|
-
3. **Start analyzing** - Ask
|
|
50
|
+
2. **Connect your AI platform** - See [Configuration by Platform](#configuration-by-platform) below
|
|
51
|
+
3. **Start analyzing** - Ask your AI to "list my backtests" or "run a health check on iron-condor"
|
|
59
52
|
|
|
60
53
|
For detailed usage examples, see [docs/USAGE.md](docs/USAGE.md).
|
|
61
54
|
|
|
@@ -126,6 +119,40 @@ Add to `~/.gemini/settings.json`:
|
|
|
126
119
|
|
|
127
120
|
See [Gemini CLI MCP documentation](https://geminicli.com/docs/tools/mcp-server/) for more options.
|
|
128
121
|
|
|
122
|
+
### Web Platforms (ChatGPT, Google AI Studio, Julius)
|
|
123
|
+
|
|
124
|
+
Web AI platforms require HTTP transport with an ngrok tunnel:
|
|
125
|
+
|
|
126
|
+
**Terminal 1:** Start HTTP server
|
|
127
|
+
```bash
|
|
128
|
+
tradeblocks-mcp --http ~/Trading/backtests
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Terminal 2:** Expose via ngrok
|
|
132
|
+
```bash
|
|
133
|
+
ngrok http 3100
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
Then add the ngrok URL (`https://xxx.ngrok.io/mcp`) to your platform's MCP settings.
|
|
137
|
+
|
|
138
|
+
See [Web Platforms Guide](docs/WEB-PLATFORMS.md) for detailed setup instructions.
|
|
139
|
+
|
|
140
|
+
## Transport Modes
|
|
141
|
+
|
|
142
|
+
| Mode | Flag | Use Case | Platforms |
|
|
143
|
+
|------|------|----------|-----------|
|
|
144
|
+
| stdio | (default) | Local CLI tools | Claude Desktop, Claude Code, Codex CLI, Gemini CLI |
|
|
145
|
+
| HTTP | `--http` | Web platforms via ngrok | ChatGPT, Google AI Studio, Julius AI |
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
# stdio mode (default)
|
|
149
|
+
tradeblocks-mcp ~/backtests
|
|
150
|
+
|
|
151
|
+
# HTTP mode
|
|
152
|
+
tradeblocks-mcp --http ~/backtests
|
|
153
|
+
tradeblocks-mcp --http --port 8080 ~/backtests
|
|
154
|
+
```
|
|
155
|
+
|
|
129
156
|
## Agent Skills
|
|
130
157
|
|
|
131
158
|
For guided conversational workflows, install the bundled agent skills:
|
|
@@ -163,7 +190,7 @@ backtests/
|
|
|
163
190
|
tradelog.csv # Required - trade history
|
|
164
191
|
dailylog.csv # Optional - daily portfolio values
|
|
165
192
|
reportinglog.csv # Optional - live/reported trades
|
|
166
|
-
|
|
193
|
+
block.json # Auto-generated - cached metadata
|
|
167
194
|
NDX-Put-Spread/
|
|
168
195
|
my-export.csv # Works! Auto-detected by columns
|
|
169
196
|
...
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
19
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
20
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
21
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
22
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
23
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
24
|
+
mod
|
|
25
|
+
));
|
|
26
|
+
|
|
27
|
+
export {
|
|
28
|
+
__commonJS,
|
|
29
|
+
__toESM
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=chunk-5WRI5ZAA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|