kanbango 2.0.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/LLM_AGENTS.md ADDED
@@ -0,0 +1,484 @@
1
+ # MCP Server Guide for LLM Agents
2
+
3
+ Complete guide for integrating kanbango MCP server into LLM agents and AI assistants.
4
+
5
+ ## Quick Integration
6
+
7
+ ### Configuration
8
+
9
+ Add to your MCP client configuration:
10
+
11
+ **Claude Desktop:**
12
+ ```json
13
+ {
14
+ "mcpServers": {
15
+ "kanbango": {
16
+ "command": "npx",
17
+ "args": ["kanbango", "mcp"]
18
+ }
19
+ }
20
+ }
21
+ ```
22
+
23
+ **General MCP:**
24
+ ```json
25
+ {
26
+ "mcpServers": {
27
+ "kanbango": {
28
+ "command": "node",
29
+ "args": ["path/to/mcp-server.js"]
30
+ }
31
+ }
32
+ }
33
+ ```
34
+
35
+ ### Project Automation (Claude Code + OpenCode)
36
+
37
+ Generate project configs automatically in the current folder:
38
+
39
+ ```bash
40
+ # Local install (recommended)
41
+ npx kanbango mcp-init
42
+
43
+ # Use npx-based command in configs
44
+ npx kanbango mcp-init --npx
45
+
46
+ # Only Claude Code config
47
+ npx kanbango mcp-init --claude
48
+
49
+ # Only OpenCode config
50
+ npx kanbango mcp-init --opencode
51
+ ```
52
+
53
+ This creates:
54
+ - `.mcp.json` for Claude Code (project-scoped MCP servers)
55
+ - `opencode.json` for OpenCode (project-scoped MCP servers)
56
+
57
+ ## Available Tools
58
+
59
+ ### 1. kanban_read
60
+
61
+ Read tasks from kanban board. Can list all tasks, filter by column/epic, or get details of a specific task.
62
+
63
+ **Operations:**
64
+ - `list` - Get all tasks (with optional filters)
65
+ - `show` - Get specific task details
66
+
67
+ **Parameters:**
68
+ ```json
69
+ {
70
+ "operation": "list", // "list" or "show"
71
+ "task_id": "PI-014-google-calendar", // Required for "show"
72
+ "col": "planned", // Optional: "active" | "planned" | "icebox" | "done"
73
+ "epic": "Phase 1" // Optional: filter by epic group
74
+ }
75
+ ```
76
+
77
+ **Examples:**
78
+
79
+ List all tasks:
80
+ ```json
81
+ {
82
+ "operation": "list"
83
+ }
84
+ ```
85
+
86
+ List tasks in active column:
87
+ ```json
88
+ {
89
+ "operation": "list",
90
+ "col": "active"
91
+ }
92
+ ```
93
+
94
+ Get specific task details:
95
+ ```json
96
+ {
97
+ "operation": "show",
98
+ "task_id": "PI-014-google-calendar"
99
+ }
100
+ ```
101
+
102
+ **Response (list):**
103
+ ```json
104
+ [
105
+ {
106
+ "id": "PI-014-google-calendar",
107
+ "title": "PI-014: Google Calendar Integration",
108
+ "column": "active",
109
+ "epic_group": "Phase 1",
110
+ "created": "2026-03-15",
111
+ "tasks": [
112
+ { "done": true, "text": "API authentication" },
113
+ { "done": false, "text": "Event synchronization" }
114
+ ]
115
+ }
116
+ ]
117
+ ```
118
+
119
+ **Response (show):**
120
+ ```json
121
+ {
122
+ "id": "PI-014-google-calendar",
123
+ "title": "PI-014: Google Calendar Integration",
124
+ "column": "active",
125
+ "epic_group": "Phase 1",
126
+ "created": "2026-03-15",
127
+ "tasks": [
128
+ { "done": true, "text": "API authentication" },
129
+ { "done": false, "text": "Event synchronization" }
130
+ ]
131
+ }
132
+ ```
133
+
134
+ ---
135
+
136
+ ### 2. kanban_create
137
+
138
+ Create a new task on kanban board.
139
+
140
+ **Parameters:**
141
+ ```json
142
+ {
143
+ "title": "New feature implementation", // Required
144
+ "col": "planned", // Optional: "active" | "planned" | "icebox" | "done" (default: "planned")
145
+ "epic": "Phase 1" // Optional: epic group name (default: "—")
146
+ }
147
+ ```
148
+
149
+ **Examples:**
150
+
151
+ Create task with defaults:
152
+ ```json
153
+ {
154
+ "title": "Add user authentication"
155
+ }
156
+ ```
157
+
158
+ Create task with custom column and epic:
159
+ ```json
160
+ {
161
+ "title": "Database optimization",
162
+ "col": "planned",
163
+ "epic": "Performance"
164
+ }
165
+ ```
166
+
167
+ **Response:**
168
+ ```json
169
+ {
170
+ "id": "PI-015-database-optimization",
171
+ "title": "PI-015: Database optimization",
172
+ "column": "planned",
173
+ "epic_group": "Performance",
174
+ "created": "2026-03-16",
175
+ "tasks": []
176
+ }
177
+ ```
178
+
179
+ ---
180
+
181
+ ### 3. kanban_update
182
+
183
+ Update existing tasks on kanban board. Can move tasks between columns, toggle subtask completion, or update task details.
184
+
185
+ **Operations:**
186
+ - `move` - Move task to different column
187
+ - `toggle` - Toggle subtask completion
188
+ - `update` - Update task title and/or subtask list
189
+
190
+ **Parameters:**
191
+ ```json
192
+ {
193
+ "operation": "move", // "move" | "toggle" | "update"
194
+ "task_id": "PI-014-google-calendar", // Required
195
+ "column": "done", // Required for "move"
196
+ "idx": 0, // Required for "toggle"
197
+ "title": "Updated title", // Optional for "update"
198
+ "tasks": [ // Optional for "update"
199
+ { "done": true, "text": "Task 1" },
200
+ { "done": false, "text": "Task 2" }
201
+ ]
202
+ }
203
+ ```
204
+
205
+ **Examples:**
206
+
207
+ Move task to done:
208
+ ```json
209
+ {
210
+ "operation": "move",
211
+ "task_id": "PI-014-google-calendar",
212
+ "column": "done"
213
+ }
214
+ ```
215
+
216
+ Toggle first subtask:
217
+ ```json
218
+ {
219
+ "operation": "toggle",
220
+ "task_id": "PI-014-google-calendar",
221
+ "idx": 0
222
+ }
223
+ ```
224
+
225
+ Update task title:
226
+ ```json
227
+ {
228
+ "operation": "update",
229
+ "task_id": "PI-014-google-calendar",
230
+ "title": "Google Calendar API Integration"
231
+ }
232
+ ```
233
+
234
+ Update subtasks:
235
+ ```json
236
+ {
237
+ "operation": "update",
238
+ "task_id": "PI-014-google-calendar",
239
+ "tasks": [
240
+ { "done": true, "text": "API authentication" },
241
+ { "done": true, "text": "Event synchronization" },
242
+ { "done": false, "text": "Error handling" }
243
+ ]
244
+ }
245
+ ```
246
+
247
+ **Response (move):**
248
+ ```json
249
+ {
250
+ "success": true,
251
+ "message": "Moved PI-014-google-calendar to done"
252
+ }
253
+ ```
254
+
255
+ **Response (toggle/update):**
256
+ ```json
257
+ {
258
+ "id": "PI-014-google-calendar",
259
+ "title": "PI-014: Google Calendar Integration",
260
+ "column": "active",
261
+ "epic_group": "Phase 1",
262
+ "created": "2026-03-15",
263
+ "tasks": [
264
+ { "done": false, "text": "API authentication" },
265
+ { "done": false, "text": "Event synchronization" }
266
+ ]
267
+ }
268
+ ```
269
+
270
+ ---
271
+
272
+ ### 4. kanban_gui_start
273
+
274
+ Start the web GUI server for the kanban board.
275
+
276
+ **Parameters:**
277
+ ```json
278
+ {
279
+ "port": 5500 // Optional: port for GUI (default 5500)
280
+ }
281
+ ```
282
+
283
+ **Examples:**
284
+
285
+ Start GUI on default port:
286
+ ```json
287
+ {}
288
+ ```
289
+
290
+ Start GUI on custom port:
291
+ ```json
292
+ {
293
+ "port": 8080
294
+ }
295
+ ```
296
+
297
+ **Response:**
298
+ ```json
299
+ {
300
+ "status": "started",
301
+ "port": 5500,
302
+ "pid": 12345,
303
+ "url": "http://localhost:5500"
304
+ }
305
+ ```
306
+
307
+ ---
308
+
309
+ ### 5. kanban_gui_stop
310
+
311
+ Stop the web GUI server if it is running.
312
+
313
+ **Parameters:**
314
+ ```json
315
+ {}
316
+ ```
317
+
318
+ **Response:**
319
+ ```json
320
+ {
321
+ "status": "stopping",
322
+ "port": 5500
323
+ }
324
+ ```
325
+
326
+ ---
327
+
328
+ ### 6. kanban_gui_status
329
+
330
+ Get status of the web GUI server.
331
+
332
+ **Parameters:**
333
+ ```json
334
+ {}
335
+ ```
336
+
337
+ **Response (running):**
338
+ ```json
339
+ {
340
+ "status": "running",
341
+ "port": 5500,
342
+ "pid": 12345,
343
+ "url": "http://localhost:5500"
344
+ }
345
+ ```
346
+
347
+ **Response (not running):**
348
+ ```json
349
+ {
350
+ "status": "not_running"
351
+ }
352
+ ```
353
+
354
+ ---
355
+
356
+ ## Data Structure
357
+
358
+ ### Task Object
359
+
360
+ ```json
361
+ {
362
+ "id": "string", // Unique task identifier (e.g., "PI-014-google-calendar")
363
+ "title": "string", // Full title with ID prefix
364
+ "column": "string", // "active" | "planned" | "icebox" | "done"
365
+ "epic_group": "string", // Epic group name or "—"
366
+ "created": "string", // Creation date (YYYY-MM-DD)
367
+ "tasks": [
368
+ {
369
+ "done": "boolean", // Subtask completion status
370
+ "text": "string" // Subtask description
371
+ }
372
+ ]
373
+ }
374
+ ```
375
+
376
+ ### Columns
377
+
378
+ - `active` - In progress (max 1-2 tasks recommended)
379
+ - `planned` - Planned for implementation
380
+ - `icebox` - Frozen / nice-to-have
381
+ - `done` - Completed
382
+
383
+ ---
384
+
385
+ ## Usage Patterns
386
+
387
+ ### Pattern 1: Task Discovery
388
+
389
+ ```json
390
+ // List all active tasks
391
+ { "operation": "list", "col": "active" }
392
+ ```
393
+
394
+ ### Pattern 2: Task Creation Workflow
395
+
396
+ ```json
397
+ // 1. Create task
398
+ { "title": "New feature", "col": "planned", "epic": "Phase 1" }
399
+
400
+ // 2. Get task details to see generated ID
401
+ { "operation": "show", "task_id": "PI-015-new-feature" }
402
+
403
+ // 3. Update with subtasks
404
+ {
405
+ "operation": "update",
406
+ "task_id": "PI-015-new-feature",
407
+ "tasks": [
408
+ { "done": false, "text": "Research" },
409
+ { "done": false, "text": "Implementation" }
410
+ ]
411
+ }
412
+ ```
413
+
414
+ ### Pattern 3: Task Progression
415
+
416
+ ```json
417
+ // Move from planned → active
418
+ { "operation": "move", "task_id": "PI-015", "column": "active" }
419
+
420
+ // Mark subtask complete
421
+ { "operation": "toggle", "task_id": "PI-015", "idx": 0 }
422
+
423
+ // Move from active → done
424
+ { "operation": "move", "task_id": "PI-015", "column": "done" }
425
+ ```
426
+
427
+ ### Pattern 4: Epic Management
428
+
429
+ ```json
430
+ // List all tasks in an epic
431
+ { "operation": "list", "epic": "Performance" }
432
+
433
+ // Create task in specific epic
434
+ { "title": "Cache optimization", "epic": "Performance" }
435
+ ```
436
+
437
+ ---
438
+
439
+ ## Best Practices for LLM Agents
440
+
441
+ 1. **Always use `kanban_read` first** - Discover existing tasks before creating new ones
442
+ 2. **Use `col` filter** - Narrow down to relevant column when listing
443
+ 3. **Use `epic` grouping** - Organize tasks by features/phases
444
+ 4. **Work through subtasks** - Toggle each subtask as you complete them
445
+ 5. **Move tasks through workflow** - planned → active → done progression
446
+ 6. **Use `show` operation** - Get full task details including subtasks
447
+ 7. **Handle task IDs** - Always use the full task ID returned from create/show
448
+
449
+ ---
450
+
451
+ ## Error Handling
452
+
453
+ All tools return error messages in this format:
454
+
455
+ ```json
456
+ {
457
+ "error": "Error message description"
458
+ }
459
+ ```
460
+
461
+ Common errors:
462
+ - `"Task not found: PI-999"` - Task ID doesn't exist
463
+ - `"Failed to move task: PI-999"` - Move operation failed
464
+ - `"task_id is required for 'show' operation"` - Missing required parameter
465
+
466
+ ---
467
+
468
+ ## Installation for Users
469
+
470
+ Tell users to run:
471
+
472
+ ```bash
473
+ npm install -g kanbango
474
+ ```
475
+
476
+ Then add to their MCP configuration using the examples above.
477
+
478
+ ---
479
+
480
+ ## Support
481
+
482
+ - GitHub: https://github.com/k0r81/kanbango
483
+ - Issues: https://github.com/k0r81/kanbango/issues
484
+ - Full docs: https://github.com/k0r81/kanbango#readme