@starascendin/lifeos-mcp 0.1.0 → 0.1.1

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.
Files changed (2) hide show
  1. package/dist/index.js +137 -4
  2. package/package.json +10 -11
package/dist/index.js CHANGED
@@ -39,6 +39,10 @@ const TOOLS = [
39
39
  inputSchema: {
40
40
  type: "object",
41
41
  properties: {
42
+ userId: {
43
+ type: "string",
44
+ description: "Override the default user ID (optional)",
45
+ },
42
46
  status: {
43
47
  type: "string",
44
48
  enum: ["planned", "in_progress", "paused", "completed", "cancelled"],
@@ -57,6 +61,10 @@ const TOOLS = [
57
61
  inputSchema: {
58
62
  type: "object",
59
63
  properties: {
64
+ userId: {
65
+ type: "string",
66
+ description: "Override the default user ID (optional)",
67
+ },
60
68
  projectId: {
61
69
  type: "string",
62
70
  description: "Filter by project ID",
@@ -90,7 +98,12 @@ const TOOLS = [
90
98
  description: "Get today's tasks including tasks due today and top priority items. Best for daily planning.",
91
99
  inputSchema: {
92
100
  type: "object",
93
- properties: {},
101
+ properties: {
102
+ userId: {
103
+ type: "string",
104
+ description: "Override the default user ID (optional)",
105
+ },
106
+ },
94
107
  },
95
108
  },
96
109
  {
@@ -99,6 +112,10 @@ const TOOLS = [
99
112
  inputSchema: {
100
113
  type: "object",
101
114
  properties: {
115
+ userId: {
116
+ type: "string",
117
+ description: "Override the default user ID (optional)",
118
+ },
102
119
  title: {
103
120
  type: "string",
104
121
  description: "The task title (required)",
@@ -138,6 +155,10 @@ const TOOLS = [
138
155
  inputSchema: {
139
156
  type: "object",
140
157
  properties: {
158
+ userId: {
159
+ type: "string",
160
+ description: "Override the default user ID (optional)",
161
+ },
141
162
  issueIdOrIdentifier: {
142
163
  type: "string",
143
164
  description: "Issue ID or identifier like PROJ-123 (required)",
@@ -152,7 +173,12 @@ const TOOLS = [
152
173
  description: "Get the currently active cycle/sprint with progress stats and top priority issues.",
153
174
  inputSchema: {
154
175
  type: "object",
155
- properties: {},
176
+ properties: {
177
+ userId: {
178
+ type: "string",
179
+ description: "Override the default user ID (optional)",
180
+ },
181
+ },
156
182
  },
157
183
  },
158
184
  {
@@ -161,6 +187,10 @@ const TOOLS = [
161
187
  inputSchema: {
162
188
  type: "object",
163
189
  properties: {
190
+ userId: {
191
+ type: "string",
192
+ description: "Override the default user ID (optional)",
193
+ },
164
194
  issueIdOrIdentifier: {
165
195
  type: "string",
166
196
  description: "Issue ID or identifier like PROJ-123 (required)",
@@ -180,6 +210,10 @@ const TOOLS = [
180
210
  inputSchema: {
181
211
  type: "object",
182
212
  properties: {
213
+ userId: {
214
+ type: "string",
215
+ description: "Override the default user ID (optional)",
216
+ },
183
217
  date: {
184
218
  type: "string",
185
219
  description: "Specific date in ISO format (optional, default: today)",
@@ -193,6 +227,10 @@ const TOOLS = [
193
227
  inputSchema: {
194
228
  type: "object",
195
229
  properties: {
230
+ userId: {
231
+ type: "string",
232
+ description: "Override the default user ID (optional)",
233
+ },
196
234
  startDate: {
197
235
  type: "string",
198
236
  description: "Start date in ISO format (optional, default: today)",
@@ -207,6 +245,10 @@ const TOOLS = [
207
245
  inputSchema: {
208
246
  type: "object",
209
247
  properties: {
248
+ userId: {
249
+ type: "string",
250
+ description: "Override the default user ID (optional)",
251
+ },
210
252
  query: {
211
253
  type: "string",
212
254
  description: "Search terms to find in notes (required)",
@@ -225,6 +267,10 @@ const TOOLS = [
225
267
  inputSchema: {
226
268
  type: "object",
227
269
  properties: {
270
+ userId: {
271
+ type: "string",
272
+ description: "Override the default user ID (optional)",
273
+ },
228
274
  limit: {
229
275
  type: "number",
230
276
  description: "Number of notes to return (default 5, max 20)",
@@ -238,6 +284,10 @@ const TOOLS = [
238
284
  inputSchema: {
239
285
  type: "object",
240
286
  properties: {
287
+ userId: {
288
+ type: "string",
289
+ description: "Override the default user ID (optional)",
290
+ },
241
291
  content: {
242
292
  type: "string",
243
293
  description: "The note content (required)",
@@ -257,6 +307,10 @@ const TOOLS = [
257
307
  inputSchema: {
258
308
  type: "object",
259
309
  properties: {
310
+ userId: {
311
+ type: "string",
312
+ description: "Override the default user ID (optional)",
313
+ },
260
314
  noteId: {
261
315
  type: "string",
262
316
  description: "The note ID (required)",
@@ -277,6 +331,10 @@ const TOOLS = [
277
331
  inputSchema: {
278
332
  type: "object",
279
333
  properties: {
334
+ userId: {
335
+ type: "string",
336
+ description: "Override the default user ID (optional)",
337
+ },
280
338
  relationshipType: {
281
339
  type: "string",
282
340
  enum: ["family", "friend", "colleague", "acquaintance", "mentor", "other"],
@@ -299,6 +357,10 @@ const TOOLS = [
299
357
  inputSchema: {
300
358
  type: "object",
301
359
  properties: {
360
+ userId: {
361
+ type: "string",
362
+ description: "Override the default user ID (optional)",
363
+ },
302
364
  personId: {
303
365
  type: "string",
304
366
  description: "The person's ID (required)",
@@ -313,6 +375,10 @@ const TOOLS = [
313
375
  inputSchema: {
314
376
  type: "object",
315
377
  properties: {
378
+ userId: {
379
+ type: "string",
380
+ description: "Override the default user ID (optional)",
381
+ },
316
382
  query: {
317
383
  type: "string",
318
384
  description: "Search terms to find in names (required)",
@@ -331,6 +397,10 @@ const TOOLS = [
331
397
  inputSchema: {
332
398
  type: "object",
333
399
  properties: {
400
+ userId: {
401
+ type: "string",
402
+ description: "Override the default user ID (optional)",
403
+ },
334
404
  personId: {
335
405
  type: "string",
336
406
  description: "The person's ID (required)",
@@ -349,6 +419,10 @@ const TOOLS = [
349
419
  inputSchema: {
350
420
  type: "object",
351
421
  properties: {
422
+ userId: {
423
+ type: "string",
424
+ description: "Override the default user ID (optional)",
425
+ },
352
426
  personId: {
353
427
  type: "string",
354
428
  description: "Filter to specific person (omit for all)",
@@ -366,6 +440,10 @@ const TOOLS = [
366
440
  inputSchema: {
367
441
  type: "object",
368
442
  properties: {
443
+ userId: {
444
+ type: "string",
445
+ description: "Override the default user ID (optional)",
446
+ },
369
447
  name: {
370
448
  type: "string",
371
449
  description: "The person's name (required)",
@@ -397,6 +475,10 @@ const TOOLS = [
397
475
  inputSchema: {
398
476
  type: "object",
399
477
  properties: {
478
+ userId: {
479
+ type: "string",
480
+ description: "Override the default user ID (optional)",
481
+ },
400
482
  personId: {
401
483
  type: "string",
402
484
  description: "The person's ID (required)",
@@ -436,6 +518,10 @@ const TOOLS = [
436
518
  inputSchema: {
437
519
  type: "object",
438
520
  properties: {
521
+ userId: {
522
+ type: "string",
523
+ description: "Override the default user ID (optional)",
524
+ },
439
525
  personId: {
440
526
  type: "string",
441
527
  description: "The person's ID (required)",
@@ -459,6 +545,10 @@ const TOOLS = [
459
545
  inputSchema: {
460
546
  type: "object",
461
547
  properties: {
548
+ userId: {
549
+ type: "string",
550
+ description: "Override the default user ID (optional)",
551
+ },
462
552
  status: {
463
553
  type: "string",
464
554
  enum: ["active", "archived"],
@@ -473,6 +563,10 @@ const TOOLS = [
473
563
  inputSchema: {
474
564
  type: "object",
475
565
  properties: {
566
+ userId: {
567
+ type: "string",
568
+ description: "Override the default user ID (optional)",
569
+ },
476
570
  clientId: {
477
571
  type: "string",
478
572
  description: "The client's ID (required)",
@@ -487,6 +581,10 @@ const TOOLS = [
487
581
  inputSchema: {
488
582
  type: "object",
489
583
  properties: {
584
+ userId: {
585
+ type: "string",
586
+ description: "Override the default user ID (optional)",
587
+ },
490
588
  clientId: {
491
589
  type: "string",
492
590
  description: "The client's ID (required)",
@@ -501,6 +599,10 @@ const TOOLS = [
501
599
  inputSchema: {
502
600
  type: "object",
503
601
  properties: {
602
+ userId: {
603
+ type: "string",
604
+ description: "Override the default user ID (optional)",
605
+ },
504
606
  name: {
505
607
  type: "string",
506
608
  description: "The client's name (required)",
@@ -519,6 +621,10 @@ const TOOLS = [
519
621
  inputSchema: {
520
622
  type: "object",
521
623
  properties: {
624
+ userId: {
625
+ type: "string",
626
+ description: "Override the default user ID (optional)",
627
+ },
522
628
  clientId: {
523
629
  type: "string",
524
630
  description: "The client's ID (required)",
@@ -547,6 +653,10 @@ const TOOLS = [
547
653
  inputSchema: {
548
654
  type: "object",
549
655
  properties: {
656
+ userId: {
657
+ type: "string",
658
+ description: "Override the default user ID (optional)",
659
+ },
550
660
  projectId: {
551
661
  type: "string",
552
662
  description: "The project's ID (required)",
@@ -561,6 +671,10 @@ const TOOLS = [
561
671
  inputSchema: {
562
672
  type: "object",
563
673
  properties: {
674
+ userId: {
675
+ type: "string",
676
+ description: "Override the default user ID (optional)",
677
+ },
564
678
  phaseId: {
565
679
  type: "string",
566
680
  description: "The phase's ID (required)",
@@ -575,6 +689,10 @@ const TOOLS = [
575
689
  inputSchema: {
576
690
  type: "object",
577
691
  properties: {
692
+ userId: {
693
+ type: "string",
694
+ description: "Override the default user ID (optional)",
695
+ },
578
696
  projectId: {
579
697
  type: "string",
580
698
  description: "The project's ID (required)",
@@ -602,6 +720,10 @@ const TOOLS = [
602
720
  inputSchema: {
603
721
  type: "object",
604
722
  properties: {
723
+ userId: {
724
+ type: "string",
725
+ description: "Override the default user ID (optional)",
726
+ },
605
727
  phaseId: {
606
728
  type: "string",
607
729
  description: "The phase's ID (required)",
@@ -637,6 +759,10 @@ const TOOLS = [
637
759
  inputSchema: {
638
760
  type: "object",
639
761
  properties: {
762
+ userId: {
763
+ type: "string",
764
+ description: "Override the default user ID (optional)",
765
+ },
640
766
  phaseId: {
641
767
  type: "string",
642
768
  description: "The phase's ID (required)",
@@ -651,6 +777,10 @@ const TOOLS = [
651
777
  inputSchema: {
652
778
  type: "object",
653
779
  properties: {
780
+ userId: {
781
+ type: "string",
782
+ description: "Override the default user ID (optional)",
783
+ },
654
784
  issueIdOrIdentifier: {
655
785
  type: "string",
656
786
  description: "Issue ID or identifier like PROJ-123 (required)",
@@ -693,6 +823,9 @@ if (missingConfig.length > 0) {
693
823
  */
694
824
  async function callConvexTool(tool, params) {
695
825
  const url = `${CONVEX_URL}/tool-call`;
826
+ // Extract userId from params if provided, otherwise use default
827
+ const { userId: overrideUserId, ...toolParams } = params;
828
+ const effectiveUserId = overrideUserId || USER_ID;
696
829
  const response = await fetch(url, {
697
830
  method: "POST",
698
831
  headers: {
@@ -701,8 +834,8 @@ async function callConvexTool(tool, params) {
701
834
  },
702
835
  body: JSON.stringify({
703
836
  tool,
704
- userId: USER_ID,
705
- params,
837
+ userId: effectiveUserId,
838
+ params: toolParams,
706
839
  }),
707
840
  });
708
841
  if (!response.ok) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starascendin/lifeos-mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "MCP server for LifeOS Project Management - manage projects, tasks, notes, and contacts via AI assistants",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -11,15 +11,6 @@
11
11
  "dist",
12
12
  "README.md"
13
13
  ],
14
- "scripts": {
15
- "build": "tsc",
16
- "dev": "tsx src/index.ts",
17
- "start": "node dist/index.js",
18
- "prepublishOnly": "npm run build",
19
- "version:patch": "npm version patch",
20
- "version:minor": "npm version minor",
21
- "version:major": "npm version major"
22
- },
23
14
  "keywords": [
24
15
  "mcp",
25
16
  "model-context-protocol",
@@ -49,5 +40,13 @@
49
40
  "@types/node": "^20.0.0",
50
41
  "tsx": "^4.0.0",
51
42
  "typescript": "^5.0.0"
43
+ },
44
+ "scripts": {
45
+ "build": "tsc",
46
+ "dev": "tsx src/index.ts",
47
+ "start": "node dist/index.js",
48
+ "version:patch": "npm version patch",
49
+ "version:minor": "npm version minor",
50
+ "version:major": "npm version major"
52
51
  }
53
- }
52
+ }