@dwlf/mcp-server 0.29.0 → 0.30.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.
@@ -8,7 +8,7 @@ export type NodeParam = {
8
8
  };
9
9
  export type StrategyNode = {
10
10
  nodeType: string;
11
- category: 'signal' | 'stopLoss' | 'takeProfit' | 'logic' | 'cancellation' | 'exit';
11
+ category: 'signal' | 'stopLoss' | 'takeProfit' | 'logic' | 'cancellation' | 'condition' | 'exit';
12
12
  description: string;
13
13
  params: NodeParam[];
14
14
  notes?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"strategyNodeMetadata.d.ts","sourceRoot":"","sources":["../../src/data/strategyNodeMetadata.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAItB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,cAAc,GAAG,MAAM,CAAC;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,YAAY,EA8TxC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEhF;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,YAAY,EAAE,CAE7F"}
1
+ {"version":3,"file":"strategyNodeMetadata.d.ts","sourceRoot":"","sources":["../../src/data/strategyNodeMetadata.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAItB,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,cAAc,GAAG,WAAW,GAAG,MAAM,CAAC;IACjG,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,YAAY,EAuWxC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAEhF;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,YAAY,EAAE,CAE7F"}
@@ -302,6 +302,40 @@ export const STRATEGY_NODES = [
302
302
  },
303
303
  ],
304
304
  },
305
+ // ── Conditions (event nodes with honored params) ───────────────────
306
+ // The full set of event/condition nodes (cycle events, EMA events, swing
307
+ // patterns, etc.) is large and mostly parameter-free; only nodes with an
308
+ // executor-honored per-instance parameter are catalogued here.
309
+ {
310
+ nodeType: 'trendline_break_bullish',
311
+ category: 'condition',
312
+ description: 'Fires when price closes above a resistance trendline (bullish break). Matches stored trendline_break_bullish / trendline_breach_bullish events on the node\'s timeframe. Alias: bullish_trend_break.',
313
+ params: [
314
+ {
315
+ name: 'minTrendlineLengthDays',
316
+ type: 'number',
317
+ default: 0,
318
+ description: 'Minimum age of the broken trendline in CALENDAR days, measured anchor → break. The break only counts when the line has spanned at least this long — use it to ignore breaks of short, insignificant lines and require a meaningful one (e.g. 60 ≈ two months). 0 / absent = no age filter. Applies to daily and weekly lines alike. Breaks whose anchor date is unknown (events predating the anchor stamp / not yet backfilled) fail closed when this is set.',
319
+ honoredByExecutor: true,
320
+ },
321
+ ],
322
+ notes: 'Anchor date is stamped onto break/breach events at emit time (trendlineStartDate). Historical events need the break-event backfill before the age filter behaves correctly over old data; live events carry it going forward.',
323
+ },
324
+ {
325
+ nodeType: 'trendline_break_bearish',
326
+ category: 'condition',
327
+ description: 'Fires when price closes below a support trendline (bearish break). Matches stored trendline_break_bearish / trendline_breach_bearish events on the node\'s timeframe. Alias: bearish_trend_break.',
328
+ params: [
329
+ {
330
+ name: 'minTrendlineLengthDays',
331
+ type: 'number',
332
+ default: 0,
333
+ description: 'Minimum age of the broken trendline in CALENDAR days, measured anchor → break. The break only counts when the line has spanned at least this long. 0 / absent = no age filter. Applies to daily and weekly lines alike. Breaks whose anchor date is unknown fail closed when this is set.',
334
+ honoredByExecutor: true,
335
+ },
336
+ ],
337
+ notes: 'Same anchor-stamp / backfill caveat as trendline_break_bullish.',
338
+ },
305
339
  // ── Exit graph ─────────────────────────────────────────────────────
