@omnicoreos/planka-mcp 0.2.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.
Files changed (126) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/CONTRIBUTING.md +37 -0
  3. package/CREDITS.md +39 -0
  4. package/LICENSE +22 -0
  5. package/README.es.md +213 -0
  6. package/README.md +213 -0
  7. package/dist/client.d.ts +96 -0
  8. package/dist/client.d.ts.map +1 -0
  9. package/dist/client.js +281 -0
  10. package/dist/client.js.map +1 -0
  11. package/dist/errors.d.ts +85 -0
  12. package/dist/errors.d.ts.map +1 -0
  13. package/dist/errors.js +226 -0
  14. package/dist/errors.js.map +1 -0
  15. package/dist/identity.generated.d.ts +3 -0
  16. package/dist/identity.generated.d.ts.map +1 -0
  17. package/dist/identity.generated.js +4 -0
  18. package/dist/identity.generated.js.map +1 -0
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +93 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/operations/attachments.d.ts +34 -0
  24. package/dist/operations/attachments.d.ts.map +1 -0
  25. package/dist/operations/attachments.js +89 -0
  26. package/dist/operations/attachments.js.map +1 -0
  27. package/dist/operations/board-id.d.ts +9 -0
  28. package/dist/operations/board-id.d.ts.map +1 -0
  29. package/dist/operations/board-id.js +86 -0
  30. package/dist/operations/board-id.js.map +1 -0
  31. package/dist/operations/boards.d.ts +143 -0
  32. package/dist/operations/boards.d.ts.map +1 -0
  33. package/dist/operations/boards.js +391 -0
  34. package/dist/operations/boards.js.map +1 -0
  35. package/dist/operations/cards.d.ts +36 -0
  36. package/dist/operations/cards.d.ts.map +1 -0
  37. package/dist/operations/cards.js +81 -0
  38. package/dist/operations/cards.js.map +1 -0
  39. package/dist/operations/comments.d.ts +28 -0
  40. package/dist/operations/comments.d.ts.map +1 -0
  41. package/dist/operations/comments.js +53 -0
  42. package/dist/operations/comments.js.map +1 -0
  43. package/dist/operations/labels.d.ts +60 -0
  44. package/dist/operations/labels.d.ts.map +1 -0
  45. package/dist/operations/labels.js +146 -0
  46. package/dist/operations/labels.js.map +1 -0
  47. package/dist/operations/lists.d.ts +15 -0
  48. package/dist/operations/lists.d.ts.map +1 -0
  49. package/dist/operations/lists.js +40 -0
  50. package/dist/operations/lists.js.map +1 -0
  51. package/dist/operations/projects.d.ts +24 -0
  52. package/dist/operations/projects.d.ts.map +1 -0
  53. package/dist/operations/projects.js +61 -0
  54. package/dist/operations/projects.js.map +1 -0
  55. package/dist/operations/tasks.d.ts +30 -0
  56. package/dist/operations/tasks.d.ts.map +1 -0
  57. package/dist/operations/tasks.js +111 -0
  58. package/dist/operations/tasks.js.map +1 -0
  59. package/dist/schemas/entities.d.ts +389 -0
  60. package/dist/schemas/entities.d.ts.map +1 -0
  61. package/dist/schemas/entities.js +202 -0
  62. package/dist/schemas/entities.js.map +1 -0
  63. package/dist/schemas/requests.d.ts +539 -0
  64. package/dist/schemas/requests.d.ts.map +1 -0
  65. package/dist/schemas/requests.js +187 -0
  66. package/dist/schemas/requests.js.map +1 -0
  67. package/dist/schemas/responses.d.ts +2626 -0
  68. package/dist/schemas/responses.d.ts.map +1 -0
  69. package/dist/schemas/responses.js +75 -0
  70. package/dist/schemas/responses.js.map +1 -0
  71. package/dist/tools/attachments.d.ts +270 -0
  72. package/dist/tools/attachments.d.ts.map +1 -0
  73. package/dist/tools/attachments.js +247 -0
  74. package/dist/tools/attachments.js.map +1 -0
  75. package/dist/tools/cards.d.ts +401 -0
  76. package/dist/tools/cards.d.ts.map +1 -0
  77. package/dist/tools/cards.js +368 -0
  78. package/dist/tools/cards.js.map +1 -0
  79. package/dist/tools/comments.d.ts +217 -0
  80. package/dist/tools/comments.d.ts.map +1 -0
  81. package/dist/tools/comments.js +208 -0
  82. package/dist/tools/comments.js.map +1 -0
  83. package/dist/tools/index.d.ts +1293 -0
  84. package/dist/tools/index.d.ts.map +1 -0
  85. package/dist/tools/index.js +62 -0
  86. package/dist/tools/index.js.map +1 -0
  87. package/dist/tools/labels.d.ts +214 -0
  88. package/dist/tools/labels.d.ts.map +1 -0
  89. package/dist/tools/labels.js +302 -0
  90. package/dist/tools/labels.js.map +1 -0
  91. package/dist/tools/lists.d.ts +117 -0
  92. package/dist/tools/lists.d.ts.map +1 -0
  93. package/dist/tools/lists.js +178 -0
  94. package/dist/tools/lists.js.map +1 -0
  95. package/dist/tools/navigation.d.ts +106 -0
  96. package/dist/tools/navigation.d.ts.map +1 -0
  97. package/dist/tools/navigation.js +151 -0
  98. package/dist/tools/navigation.js.map +1 -0
  99. package/dist/tools/queries.d.ts +380 -0
  100. package/dist/tools/queries.d.ts.map +1 -0
  101. package/dist/tools/queries.js +256 -0
  102. package/dist/tools/queries.js.map +1 -0
  103. package/dist/tools/tasks.d.ts +223 -0
  104. package/dist/tools/tasks.d.ts.map +1 -0
  105. package/dist/tools/tasks.js +169 -0
  106. package/dist/tools/tasks.js.map +1 -0
  107. package/docs/planka-2x-gotchas.md +192 -0
  108. package/docs/tools.md +659 -0
  109. package/docs/troubleshooting.md +138 -0
  110. package/package.json +71 -0
  111. package/project.identity.json +7 -0
  112. package/scripts/bootstrap-board.mjs +160 -0
  113. package/scripts/lib/planka-api.mjs +244 -0
  114. package/scripts/lib/workflow-template.mjs +26 -0
  115. package/scripts/setup.mjs +236 -0
  116. package/scripts/setup.sh +48 -0
  117. package/scripts/sync-identity.mjs +57 -0
  118. package/server.json +43 -0
  119. package/tests/smoke/planka-smoke.mjs +920 -0
  120. package/workflow/README.md +232 -0
  121. package/workflow/board-template.md +115 -0
  122. package/workflow/skills/planka-close-card/SKILL.md +81 -0
  123. package/workflow/skills/planka-orchestrator/SKILL.md +126 -0
  124. package/workflow/worktrees/README.md +104 -0
  125. package/workflow/worktrees/wt.conf.example +24 -0
  126. package/workflow/worktrees/wt.sh +345 -0
@@ -0,0 +1,1293 @@
1
+ /**
2
+ * All registered tools.
3
+ */
4
+ export declare const allTools: ({
5
+ name: string;
6
+ description: string;
7
+ inputSchema: {
8
+ type: "object";
9
+ properties: {
10
+ projectId: {
11
+ type: string;
12
+ description: string;
13
+ };
14
+ };
15
+ };
16
+ handler: (params: {
17
+ projectId?: string;
18
+ }) => Promise<{
19
+ content: {
20
+ type: "text";
21
+ text: string;
22
+ }[];
23
+ }>;
24
+ } | {
25
+ name: string;
26
+ description: string;
27
+ inputSchema: {
28
+ type: "object";
29
+ properties: {
30
+ boardId: {
31
+ type: string;
32
+ description: string;
33
+ };
34
+ includeTaskCounts: {
35
+ type: string;
36
+ description: string;
37
+ default: boolean;
38
+ };
39
+ };
40
+ required: string[];
41
+ };
42
+ handler: (params: {
43
+ boardId: string;
44
+ includeTaskCounts?: boolean;
45
+ }) => Promise<{
46
+ content: {
47
+ type: "text";
48
+ text: string;
49
+ }[];
50
+ }>;
51
+ } | {
52
+ name: string;
53
+ description: string;
54
+ inputSchema: {
55
+ type: "object";
56
+ properties: {
57
+ listId: {
58
+ type: string;
59
+ description: string;
60
+ };
61
+ name: {
62
+ type: string;
63
+ description: string;
64
+ };
65
+ description: {
66
+ type: string;
67
+ description: string;
68
+ };
69
+ tasks: {
70
+ type: string;
71
+ items: {
72
+ type: string;
73
+ };
74
+ description: string;
75
+ };
76
+ dueDate: {
77
+ type: string;
78
+ description: string;
79
+ };
80
+ labelIds: {
81
+ type: string;
82
+ items: {
83
+ type: string;
84
+ };
85
+ description: string;
86
+ };
87
+ };
88
+ required: string[];
89
+ };
90
+ handler: (params: {
91
+ listId: string;
92
+ name: string;
93
+ description?: string;
94
+ tasks?: string[];
95
+ dueDate?: string;
96
+ labelIds?: string[];
97
+ }) => Promise<{
98
+ content: {
99
+ type: "text";
100
+ text: string;
101
+ }[];
102
+ isError?: undefined;
103
+ } | {
104
+ content: {
105
+ type: "text";
106
+ text: string;
107
+ }[];
108
+ isError: boolean;
109
+ }>;
110
+ } | {
111
+ name: string;
112
+ description: string;
113
+ inputSchema: {
114
+ type: "object";
115
+ properties: {
116
+ cardId: {
117
+ type: string;
118
+ description: string;
119
+ };
120
+ name: {
121
+ type: string;
122
+ description: string;
123
+ };
124
+ description: {
125
+ type: string[];
126
+ description: string;
127
+ };
128
+ dueDate: {
129
+ type: string[];
130
+ description: string;
131
+ };
132
+ isCompleted: {
133
+ type: string;
134
+ description: string;
135
+ };
136
+ };
137
+ required: string[];
138
+ };
139
+ handler: (params: {
140
+ cardId: string;
141
+ name?: string;
142
+ description?: string | null;
143
+ dueDate?: string | null;
144
+ isCompleted?: boolean;
145
+ }) => Promise<{
146
+ content: {
147
+ type: "text";
148
+ text: string;
149
+ }[];
150
+ isError?: undefined;
151
+ } | {
152
+ content: {
153
+ type: "text";
154
+ text: string;
155
+ }[];
156
+ isError: boolean;
157
+ }>;
158
+ } | {
159
+ name: string;
160
+ description: string;
161
+ inputSchema: {
162
+ type: "object";
163
+ properties: {
164
+ cardId: {
165
+ type: string;
166
+ description: string;
167
+ };
168
+ listId: {
169
+ type: string;
170
+ description: string;
171
+ };
172
+ position: {
173
+ type: string;
174
+ description: string;
175
+ };
176
+ };
177
+ required: string[];
178
+ };
179
+ handler: (params: {
180
+ cardId: string;
181
+ listId: string;
182
+ position?: number;
183
+ }) => Promise<{
184
+ content: {
185
+ type: "text";
186
+ text: string;
187
+ }[];
188
+ isError?: undefined;
189
+ } | {
190
+ content: {
191
+ type: "text";
192
+ text: string;
193
+ }[];
194
+ isError: boolean;
195
+ }>;
196
+ } | {
197
+ name: string;
198
+ description: string;
199
+ inputSchema: {
200
+ type: "object";
201
+ properties: {
202
+ cardId: {
203
+ type: string;
204
+ description: string;
205
+ };
206
+ tasks: {
207
+ type: string;
208
+ items: {
209
+ type: string;
210
+ };
211
+ minItems: number;
212
+ description: string;
213
+ };
214
+ };
215
+ required: string[];
216
+ };
217
+ handler: (params: {
218
+ cardId: string;
219
+ tasks: string[];
220
+ }) => Promise<{
221
+ content: {
222
+ type: "text";
223
+ text: string;
224
+ }[];
225
+ isError?: undefined;
226
+ } | {
227
+ content: {
228
+ type: "text";
229
+ text: string;
230
+ }[];
231
+ isError: boolean;
232
+ }>;
233
+ } | {
234
+ name: string;
235
+ description: string;
236
+ inputSchema: {
237
+ type: "object";
238
+ properties: {
239
+ taskId: {
240
+ type: string;
241
+ description: string;
242
+ };
243
+ name: {
244
+ type: string;
245
+ description: string;
246
+ };
247
+ isCompleted: {
248
+ type: string;
249
+ description: string;
250
+ };
251
+ };
252
+ required: string[];
253
+ };
254
+ handler: (params: {
255
+ taskId: string;
256
+ name?: string;
257
+ isCompleted?: boolean;
258
+ }) => Promise<{
259
+ content: {
260
+ type: "text";
261
+ text: string;
262
+ }[];
263
+ isError?: undefined;
264
+ } | {
265
+ content: {
266
+ type: "text";
267
+ text: string;
268
+ }[];
269
+ isError: boolean;
270
+ }>;
271
+ } | {
272
+ name: string;
273
+ description: string;
274
+ inputSchema: {
275
+ type: "object";
276
+ properties: {
277
+ taskId: {
278
+ type: string;
279
+ description: string;
280
+ };
281
+ };
282
+ required: string[];
283
+ };
284
+ handler: (params: {
285
+ taskId: string;
286
+ }) => Promise<{
287
+ content: {
288
+ type: "text";
289
+ text: string;
290
+ }[];
291
+ isError?: undefined;
292
+ } | {
293
+ content: {
294
+ type: "text";
295
+ text: string;
296
+ }[];
297
+ isError: boolean;
298
+ }>;
299
+ } | {
300
+ name: string;
301
+ description: string;
302
+ inputSchema: {
303
+ type: "object";
304
+ properties: {
305
+ action: {
306
+ type: string;
307
+ enum: string[];
308
+ description: string;
309
+ };
310
+ boardId: {
311
+ type: string;
312
+ description: string;
313
+ };
314
+ labelId: {
315
+ type: string;
316
+ description: string;
317
+ };
318
+ name: {
319
+ type: string;
320
+ description: string;
321
+ };
322
+ color: {
323
+ type: string;
324
+ description: string;
325
+ };
326
+ };
327
+ required: string[];
328
+ };
329
+ handler: (params: {
330
+ action: "create" | "update" | "delete";
331
+ boardId?: string;
332
+ labelId?: string;
333
+ name?: string;
334
+ color?: string;
335
+ }) => Promise<{
336
+ content: {
337
+ type: "text";
338
+ text: string;
339
+ }[];
340
+ isError: boolean;
341
+ } | {
342
+ content: {
343
+ type: "text";
344
+ text: string;
345
+ }[];
346
+ isError?: undefined;
347
+ }>;
348
+ } | {
349
+ name: string;
350
+ description: string;
351
+ inputSchema: {
352
+ type: "object";
353
+ properties: {
354
+ cardId: {
355
+ type: string;
356
+ description: string;
357
+ };
358
+ addLabelIds: {
359
+ type: string;
360
+ items: {
361
+ type: string;
362
+ };
363
+ description: string;
364
+ };
365
+ labelIds: {
366
+ type: string;
367
+ items: {
368
+ type: string;
369
+ };
370
+ description: string;
371
+ };
372
+ removeLabelIds: {
373
+ type: string;
374
+ items: {
375
+ type: string;
376
+ };
377
+ description: string;
378
+ };
379
+ };
380
+ required: string[];
381
+ };
382
+ handler: (params: {
383
+ cardId: string;
384
+ addLabelIds?: string[];
385
+ labelIds?: string[];
386
+ removeLabelIds?: string[];
387
+ }) => Promise<{
388
+ content: {
389
+ type: "text";
390
+ text: string;
391
+ }[];
392
+ isError: boolean;
393
+ } | {
394
+ isError?: true | undefined;
395
+ content: {
396
+ type: "text";
397
+ text: string;
398
+ }[];
399
+ }>;
400
+ } | {
401
+ name: string;
402
+ description: string;
403
+ inputSchema: {
404
+ type: "object";
405
+ properties: {
406
+ cardId: {
407
+ type: string;
408
+ description: string;
409
+ };
410
+ text: {
411
+ type: string;
412
+ description: string;
413
+ };
414
+ };
415
+ required: string[];
416
+ };
417
+ handler: (params: {
418
+ cardId: string;
419
+ text: string;
420
+ }) => Promise<{
421
+ content: {
422
+ type: "text";
423
+ text: string;
424
+ }[];
425
+ isError?: undefined;
426
+ } | {
427
+ content: {
428
+ type: "text";
429
+ text: string;
430
+ }[];
431
+ isError: boolean;
432
+ }>;
433
+ } | {
434
+ name: string;
435
+ description: string;
436
+ inputSchema: {
437
+ type: "object";
438
+ properties: {
439
+ action: {
440
+ type: string;
441
+ enum: string[];
442
+ description: string;
443
+ };
444
+ commentId: {
445
+ type: string;
446
+ description: string;
447
+ };
448
+ text: {
449
+ type: string;
450
+ description: string;
451
+ };
452
+ };
453
+ required: string[];
454
+ };
455
+ handler: (params: {
456
+ action: "update" | "delete";
457
+ commentId: string;
458
+ text?: string;
459
+ }) => Promise<{
460
+ content: {
461
+ type: "text";
462
+ text: string;
463
+ }[];
464
+ isError: boolean;
465
+ } | {
466
+ content: {
467
+ type: "text";
468
+ text: string;
469
+ }[];
470
+ isError?: undefined;
471
+ }>;
472
+ } | {
473
+ name: string;
474
+ description: string;
475
+ inputSchema: {
476
+ type: "object";
477
+ properties: {
478
+ action: {
479
+ type: string;
480
+ enum: string[];
481
+ description: string;
482
+ };
483
+ boardId: {
484
+ type: string;
485
+ description: string;
486
+ };
487
+ listId: {
488
+ type: string;
489
+ description: string;
490
+ };
491
+ name: {
492
+ type: string;
493
+ description: string;
494
+ };
495
+ position: {
496
+ type: string;
497
+ description: string;
498
+ };
499
+ type: {
500
+ type: string;
501
+ enum: string[];
502
+ description: string;
503
+ };
504
+ };
505
+ required: string[];
506
+ };
507
+ handler: (params: {
508
+ action: "create" | "update" | "delete";
509
+ boardId?: string;
510
+ listId?: string;
511
+ name?: string;
512
+ position?: number;
513
+ type?: "active" | "closed";
514
+ }) => Promise<{
515
+ content: {
516
+ type: "text";
517
+ text: string;
518
+ }[];
519
+ isError: boolean;
520
+ } | {
521
+ content: {
522
+ type: "text";
523
+ text: string;
524
+ }[];
525
+ isError?: undefined;
526
+ }>;
527
+ } | {
528
+ name: string;
529
+ description: string;
530
+ inputSchema: {
531
+ type: "object";
532
+ properties: {
533
+ cardId: {
534
+ type: string;
535
+ description: string;
536
+ };
537
+ filePath: {
538
+ type: string;
539
+ description: string;
540
+ };
541
+ name: {
542
+ type: string;
543
+ description: string;
544
+ };
545
+ };
546
+ required: string[];
547
+ };
548
+ handler: (params: {
549
+ cardId: string;
550
+ filePath: string;
551
+ name?: string;
552
+ }) => Promise<{
553
+ isError?: boolean | undefined;
554
+ content: {
555
+ type: "text";
556
+ text: string;
557
+ }[];
558
+ }>;
559
+ } | {
560
+ name: string;
561
+ description: string;
562
+ inputSchema: {
563
+ type: "object";
564
+ properties: {
565
+ cardId: {
566
+ type: string;
567
+ description: string;
568
+ };
569
+ };
570
+ required: string[];
571
+ };
572
+ handler: (params: {
573
+ cardId: string;
574
+ }) => Promise<{
575
+ content: {
576
+ type: "text";
577
+ text: string;
578
+ }[];
579
+ isError: boolean;
580
+ } | {
581
+ content: {
582
+ type: "text";
583
+ text: string;
584
+ }[];
585
+ }>;
586
+ } | {
587
+ name: string;
588
+ description: string;
589
+ inputSchema: {
590
+ type: "object";
591
+ properties: {
592
+ cardId: {
593
+ type: string;
594
+ description: string;
595
+ };
596
+ attachmentId: {
597
+ type: string;
598
+ description: string;
599
+ };
600
+ };
601
+ required: string[];
602
+ };
603
+ handler: (params: {
604
+ cardId: string;
605
+ attachmentId?: string;
606
+ }) => Promise<{
607
+ content: {
608
+ type: "text";
609
+ text: string;
610
+ }[];
611
+ isError: boolean;
612
+ } | {
613
+ content: ({
614
+ type: "text";
615
+ text: string;
616
+ data?: undefined;
617
+ mimeType?: undefined;
618
+ } | {
619
+ type: "image";
620
+ data: string;
621
+ mimeType: string;
622
+ text?: undefined;
623
+ })[];
624
+ }>;
625
+ } | {
626
+ name: string;
627
+ description: string;
628
+ inputSchema: {
629
+ type: "object";
630
+ properties: {
631
+ attachmentId: {
632
+ type: string;
633
+ description: string;
634
+ };
635
+ };
636
+ required: string[];
637
+ };
638
+ handler: (params: {
639
+ attachmentId: string;
640
+ }) => Promise<{
641
+ content: {
642
+ type: "text";
643
+ text: string;
644
+ }[];
645
+ isError: boolean;
646
+ } | {
647
+ content: {
648
+ type: "text";
649
+ text: string;
650
+ }[];
651
+ }>;
652
+ } | {
653
+ name: string;
654
+ description: string;
655
+ inputSchema: {
656
+ type: "object";
657
+ properties: {
658
+ listId: {
659
+ type: string;
660
+ description: string;
661
+ };
662
+ withLabels: {
663
+ type: string;
664
+ description: string;
665
+ };
666
+ withDescription: {
667
+ type: string;
668
+ description: string;
669
+ };
670
+ labelFilter: {
671
+ type: string;
672
+ description: string;
673
+ };
674
+ limit: {
675
+ type: string;
676
+ description: string;
677
+ };
678
+ offset: {
679
+ type: string;
680
+ description: string;
681
+ };
682
+ };
683
+ required: string[];
684
+ };
685
+ handler: (params: {
686
+ listId: string;
687
+ withLabels?: boolean;
688
+ withDescription?: boolean;
689
+ labelFilter?: string;
690
+ limit?: number;
691
+ offset?: number;
692
+ }) => Promise<{
693
+ content: {
694
+ type: "text";
695
+ text: string;
696
+ }[];
697
+ } | {
698
+ content: {
699
+ type: "text";
700
+ text: string;
701
+ }[];
702
+ isError: boolean;
703
+ }>;
704
+ } | {
705
+ name: string;
706
+ description: string;
707
+ inputSchema: {
708
+ type: "object";
709
+ properties: {
710
+ boardId: {
711
+ type: string;
712
+ description: string;
713
+ };
714
+ };
715
+ required: string[];
716
+ };
717
+ handler: (params: {
718
+ boardId: string;
719
+ }) => Promise<{
720
+ content: {
721
+ type: "text";
722
+ text: string;
723
+ }[];
724
+ } | {
725
+ content: {
726
+ type: "text";
727
+ text: string;
728
+ }[];
729
+ isError: boolean;
730
+ }>;
731
+ } | {
732
+ name: string;
733
+ description: string;
734
+ inputSchema: {
735
+ type: "object";
736
+ properties: {
737
+ boardId: {
738
+ type: string;
739
+ description: string;
740
+ };
741
+ cardsFrom: {
742
+ type: string;
743
+ items: {
744
+ type: string;
745
+ };
746
+ description: string;
747
+ };
748
+ highlightLabel: {
749
+ type: string;
750
+ description: string;
751
+ };
752
+ limit: {
753
+ type: string;
754
+ description: string;
755
+ };
756
+ };
757
+ required: string[];
758
+ };
759
+ handler: (params: {
760
+ boardId: string;
761
+ cardsFrom?: string[];
762
+ highlightLabel?: string;
763
+ limit?: number;
764
+ }) => Promise<{
765
+ content: {
766
+ type: "text";
767
+ text: string;
768
+ }[];
769
+ } | {
770
+ content: {
771
+ type: "text";
772
+ text: string;
773
+ }[];
774
+ isError: boolean;
775
+ }>;
776
+ } | {
777
+ name: string;
778
+ description: string;
779
+ inputSchema: {
780
+ type: "object";
781
+ properties: {
782
+ boardId: {
783
+ type: string;
784
+ description: string;
785
+ };
786
+ labelName: {
787
+ type: string;
788
+ description: string;
789
+ };
790
+ query: {
791
+ type: string;
792
+ description: string;
793
+ };
794
+ listId: {
795
+ type: string;
796
+ description: string;
797
+ };
798
+ withDescription: {
799
+ type: string;
800
+ description: string;
801
+ };
802
+ limit: {
803
+ type: string;
804
+ description: string;
805
+ };
806
+ offset: {
807
+ type: string;
808
+ description: string;
809
+ };
810
+ };
811
+ required: string[];
812
+ };
813
+ handler: (params: {
814
+ boardId: string;
815
+ labelName?: string;
816
+ query?: string;
817
+ listId?: string;
818
+ withDescription?: boolean;
819
+ limit?: number;
820
+ offset?: number;
821
+ }) => Promise<{
822
+ content: {
823
+ type: "text";
824
+ text: string;
825
+ }[];
826
+ } | {
827
+ content: {
828
+ type: "text";
829
+ text: string;
830
+ }[];
831
+ isError: boolean;
832
+ }>;
833
+ })[];
834
+ /**
835
+ * Content blocks a tool may return.
836
+ * "image" lets the model actually SEE an attached screenshot (base64).
837
+ */
838
+ export type ToolContent = {
839
+ type: "text";
840
+ text: string;
841
+ } | {
842
+ type: "image";
843
+ data: string;
844
+ mimeType: string;
845
+ };
846
+ /**
847
+ * Tool type definition.
848
+ */
849
+ export interface Tool {
850
+ name: string;
851
+ description: string;
852
+ inputSchema: {
853
+ type: "object";
854
+ properties: Record<string, unknown>;
855
+ required?: string[];
856
+ };
857
+ handler: (params: unknown) => Promise<{
858
+ content: ToolContent[];
859
+ isError?: boolean;
860
+ }>;
861
+ }
862
+ /**
863
+ * Get a tool by name.
864
+ */
865
+ export declare function getTool(name: string): Tool | undefined;
866
+ /**
867
+ * Required inputSchema fields that never arrived.
868
+ *
869
+ * The inputSchema is JSON Schema, not Zod: this only checks presence, which is
870
+ * what stops a missing `tasks` from blowing up inside the handler as "Cannot
871
+ * read properties of undefined (reading 'map')".
872
+ */
873
+ export declare function findMissingRequiredArgs(tool: Tool, args: unknown): string[];
874
+ /**
875
+ * Get all tool definitions (for MCP listTools).
876
+ */
877
+ export declare function getToolDefinitions(): {
878
+ name: string;
879
+ description: string;
880
+ inputSchema: {
881
+ type: "object";
882
+ properties: {
883
+ projectId: {
884
+ type: string;
885
+ description: string;
886
+ };
887
+ };
888
+ } | {
889
+ type: "object";
890
+ properties: {
891
+ boardId: {
892
+ type: string;
893
+ description: string;
894
+ };
895
+ includeTaskCounts: {
896
+ type: string;
897
+ description: string;
898
+ default: boolean;
899
+ };
900
+ };
901
+ required: string[];
902
+ } | {
903
+ type: "object";
904
+ properties: {
905
+ listId: {
906
+ type: string;
907
+ description: string;
908
+ };
909
+ name: {
910
+ type: string;
911
+ description: string;
912
+ };
913
+ description: {
914
+ type: string;
915
+ description: string;
916
+ };
917
+ tasks: {
918
+ type: string;
919
+ items: {
920
+ type: string;
921
+ };
922
+ description: string;
923
+ };
924
+ dueDate: {
925
+ type: string;
926
+ description: string;
927
+ };
928
+ labelIds: {
929
+ type: string;
930
+ items: {
931
+ type: string;
932
+ };
933
+ description: string;
934
+ };
935
+ };
936
+ required: string[];
937
+ } | {
938
+ type: "object";
939
+ properties: {
940
+ cardId: {
941
+ type: string;
942
+ description: string;
943
+ };
944
+ name: {
945
+ type: string;
946
+ description: string;
947
+ };
948
+ description: {
949
+ type: string[];
950
+ description: string;
951
+ };
952
+ dueDate: {
953
+ type: string[];
954
+ description: string;
955
+ };
956
+ isCompleted: {
957
+ type: string;
958
+ description: string;
959
+ };
960
+ };
961
+ required: string[];
962
+ } | {
963
+ type: "object";
964
+ properties: {
965
+ cardId: {
966
+ type: string;
967
+ description: string;
968
+ };
969
+ listId: {
970
+ type: string;
971
+ description: string;
972
+ };
973
+ position: {
974
+ type: string;
975
+ description: string;
976
+ };
977
+ };
978
+ required: string[];
979
+ } | {
980
+ type: "object";
981
+ properties: {
982
+ cardId: {
983
+ type: string;
984
+ description: string;
985
+ };
986
+ tasks: {
987
+ type: string;
988
+ items: {
989
+ type: string;
990
+ };
991
+ minItems: number;
992
+ description: string;
993
+ };
994
+ };
995
+ required: string[];
996
+ } | {
997
+ type: "object";
998
+ properties: {
999
+ taskId: {
1000
+ type: string;
1001
+ description: string;
1002
+ };
1003
+ name: {
1004
+ type: string;
1005
+ description: string;
1006
+ };
1007
+ isCompleted: {
1008
+ type: string;
1009
+ description: string;
1010
+ };
1011
+ };
1012
+ required: string[];
1013
+ } | {
1014
+ type: "object";
1015
+ properties: {
1016
+ taskId: {
1017
+ type: string;
1018
+ description: string;
1019
+ };
1020
+ };
1021
+ required: string[];
1022
+ } | {
1023
+ type: "object";
1024
+ properties: {
1025
+ action: {
1026
+ type: string;
1027
+ enum: string[];
1028
+ description: string;
1029
+ };
1030
+ boardId: {
1031
+ type: string;
1032
+ description: string;
1033
+ };
1034
+ labelId: {
1035
+ type: string;
1036
+ description: string;
1037
+ };
1038
+ name: {
1039
+ type: string;
1040
+ description: string;
1041
+ };
1042
+ color: {
1043
+ type: string;
1044
+ description: string;
1045
+ };
1046
+ };
1047
+ required: string[];
1048
+ } | {
1049
+ type: "object";
1050
+ properties: {
1051
+ cardId: {
1052
+ type: string;
1053
+ description: string;
1054
+ };
1055
+ addLabelIds: {
1056
+ type: string;
1057
+ items: {
1058
+ type: string;
1059
+ };
1060
+ description: string;
1061
+ };
1062
+ labelIds: {
1063
+ type: string;
1064
+ items: {
1065
+ type: string;
1066
+ };
1067
+ description: string;
1068
+ };
1069
+ removeLabelIds: {
1070
+ type: string;
1071
+ items: {
1072
+ type: string;
1073
+ };
1074
+ description: string;
1075
+ };
1076
+ };
1077
+ required: string[];
1078
+ } | {
1079
+ type: "object";
1080
+ properties: {
1081
+ cardId: {
1082
+ type: string;
1083
+ description: string;
1084
+ };
1085
+ text: {
1086
+ type: string;
1087
+ description: string;
1088
+ };
1089
+ };
1090
+ required: string[];
1091
+ } | {
1092
+ type: "object";
1093
+ properties: {
1094
+ action: {
1095
+ type: string;
1096
+ enum: string[];
1097
+ description: string;
1098
+ };
1099
+ commentId: {
1100
+ type: string;
1101
+ description: string;
1102
+ };
1103
+ text: {
1104
+ type: string;
1105
+ description: string;
1106
+ };
1107
+ };
1108
+ required: string[];
1109
+ } | {
1110
+ type: "object";
1111
+ properties: {
1112
+ action: {
1113
+ type: string;
1114
+ enum: string[];
1115
+ description: string;
1116
+ };
1117
+ boardId: {
1118
+ type: string;
1119
+ description: string;
1120
+ };
1121
+ listId: {
1122
+ type: string;
1123
+ description: string;
1124
+ };
1125
+ name: {
1126
+ type: string;
1127
+ description: string;
1128
+ };
1129
+ position: {
1130
+ type: string;
1131
+ description: string;
1132
+ };
1133
+ type: {
1134
+ type: string;
1135
+ enum: string[];
1136
+ description: string;
1137
+ };
1138
+ };
1139
+ required: string[];
1140
+ } | {
1141
+ type: "object";
1142
+ properties: {
1143
+ cardId: {
1144
+ type: string;
1145
+ description: string;
1146
+ };
1147
+ filePath: {
1148
+ type: string;
1149
+ description: string;
1150
+ };
1151
+ name: {
1152
+ type: string;
1153
+ description: string;
1154
+ };
1155
+ };
1156
+ required: string[];
1157
+ } | {
1158
+ type: "object";
1159
+ properties: {
1160
+ cardId: {
1161
+ type: string;
1162
+ description: string;
1163
+ };
1164
+ };
1165
+ required: string[];
1166
+ } | {
1167
+ type: "object";
1168
+ properties: {
1169
+ cardId: {
1170
+ type: string;
1171
+ description: string;
1172
+ };
1173
+ attachmentId: {
1174
+ type: string;
1175
+ description: string;
1176
+ };
1177
+ };
1178
+ required: string[];
1179
+ } | {
1180
+ type: "object";
1181
+ properties: {
1182
+ attachmentId: {
1183
+ type: string;
1184
+ description: string;
1185
+ };
1186
+ };
1187
+ required: string[];
1188
+ } | {
1189
+ type: "object";
1190
+ properties: {
1191
+ listId: {
1192
+ type: string;
1193
+ description: string;
1194
+ };
1195
+ withLabels: {
1196
+ type: string;
1197
+ description: string;
1198
+ };
1199
+ withDescription: {
1200
+ type: string;
1201
+ description: string;
1202
+ };
1203
+ labelFilter: {
1204
+ type: string;
1205
+ description: string;
1206
+ };
1207
+ limit: {
1208
+ type: string;
1209
+ description: string;
1210
+ };
1211
+ offset: {
1212
+ type: string;
1213
+ description: string;
1214
+ };
1215
+ };
1216
+ required: string[];
1217
+ } | {
1218
+ type: "object";
1219
+ properties: {
1220
+ boardId: {
1221
+ type: string;
1222
+ description: string;
1223
+ };
1224
+ };
1225
+ required: string[];
1226
+ } | {
1227
+ type: "object";
1228
+ properties: {
1229
+ boardId: {
1230
+ type: string;
1231
+ description: string;
1232
+ };
1233
+ cardsFrom: {
1234
+ type: string;
1235
+ items: {
1236
+ type: string;
1237
+ };
1238
+ description: string;
1239
+ };
1240
+ highlightLabel: {
1241
+ type: string;
1242
+ description: string;
1243
+ };
1244
+ limit: {
1245
+ type: string;
1246
+ description: string;
1247
+ };
1248
+ };
1249
+ required: string[];
1250
+ } | {
1251
+ type: "object";
1252
+ properties: {
1253
+ boardId: {
1254
+ type: string;
1255
+ description: string;
1256
+ };
1257
+ labelName: {
1258
+ type: string;
1259
+ description: string;
1260
+ };
1261
+ query: {
1262
+ type: string;
1263
+ description: string;
1264
+ };
1265
+ listId: {
1266
+ type: string;
1267
+ description: string;
1268
+ };
1269
+ withDescription: {
1270
+ type: string;
1271
+ description: string;
1272
+ };
1273
+ limit: {
1274
+ type: string;
1275
+ description: string;
1276
+ };
1277
+ offset: {
1278
+ type: string;
1279
+ description: string;
1280
+ };
1281
+ };
1282
+ required: string[];
1283
+ };
1284
+ }[];
1285
+ export { navigationTools } from "./navigation.js";
1286
+ export { cardTools } from "./cards.js";
1287
+ export { taskTools } from "./tasks.js";
1288
+ export { labelTools } from "./labels.js";
1289
+ export { commentTools } from "./comments.js";
1290
+ export { listTools } from "./lists.js";
1291
+ export { attachmentTools } from "./attachments.js";
1292
+ export { queryTools } from "./queries.js";
1293
+ //# sourceMappingURL=index.d.ts.map