306
340
  {
307
341
  nodeType: 'exit_start',
@@ -1 +1 @@
1
- {"version":3,"file":"strategyNodeMetadata.js","sourceRoot":"","sources":["../../src/data/strategyNodeMetadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategyNodeMetadata.js","sourceRoot":"","sources":["../../src/data/strategyNodeMetadata.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/tools/annotations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AAE3D,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,UAAU,QAqJnB"}
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/tools/annotations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAC;AA+C3D,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,UAAU,QA4KnB"}
@@ -1,8 +1,50 @@
1
1
  import { z } from 'zod';
2
2
  import { normalizeSymbol } from '../client.js';
3
+ /**
4
+ * Annotation types the backend accepts. MUST stay in sync with VALID_TYPES in
5
+ * serverless-portfolio-tracker/src/db/annotationsService.js — the backend 400s
6
+ * on anything outside that list. Keep this the single source of truth on the
7
+ * MCP side and reference it from every tool that takes a `type`.
8
+ */
9
+ const ANNOTATION_TYPES = [
10
+ 'hline', 'text', 'vline', 'ray', 'trendline', 'channel', 'rectangle',
11
+ 'fib_retracement', 'fib_extension', 'pitchfork', 'measure',
12
+ 'arrow', 'brush', 'icon', 'note', 'price_alert',
13
+ 'crossline', 'timerange', 'emoji', 'fibRetracement', 'alert_line',
14
+ 'long_position', 'short_position',
15
+ ];
16
+ const ANNOTATION_ORIGINS = ['user', 'ai', 'system'];
17
+ /**
18
+ * Per-type `data` field reference, appended to the create/bulk tool docs so an
19
+ * agent can build a valid annotation in one shot instead of reverse-engineering
20
+ * shapes from list_annotations. All `time*` fields are unix-ms timestamps; all
21
+ * `price*` fields are chart prices. `color` is a hex string (e.g. "#22c55e"),
22
+ * `lineStyle` is one of "solid"|"dashed"|"dotted", `lineWidth` is a number.
23
+ * visible / locked / zIndex / groupId are TOP-LEVEL fields (not inside `data`).
24
+ */
25
+ const DATA_SHAPES = [
26
+ 'DATA SHAPES BY TYPE (times = unix-ms, prices = chart price):',
27
+ '• hline — {price, color, lineStyle, lineWidth, showPrice, label?}: horizontal price level.',
28
+ '• vline — {time, color, lineStyle, lineWidth, showTime, label?}: vertical time marker.',
29
+ '• text — {time, price, text, fontSize, color, backgroundColor?}: free text box anchored at a point. Use \\n inside `text` for multi-line — long single-line text renders too wide to read, so break it up.',
30
+ '• arrow — {time1, price1, time2, price2, text, fontSize, color, lineStyle, lineWidth}: callout/speech-bubble. The text box sits at (time1,price1); the arrowhead points to (time2,price2). Use this to label a level or zone with a pointer.',
31
+ '• trendline — {time1, price1, time2, price2, color, lineStyle, lineWidth, label?, extendLeft?, extendRight?}: line through two points.',
32
+ '• ray — {time1, price1, time2, price2, color, lineStyle, lineWidth, label?}: half-line from point 1 through point 2.',
33
+ '• rectangle — {time1, price1, time2, price2, color, fillOpacity, lineStyle, lineWidth, label?}: shaded zone between two opposite corners.',
34
+ '• channel — {time1, price1, time2, price2, priceOffset, color, lineStyle, lineWidth, fillOpacity, label?, extendLeft?, extendRight?}: parallel channel; the second rail runs priceOffset above (+) / below (−) the base line.',
35
+ '• crossline — {time, price, color, lineStyle, lineWidth, showPrice, showTime, label?}: crosshair marker at one point.',
36
+ '• emoji — {time, price, emoji, size}: emoji marker (e.g. emoji "🦊").',
37
+ '• timerange — {time1, time2, color, fillOpacity, lineStyle, lineWidth, label?}: vertical time band.',
38
+ '• fibRetracement / measure — {time1, price1, time2, price2, levels:number[], showExtensions, extendRight, color, lineStyle, lineWidth, fillOpacity, label?}: fib/measure between two swing points.',
39
+ '• fib_extension — {time1, price1, time2, price2, color, lineStyle, lineWidth, label?}: extension projection.',
40
+ '• alert_line — {price, color, lineStyle, lineWidth, showPrice, direction:"above"|"below", label?}: price-alert line.',
41
+ '• long_position / short_position — {time1, time2, entryPrice, stopPrice, targetPrice, label?}: renders an entry line, stop+target zones and a live R:R badge.',
42
+ 'ALIASES (same storage — prefer the first of each pair): text over note; emoji over icon; alert_line over price_alert; fibRetracement over fib_retracement.',
43
+ 'TIP: copy an existing shape via dwlf_list_annotations if unsure.',
44
+ ].join('\n');
3
45
  export function registerAnnotationTools(server, client) {
4
46
  // 1. List annotations
5
- server.tool('dwlf_list_annotations', 'List annotations for a symbol. Optionally filter by timeframe (e.g. daily, weekly, hourly).', {
47
+ server.tool('dwlf_list_annotations', 'List annotations for a symbol. Optionally filter by timeframe (e.g. daily, weekly, hourly). Returns each annotation with its annotationId, type, timeframe and full data — copy a data shape from here when you are unsure how to build a new one.', {
6
48
  symbol: z.string().describe('Trading symbol (e.g. BTC, TSLA)'),
7
49
  timeframe: z.string().optional().describe('Timeframe filter (e.g. "daily", "weekly", "hourly")'),
8
50
  }, async ({ symbol, timeframe }) => {
@@ -25,12 +67,12 @@ export function registerAnnotationTools(server, client) {
25
67
  }
26
68
  });
27
69
  // 2. Create annotation
28
- server.tool('dwlf_create_annotation', 'Create a chart annotation. Supported types: hline, text, trendline, rectangle, channel, long_position, short_position. The position types render an entry line, stop and target zones, and a live R:R badgedata shape: {time1, time2, entryPrice, stopPrice, targetPrice, label?}.', {
70
+ server.tool('dwlf_create_annotation', 'Create a chart annotation. `type` selects the shape; `data` carries the type-specific fields documented below. Note `arrow` is the callout/bubble-with-pointer and `text` is a plain text boxfor commentary that points at a level, use `arrow`.\n\n' + DATA_SHAPES, {
29
71
  symbol: z.string().describe('Trading symbol (e.g. BTC, TSLA)'),
30
72
  timeframe: z.string().describe('Timeframe (e.g. "daily", "weekly", "hourly")'),
31
- type: z.enum(['hline', 'text', 'trendline', 'rectangle', 'channel', 'long_position', 'short_position']).describe('Annotation type'),
32
- data: z.record(z.string(), z.unknown()).describe('Annotation data varies by type. hline: {price, color, label, lineStyle, lineWidth, showPrice}. long_position/short_position: {time1, time2, entryPrice, stopPrice, targetPrice, label?} where times are unix-ms timestamps.'),
33
- origin: z.string().optional().describe('Origin of the annotation (default: "user")'),
73
+ type: z.enum(ANNOTATION_TYPES).describe('Annotation type see the data-shape reference in the tool description for the fields each one needs.'),
74
+ data: z.record(z.string(), z.unknown()).describe('Type-specific fields. See DATA SHAPES BY TYPE in the tool description. Max 4KB serialized.'),
75
+ origin: z.enum(ANNOTATION_ORIGINS).optional().describe('Who created it: "user" (default), "ai" (agent-generated — use this for your own annotations), or "system".'),
34
76
  }, async ({ symbol, timeframe, type, data, origin }) => {
35
77
  try {
36
78
  const body = {
@@ -54,14 +96,33 @@ export function registerAnnotationTools(server, client) {
54
96
  }
55
97
  });
56
98
  // 3. Update annotation
57
- server.tool('dwlf_update_annotation', 'Update an existing annotation by ID. Merge partial data into the annotation.', {
58
- annotationId: z.string().describe('Annotation ID'),
59
- data: z.record(z.string(), z.unknown()).optional().describe('Partial annotation data to merge'),
60
- }, async ({ annotationId, data }) => {
99
+ server.tool('dwlf_update_annotation', 'Update an existing annotation. symbol + timeframe are REQUIRED (the backend needs them to locate the row). `data` is merged field-by-field into the existing data — pass only the fields you want to change (e.g. {label: "..."} or {price: 56}); sibling fields are preserved. visible/locked/zIndex/groupId can also be patched.', {
100
+ annotationId: z.string().describe('Annotation ID (e.g. ann_d604ba96a697)'),
101
+ symbol: z.string().describe('Trading symbol the annotation belongs to — required to address the row'),
102
+ timeframe: z.string().describe('Annotation timeframe (e.g. "daily", "weekly", "hourly") required to address the row'),
103
+ data: z.record(z.string(), z.unknown()).optional().describe('Partial data fields to merge (not a full replacement). E.g. {label: "Reclaim ~56"} or {color: "#ef4444"}.'),
104
+ visible: z.boolean().optional().describe('Show/hide the annotation'),
105
+ locked: z.boolean().optional().describe('Lock the annotation against edits'),
106
+ zIndex: z.number().optional().describe('Stacking order'),
107
+ groupId: z.string().nullable().optional().describe('Annotation group/workspace id'),
108
+ }, async ({ annotationId, symbol, timeframe, data, visible, locked, zIndex, groupId }) => {
61
109
  try {
62
- const body = {};
63
- if (data)
110
+ // Backend reads symbol+timeframe off the body to build the sort key,
111
+ // then treats every other top-level field as the patch.
112
+ const body = {
113
+ symbol: normalizeSymbol(symbol),
114
+ timeframe,
115
+ };
116
+ if (data !== undefined)
64
117
  body.data = data;
118
+ if (visible !== undefined)
119
+ body.visible = visible;
120
+ if (locked !== undefined)
121
+ body.locked = locked;
122
+ if (zIndex !== undefined)
123
+ body.zIndex = zIndex;
124
+ if (groupId !== undefined)
125
+ body.groupId = groupId;
65
126
  const result = await client.put(`/annotations/${annotationId}`, body);
66
127
  return {
67
128
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
@@ -75,7 +136,7 @@ export function registerAnnotationTools(server, client) {
75
136
  }
76
137
  });
77
138
  // 4. Delete annotation
78
- server.tool('dwlf_delete_annotation', 'Delete an annotation by ID. Backend requires the annotation\'s symbol and timeframe alongside the ID.', {
139
+ server.tool('dwlf_delete_annotation', 'Delete an annotation by ID. symbol + timeframe are required (the backend needs them to locate the row).', {
79
140
  annotationId: z.string().describe('Annotation ID'),
80
141
  symbol: z.string().describe('Trading symbol the annotation belongs to (e.g. BTC, TSLA, GDXJ)'),
81
142
  timeframe: z.string().describe('Annotation timeframe (e.g. "daily", "weekly", "hourly")'),
@@ -97,21 +158,29 @@ export function registerAnnotationTools(server, client) {
97
158
  }
98
159
  });
99
160
  // 5. Bulk create annotations
100
- server.tool('dwlf_bulk_create_annotations', 'Create multiple annotations at once. Each annotation follows the same shape as dwlf_create_annotation.', {
161
+ server.tool('dwlf_bulk_create_annotations', 'Create multiple annotations in one call (max 25). Each entry follows the same shape as dwlf_create_annotation — see its data-shape reference. Returns a per-item results array; an individual item can fail without aborting the rest.', {
101
162
  annotations: z.array(z.object({
102
163
  symbol: z.string().describe('Trading symbol'),
103
164
  timeframe: z.string().describe('Timeframe'),
104
- type: z.enum(['hline', 'text', 'trendline', 'rectangle', 'channel', 'long_position', 'short_position']).describe('Annotation type'),
105
- data: z.record(z.string(), z.unknown()).describe('Annotation data'),
106
- origin: z.string().optional().describe('Origin of the annotation'),
107
- })).describe('Array of annotation objects to create'),
165
+ type: z.enum(ANNOTATION_TYPES).describe('Annotation type'),
166
+ data: z.record(z.string(), z.unknown()).describe('Type-specific fields — see dwlf_create_annotation'),
167
+ origin: z.enum(ANNOTATION_ORIGINS).optional().describe('Origin (default "user")'),
168
+ })).min(1).max(25).describe('Annotations to create (1-25)'),
108
169
  }, async ({ annotations }) => {
109
170
  try {
110
- const normalized = annotations.map((a) => ({
111
- ...a,
112
- symbol: normalizeSymbol(a.symbol),
171
+ // Backend /annotations/bulk takes { operations: [{action, ...}] }, not a
172
+ // bare annotations array. Wrap each as a create operation.
173
+ const operations = annotations.map((a) => ({
174
+ action: 'create',
175
+ annotation: {
176
+ symbol: normalizeSymbol(a.symbol),
177
+ timeframe: a.timeframe,
178
+ type: a.type,
179
+ data: a.data,
180
+ ...(a.origin ? { origin: a.origin } : {}),
181
+ },
113
182
  }));
114
- const result = await client.post('/annotations/bulk', { annotations: normalized });
183
+ const result = await client.post('/annotations/bulk', { operations });
115
184
  return {
116
185
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
117
186
  };
@@ -1 +1 @@
1
- {"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/tools/annotations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/tools/annotations.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export function registerStrategyTools(server, client) {
11
11
  'Use this to understand what an SL/TP/logic node will actually do at backtest/live time, ' +
12
12
  'including the engine defaults that are NOT visible in the visual graph today. ' +
13
13
  'Optional `nodeType` filters to a single node (e.g. `sl_below_recent_low`); optional `category` ' +
14
- 'filters to a class (`stopLoss` / `takeProfit` / `signal` / `logic` / `cancellation` / `exit`). ' +
14
+ 'filters to a class (`stopLoss` / `takeProfit` / `signal` / `logic` / `cancellation` / `condition` / `exit`). ' +
15
15
  'When `honoredByExecutor: false` on a param, the listed `default` is the only value the engine uses today ' +
16
16
  'regardless of what the visual node\'s data field says — this is what the SL-resolver bug in PR#220 exposed.', {
17
17
  nodeType: z
@@ -19,7 +19,7 @@ export function registerStrategyTools(server, client) {
19
19
  .optional()
20
20
  .describe('Return only this one node (e.g. `sl_below_recent_low`).'),
21
21
  category: z
22
- .enum(['signal', 'stopLoss', 'takeProfit', 'logic', 'cancellation', 'exit'])
22
+ .enum(['signal', 'stopLoss', 'takeProfit', 'logic', 'cancellation', 'condition', 'exit'])
23
23
  .optional()
24
24
  .describe('Return only nodes in this category.'),
25
25
  }, async ({ nodeType, category }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"strategies.js","sourceRoot":"","sources":["../../src/tools/strategies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategies.js","sourceRoot":"","sources":["../../src/tools/strategies.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dwlf/mcp-server",
3
- "version": "0.29.0",
3
+ "version": "0.30.0",
4
4
  "description": "MCP server for DWLF market analysis platform — exposes market data, indicators, signals, strategies, backtests, portfolio, trade journal, and more as AI-accessible tools",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",