@opvs-ai/mcp 0.7.3 → 2.6.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 +133 -20
- package/dist/index.d.ts +19 -9
- package/dist/index.js +907 -74
- package/dist/index.js.map +1 -1
- package/package.json +11 -9
- package/dist/generated-tools.d.ts +0 -30
- package/dist/generated-tools.js +0 -4099
- package/dist/generated-tools.js.map +0 -1
- package/dist/handlers/agent.d.ts +0 -6
- package/dist/handlers/agent.js +0 -93
- package/dist/handlers/agent.js.map +0 -1
- package/dist/handlers/auth.d.ts +0 -6
- package/dist/handlers/auth.js +0 -86
- package/dist/handlers/auth.js.map +0 -1
- package/dist/handlers/board.d.ts +0 -6
- package/dist/handlers/board.js +0 -232
- package/dist/handlers/board.js.map +0 -1
- package/dist/handlers/docs.d.ts +0 -6
- package/dist/handlers/docs.js +0 -140
- package/dist/handlers/docs.js.map +0 -1
- package/dist/handlers/protocol.d.ts +0 -14
- package/dist/handlers/protocol.js +0 -448
- package/dist/handlers/protocol.js.map +0 -1
- package/dist/handlers/stages.d.ts +0 -6
- package/dist/handlers/stages.js +0 -66
- package/dist/handlers/stages.js.map +0 -1
- package/dist/handlers/types.d.ts +0 -31
- package/dist/handlers/types.js +0 -25
- package/dist/handlers/types.js.map +0 -1
- package/dist/handlers/views.d.ts +0 -6
- package/dist/handlers/views.js +0 -74
- package/dist/handlers/views.js.map +0 -1
package/dist/generated-tools.js
DELETED
|
@@ -1,4099 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* opvsHUB MCP Tools — Auto-generated from schema.yaml
|
|
3
|
-
*
|
|
4
|
-
* DO NOT EDIT — regenerate with: opvs-skills generate --all --mcp
|
|
5
|
-
*
|
|
6
|
-
* 6 skills, 112 tools total.
|
|
7
|
-
* Paste this into packages/mcp/src/index.ts or import as a module.
|
|
8
|
-
*/
|
|
9
|
-
export const GENERATED_TOOLS = [
|
|
10
|
-
{
|
|
11
|
-
name: "agentboard_getSession",
|
|
12
|
-
description: "Get full board context + assigned tasks in one call. This is the primary entry point for any agent starting work on a board. Returns board metadata, column names, task counts, and the agent's assigned tasks.",
|
|
13
|
-
inputSchema: {
|
|
14
|
-
"type": "object",
|
|
15
|
-
"properties": {
|
|
16
|
-
"board_id": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"description": "The board to get session context for"
|
|
19
|
-
},
|
|
20
|
-
"workspace": {
|
|
21
|
-
"type": "string",
|
|
22
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"required": [
|
|
26
|
-
"board_id"
|
|
27
|
-
]
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
name: "agentboard_listTasks",
|
|
32
|
-
description: "List tasks on a board, optionally filtered by status, priority, or assignee.",
|
|
33
|
-
inputSchema: {
|
|
34
|
-
"type": "object",
|
|
35
|
-
"properties": {
|
|
36
|
-
"board_id": {
|
|
37
|
-
"type": "string",
|
|
38
|
-
"description": "The board to list tasks from"
|
|
39
|
-
},
|
|
40
|
-
"status": {
|
|
41
|
-
"type": "string",
|
|
42
|
-
"description": "Filter by task status",
|
|
43
|
-
"enum": [
|
|
44
|
-
"pending",
|
|
45
|
-
"assigned",
|
|
46
|
-
"in_progress",
|
|
47
|
-
"blocked",
|
|
48
|
-
"review",
|
|
49
|
-
"done",
|
|
50
|
-
"failed"
|
|
51
|
-
]
|
|
52
|
-
},
|
|
53
|
-
"priority": {
|
|
54
|
-
"type": "string",
|
|
55
|
-
"description": "Filter by priority level",
|
|
56
|
-
"enum": [
|
|
57
|
-
"low",
|
|
58
|
-
"medium",
|
|
59
|
-
"high",
|
|
60
|
-
"critical"
|
|
61
|
-
]
|
|
62
|
-
},
|
|
63
|
-
"assignee_id": {
|
|
64
|
-
"type": "string",
|
|
65
|
-
"description": "Filter to tasks assigned to a specific user/agent"
|
|
66
|
-
},
|
|
67
|
-
"self": {
|
|
68
|
-
"type": "boolean",
|
|
69
|
-
"description": "If true, filter to tasks assigned to the calling agent"
|
|
70
|
-
},
|
|
71
|
-
"workspace": {
|
|
72
|
-
"type": "string",
|
|
73
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
"required": [
|
|
77
|
-
"board_id"
|
|
78
|
-
]
|
|
79
|
-
},
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
name: "agentboard_createTask",
|
|
83
|
-
description: "Create a new task on a board. Requires title, column_id, and board_id. Use agent_instructions and agent_context when the task is for an AI agent.",
|
|
84
|
-
inputSchema: {
|
|
85
|
-
"type": "object",
|
|
86
|
-
"properties": {
|
|
87
|
-
"title": {
|
|
88
|
-
"type": "string",
|
|
89
|
-
"description": "Task title"
|
|
90
|
-
},
|
|
91
|
-
"column_id": {
|
|
92
|
-
"type": "string",
|
|
93
|
-
"description": "Column to place the task in"
|
|
94
|
-
},
|
|
95
|
-
"board_id": {
|
|
96
|
-
"type": "string",
|
|
97
|
-
"description": "Board this task belongs to"
|
|
98
|
-
},
|
|
99
|
-
"description": {
|
|
100
|
-
"type": "string",
|
|
101
|
-
"description": "Markdown description of the task"
|
|
102
|
-
},
|
|
103
|
-
"priority": {
|
|
104
|
-
"type": "string",
|
|
105
|
-
"description": "Task priority",
|
|
106
|
-
"enum": [
|
|
107
|
-
"low",
|
|
108
|
-
"medium",
|
|
109
|
-
"high",
|
|
110
|
-
"critical"
|
|
111
|
-
]
|
|
112
|
-
},
|
|
113
|
-
"status": {
|
|
114
|
-
"type": "string",
|
|
115
|
-
"description": "Initial task status",
|
|
116
|
-
"enum": [
|
|
117
|
-
"pending",
|
|
118
|
-
"assigned",
|
|
119
|
-
"in_progress"
|
|
120
|
-
]
|
|
121
|
-
},
|
|
122
|
-
"assignee_id": {
|
|
123
|
-
"type": "string",
|
|
124
|
-
"description": "UUID of the user/agent to assign this task to"
|
|
125
|
-
},
|
|
126
|
-
"labels": {
|
|
127
|
-
"type": "array",
|
|
128
|
-
"description": "Labels/tags for the task",
|
|
129
|
-
"items": {
|
|
130
|
-
"type": "string"
|
|
131
|
-
}
|
|
132
|
-
},
|
|
133
|
-
"due_date": {
|
|
134
|
-
"type": "string",
|
|
135
|
-
"description": "Due date in ISO 8601 format"
|
|
136
|
-
},
|
|
137
|
-
"agent_instructions": {
|
|
138
|
-
"type": "string",
|
|
139
|
-
"description": "Instructions for the AI agent working this task"
|
|
140
|
-
},
|
|
141
|
-
"agent_context": {
|
|
142
|
-
"type": "object",
|
|
143
|
-
"description": "Structured context data for the agent (URLs, config, etc.)"
|
|
144
|
-
},
|
|
145
|
-
"parent_task_id": {
|
|
146
|
-
"type": "string",
|
|
147
|
-
"description": "Creates this as a subtask of the parent"
|
|
148
|
-
},
|
|
149
|
-
"workspace": {
|
|
150
|
-
"type": "string",
|
|
151
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
152
|
-
}
|
|
153
|
-
},
|
|
154
|
-
"required": [
|
|
155
|
-
"title",
|
|
156
|
-
"column_id",
|
|
157
|
-
"board_id"
|
|
158
|
-
]
|
|
159
|
-
},
|
|
160
|
-
},
|
|
161
|
-
{
|
|
162
|
-
name: "agentboard_updateTask",
|
|
163
|
-
description: "Update an existing task. Supports partial updates — only include fields being changed.",
|
|
164
|
-
inputSchema: {
|
|
165
|
-
"type": "object",
|
|
166
|
-
"properties": {
|
|
167
|
-
"task_id": {
|
|
168
|
-
"type": "string",
|
|
169
|
-
"description": "The task to update"
|
|
170
|
-
},
|
|
171
|
-
"title": {
|
|
172
|
-
"type": "string",
|
|
173
|
-
"description": "Updated task title"
|
|
174
|
-
},
|
|
175
|
-
"status": {
|
|
176
|
-
"type": "string",
|
|
177
|
-
"description": "Updated task status",
|
|
178
|
-
"enum": [
|
|
179
|
-
"pending",
|
|
180
|
-
"assigned",
|
|
181
|
-
"in_progress",
|
|
182
|
-
"blocked",
|
|
183
|
-
"review",
|
|
184
|
-
"done",
|
|
185
|
-
"failed"
|
|
186
|
-
]
|
|
187
|
-
},
|
|
188
|
-
"priority": {
|
|
189
|
-
"type": "string",
|
|
190
|
-
"description": "Updated priority",
|
|
191
|
-
"enum": [
|
|
192
|
-
"low",
|
|
193
|
-
"medium",
|
|
194
|
-
"high",
|
|
195
|
-
"critical"
|
|
196
|
-
]
|
|
197
|
-
},
|
|
198
|
-
"agent_result": {
|
|
199
|
-
"type": "object",
|
|
200
|
-
"description": "The agent's work output for this task (structured dict, not string)"
|
|
201
|
-
},
|
|
202
|
-
"description": {
|
|
203
|
-
"type": "string",
|
|
204
|
-
"description": "Updated markdown description"
|
|
205
|
-
},
|
|
206
|
-
"column_id": {
|
|
207
|
-
"type": "string",
|
|
208
|
-
"description": "Move task to a different column"
|
|
209
|
-
},
|
|
210
|
-
"workspace": {
|
|
211
|
-
"type": "string",
|
|
212
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
213
|
-
}
|
|
214
|
-
},
|
|
215
|
-
"required": [
|
|
216
|
-
"task_id"
|
|
217
|
-
]
|
|
218
|
-
},
|
|
219
|
-
},
|
|
220
|
-
{
|
|
221
|
-
name: "agentboard_addComment",
|
|
222
|
-
description: "Post a comment on a task. Agents use this to report progress, ask questions, or deliver results.",
|
|
223
|
-
inputSchema: {
|
|
224
|
-
"type": "object",
|
|
225
|
-
"properties": {
|
|
226
|
-
"task_id": {
|
|
227
|
-
"type": "string",
|
|
228
|
-
"description": "The task to comment on"
|
|
229
|
-
},
|
|
230
|
-
"content": {
|
|
231
|
-
"type": "string",
|
|
232
|
-
"description": "Markdown content of the comment"
|
|
233
|
-
},
|
|
234
|
-
"workspace": {
|
|
235
|
-
"type": "string",
|
|
236
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
237
|
-
}
|
|
238
|
-
},
|
|
239
|
-
"required": [
|
|
240
|
-
"task_id",
|
|
241
|
-
"content"
|
|
242
|
-
]
|
|
243
|
-
},
|
|
244
|
-
},
|
|
245
|
-
{
|
|
246
|
-
name: "agentboard_listComments",
|
|
247
|
-
description: "Get comments on a task, ordered newest first.",
|
|
248
|
-
inputSchema: {
|
|
249
|
-
"type": "object",
|
|
250
|
-
"properties": {
|
|
251
|
-
"task_id": {
|
|
252
|
-
"type": "string",
|
|
253
|
-
"description": "The task to get comments for"
|
|
254
|
-
},
|
|
255
|
-
"limit": {
|
|
256
|
-
"type": "number",
|
|
257
|
-
"description": "Maximum number of comments to return"
|
|
258
|
-
},
|
|
259
|
-
"workspace": {
|
|
260
|
-
"type": "string",
|
|
261
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
262
|
-
}
|
|
263
|
-
},
|
|
264
|
-
"required": [
|
|
265
|
-
"task_id"
|
|
266
|
-
]
|
|
267
|
-
},
|
|
268
|
-
},
|
|
269
|
-
{
|
|
270
|
-
name: "agentboard_listAgents",
|
|
271
|
-
description: "List agents available for the current brand. Returns agent names, slugs, types, status, and availability. Use this to discover who you can delegate tasks to or mention.",
|
|
272
|
-
inputSchema: {
|
|
273
|
-
"type": "object",
|
|
274
|
-
"properties": {
|
|
275
|
-
"search": {
|
|
276
|
-
"type": "string",
|
|
277
|
-
"description": "Search by agent name"
|
|
278
|
-
},
|
|
279
|
-
"agent_type": {
|
|
280
|
-
"type": "string",
|
|
281
|
-
"description": "Filter by agent type"
|
|
282
|
-
},
|
|
283
|
-
"page": {
|
|
284
|
-
"type": "number",
|
|
285
|
-
"description": "Page number (default 1)"
|
|
286
|
-
},
|
|
287
|
-
"per_page": {
|
|
288
|
-
"type": "number",
|
|
289
|
-
"description": "Results per page (default 50)"
|
|
290
|
-
},
|
|
291
|
-
"workspace": {
|
|
292
|
-
"type": "string",
|
|
293
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
},
|
|
297
|
-
},
|
|
298
|
-
{
|
|
299
|
-
name: "agentboard_listBoards",
|
|
300
|
-
description: "List all boards visible to the current brand/tenant.",
|
|
301
|
-
inputSchema: {
|
|
302
|
-
"type": "object",
|
|
303
|
-
"properties": {
|
|
304
|
-
"workspace": {
|
|
305
|
-
"type": "string",
|
|
306
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
},
|
|
310
|
-
},
|
|
311
|
-
{
|
|
312
|
-
name: "agentboard_getBoard",
|
|
313
|
-
description: "Get board details including name, description, columns, and task counts.",
|
|
314
|
-
inputSchema: {
|
|
315
|
-
"type": "object",
|
|
316
|
-
"properties": {
|
|
317
|
-
"board_id": {
|
|
318
|
-
"type": "string",
|
|
319
|
-
"description": "The board to retrieve"
|
|
320
|
-
},
|
|
321
|
-
"workspace": {
|
|
322
|
-
"type": "string",
|
|
323
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
"required": [
|
|
327
|
-
"board_id"
|
|
328
|
-
]
|
|
329
|
-
},
|
|
330
|
-
},
|
|
331
|
-
{
|
|
332
|
-
name: "agentboard_listColumns",
|
|
333
|
-
description: "List all columns on a board, ordered by position.",
|
|
334
|
-
inputSchema: {
|
|
335
|
-
"type": "object",
|
|
336
|
-
"properties": {
|
|
337
|
-
"board_id": {
|
|
338
|
-
"type": "string",
|
|
339
|
-
"description": "The board to list columns for"
|
|
340
|
-
},
|
|
341
|
-
"workspace": {
|
|
342
|
-
"type": "string",
|
|
343
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
344
|
-
}
|
|
345
|
-
},
|
|
346
|
-
"required": [
|
|
347
|
-
"board_id"
|
|
348
|
-
]
|
|
349
|
-
},
|
|
350
|
-
},
|
|
351
|
-
{
|
|
352
|
-
name: "agentboard_getTask",
|
|
353
|
-
description: "Get full details of a single task including title, description, status, priority, assignees, labels, agent instructions, and recent comments.",
|
|
354
|
-
inputSchema: {
|
|
355
|
-
"type": "object",
|
|
356
|
-
"properties": {
|
|
357
|
-
"task_id": {
|
|
358
|
-
"type": "string",
|
|
359
|
-
"description": "The task UUID"
|
|
360
|
-
},
|
|
361
|
-
"workspace": {
|
|
362
|
-
"type": "string",
|
|
363
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
364
|
-
}
|
|
365
|
-
},
|
|
366
|
-
"required": [
|
|
367
|
-
"task_id"
|
|
368
|
-
]
|
|
369
|
-
},
|
|
370
|
-
},
|
|
371
|
-
{
|
|
372
|
-
name: "agentboard_getActivity",
|
|
373
|
-
description: "Get the activity feed for a board — recent task changes, comments, and status updates.",
|
|
374
|
-
inputSchema: {
|
|
375
|
-
"type": "object",
|
|
376
|
-
"properties": {
|
|
377
|
-
"board_id": {
|
|
378
|
-
"type": "string",
|
|
379
|
-
"description": "The board to get activity for"
|
|
380
|
-
},
|
|
381
|
-
"limit": {
|
|
382
|
-
"type": "number",
|
|
383
|
-
"description": "Maximum number of activity entries (default 25)"
|
|
384
|
-
},
|
|
385
|
-
"workspace": {
|
|
386
|
-
"type": "string",
|
|
387
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
388
|
-
}
|
|
389
|
-
},
|
|
390
|
-
"required": [
|
|
391
|
-
"board_id"
|
|
392
|
-
]
|
|
393
|
-
},
|
|
394
|
-
},
|
|
395
|
-
{
|
|
396
|
-
name: "agentboard_getMetrics",
|
|
397
|
-
description: "Get board summary metrics — task counts by status, priority distribution, completion rates, and velocity stats.",
|
|
398
|
-
inputSchema: {
|
|
399
|
-
"type": "object",
|
|
400
|
-
"properties": {
|
|
401
|
-
"board_id": {
|
|
402
|
-
"type": "string",
|
|
403
|
-
"description": "The board to get metrics for"
|
|
404
|
-
},
|
|
405
|
-
"workspace": {
|
|
406
|
-
"type": "string",
|
|
407
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
408
|
-
}
|
|
409
|
-
},
|
|
410
|
-
"required": [
|
|
411
|
-
"board_id"
|
|
412
|
-
]
|
|
413
|
-
},
|
|
414
|
-
},
|
|
415
|
-
{
|
|
416
|
-
name: "agentboard_deleteBoard",
|
|
417
|
-
description: "Delete a board and all its tasks. This is destructive and cannot be undone.",
|
|
418
|
-
inputSchema: {
|
|
419
|
-
"type": "object",
|
|
420
|
-
"properties": {
|
|
421
|
-
"board_id": {
|
|
422
|
-
"type": "string",
|
|
423
|
-
"description": "The board to delete"
|
|
424
|
-
},
|
|
425
|
-
"workspace": {
|
|
426
|
-
"type": "string",
|
|
427
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
428
|
-
}
|
|
429
|
-
},
|
|
430
|
-
"required": [
|
|
431
|
-
"board_id"
|
|
432
|
-
]
|
|
433
|
-
},
|
|
434
|
-
},
|
|
435
|
-
{
|
|
436
|
-
name: "agentboard_deleteTask",
|
|
437
|
-
description: "Delete a single task. This is destructive and cannot be undone.",
|
|
438
|
-
inputSchema: {
|
|
439
|
-
"type": "object",
|
|
440
|
-
"properties": {
|
|
441
|
-
"task_id": {
|
|
442
|
-
"type": "string",
|
|
443
|
-
"description": "The task to delete"
|
|
444
|
-
},
|
|
445
|
-
"workspace": {
|
|
446
|
-
"type": "string",
|
|
447
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
448
|
-
}
|
|
449
|
-
},
|
|
450
|
-
"required": [
|
|
451
|
-
"task_id"
|
|
452
|
-
]
|
|
453
|
-
},
|
|
454
|
-
},
|
|
455
|
-
{
|
|
456
|
-
name: "agentboard_moveTask",
|
|
457
|
-
description: "Move a task to a different column and/or position.",
|
|
458
|
-
inputSchema: {
|
|
459
|
-
"type": "object",
|
|
460
|
-
"properties": {
|
|
461
|
-
"task_id": {
|
|
462
|
-
"type": "string",
|
|
463
|
-
"description": "The task to move"
|
|
464
|
-
},
|
|
465
|
-
"column_id": {
|
|
466
|
-
"type": "string",
|
|
467
|
-
"description": "Target column"
|
|
468
|
-
},
|
|
469
|
-
"position": {
|
|
470
|
-
"type": "number",
|
|
471
|
-
"description": "Position within the column (0 = top)"
|
|
472
|
-
},
|
|
473
|
-
"workspace": {
|
|
474
|
-
"type": "string",
|
|
475
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
476
|
-
}
|
|
477
|
-
},
|
|
478
|
-
"required": [
|
|
479
|
-
"task_id",
|
|
480
|
-
"column_id"
|
|
481
|
-
]
|
|
482
|
-
},
|
|
483
|
-
},
|
|
484
|
-
{
|
|
485
|
-
name: "agentboard_listSubtasks",
|
|
486
|
-
description: "List subtasks of a parent task. Returns child tasks with their status and priority.",
|
|
487
|
-
inputSchema: {
|
|
488
|
-
"type": "object",
|
|
489
|
-
"properties": {
|
|
490
|
-
"task_id": {
|
|
491
|
-
"type": "string",
|
|
492
|
-
"description": "Parent task UUID"
|
|
493
|
-
},
|
|
494
|
-
"workspace": {
|
|
495
|
-
"type": "string",
|
|
496
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
497
|
-
}
|
|
498
|
-
},
|
|
499
|
-
"required": [
|
|
500
|
-
"task_id"
|
|
501
|
-
]
|
|
502
|
-
},
|
|
503
|
-
},
|
|
504
|
-
{
|
|
505
|
-
name: "agentboard_searchTasks",
|
|
506
|
-
description: "Full-text search across all tasks/cards. Searches titles, descriptions, and comments.",
|
|
507
|
-
inputSchema: {
|
|
508
|
-
"type": "object",
|
|
509
|
-
"properties": {
|
|
510
|
-
"query": {
|
|
511
|
-
"type": "string",
|
|
512
|
-
"description": "Search query"
|
|
513
|
-
},
|
|
514
|
-
"board_id": {
|
|
515
|
-
"type": "string",
|
|
516
|
-
"description": "Scope to a specific board"
|
|
517
|
-
},
|
|
518
|
-
"limit": {
|
|
519
|
-
"type": "number",
|
|
520
|
-
"description": "Max results (default 25)"
|
|
521
|
-
},
|
|
522
|
-
"workspace": {
|
|
523
|
-
"type": "string",
|
|
524
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
525
|
-
}
|
|
526
|
-
},
|
|
527
|
-
"required": [
|
|
528
|
-
"query"
|
|
529
|
-
]
|
|
530
|
-
},
|
|
531
|
-
},
|
|
532
|
-
{
|
|
533
|
-
name: "agentboard_batchGetTasks",
|
|
534
|
-
description: "Get multiple tasks by IDs in one call (max 50). More efficient than calling getTask multiple times.",
|
|
535
|
-
inputSchema: {
|
|
536
|
-
"type": "object",
|
|
537
|
-
"properties": {
|
|
538
|
-
"ids": {
|
|
539
|
-
"type": "array",
|
|
540
|
-
"description": "Array of task UUIDs (max 50)",
|
|
541
|
-
"items": {
|
|
542
|
-
"type": "string"
|
|
543
|
-
}
|
|
544
|
-
},
|
|
545
|
-
"workspace": {
|
|
546
|
-
"type": "string",
|
|
547
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
548
|
-
}
|
|
549
|
-
},
|
|
550
|
-
"required": [
|
|
551
|
-
"ids"
|
|
552
|
-
]
|
|
553
|
-
},
|
|
554
|
-
},
|
|
555
|
-
{
|
|
556
|
-
name: "agentboard_createBoard",
|
|
557
|
-
description: "Create a new board. Default columns: Backlog, To Do, In Progress, Review, Done. Visibility: public (default) or private.",
|
|
558
|
-
inputSchema: {
|
|
559
|
-
"type": "object",
|
|
560
|
-
"properties": {
|
|
561
|
-
"name": {
|
|
562
|
-
"type": "string",
|
|
563
|
-
"description": "Board name"
|
|
564
|
-
},
|
|
565
|
-
"description": {
|
|
566
|
-
"type": "string",
|
|
567
|
-
"description": "Board description"
|
|
568
|
-
},
|
|
569
|
-
"visibility": {
|
|
570
|
-
"type": "string",
|
|
571
|
-
"description": "Board visibility",
|
|
572
|
-
"enum": [
|
|
573
|
-
"public",
|
|
574
|
-
"private"
|
|
575
|
-
]
|
|
576
|
-
},
|
|
577
|
-
"workspace": {
|
|
578
|
-
"type": "string",
|
|
579
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
580
|
-
}
|
|
581
|
-
},
|
|
582
|
-
"required": [
|
|
583
|
-
"name"
|
|
584
|
-
]
|
|
585
|
-
},
|
|
586
|
-
},
|
|
587
|
-
{
|
|
588
|
-
name: "agentboard_updateBoard",
|
|
589
|
-
description: "Update a board's name, description, or visibility. Provide only the fields you want to change.",
|
|
590
|
-
inputSchema: {
|
|
591
|
-
"type": "object",
|
|
592
|
-
"properties": {
|
|
593
|
-
"board_id": {
|
|
594
|
-
"type": "string",
|
|
595
|
-
"description": "Board UUID"
|
|
596
|
-
},
|
|
597
|
-
"name": {
|
|
598
|
-
"type": "string",
|
|
599
|
-
"description": "New name"
|
|
600
|
-
},
|
|
601
|
-
"description": {
|
|
602
|
-
"type": "string",
|
|
603
|
-
"description": "New description"
|
|
604
|
-
},
|
|
605
|
-
"visibility": {
|
|
606
|
-
"type": "string",
|
|
607
|
-
"description": "New visibility",
|
|
608
|
-
"enum": [
|
|
609
|
-
"public",
|
|
610
|
-
"private"
|
|
611
|
-
]
|
|
612
|
-
},
|
|
613
|
-
"workspace": {
|
|
614
|
-
"type": "string",
|
|
615
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
616
|
-
}
|
|
617
|
-
},
|
|
618
|
-
"required": [
|
|
619
|
-
"board_id"
|
|
620
|
-
]
|
|
621
|
-
},
|
|
622
|
-
},
|
|
623
|
-
{
|
|
624
|
-
name: "agentboard_createColumn",
|
|
625
|
-
description: "Create a new column on a board. New column is added at the end. Use reorderColumns to change position.",
|
|
626
|
-
inputSchema: {
|
|
627
|
-
"type": "object",
|
|
628
|
-
"properties": {
|
|
629
|
-
"board_id": {
|
|
630
|
-
"type": "string",
|
|
631
|
-
"description": "Board UUID"
|
|
632
|
-
},
|
|
633
|
-
"name": {
|
|
634
|
-
"type": "string",
|
|
635
|
-
"description": "Column name (e.g. 'In Review', 'Blocked')"
|
|
636
|
-
},
|
|
637
|
-
"color": {
|
|
638
|
-
"type": "string",
|
|
639
|
-
"description": "Column color hex (e.g. '#3B82F6')"
|
|
640
|
-
},
|
|
641
|
-
"wip_limit": {
|
|
642
|
-
"type": "number",
|
|
643
|
-
"description": "Max tasks allowed in this column"
|
|
644
|
-
},
|
|
645
|
-
"workspace": {
|
|
646
|
-
"type": "string",
|
|
647
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
648
|
-
}
|
|
649
|
-
},
|
|
650
|
-
"required": [
|
|
651
|
-
"board_id",
|
|
652
|
-
"name"
|
|
653
|
-
]
|
|
654
|
-
},
|
|
655
|
-
},
|
|
656
|
-
{
|
|
657
|
-
name: "agentboard_reorderColumns",
|
|
658
|
-
description: "Set the order of columns on a board. Pass ALL column UUIDs in desired order — omitted columns will be removed.",
|
|
659
|
-
inputSchema: {
|
|
660
|
-
"type": "object",
|
|
661
|
-
"properties": {
|
|
662
|
-
"board_id": {
|
|
663
|
-
"type": "string",
|
|
664
|
-
"description": "Board UUID"
|
|
665
|
-
},
|
|
666
|
-
"column_ids": {
|
|
667
|
-
"type": "array",
|
|
668
|
-
"description": "ALL column UUIDs in desired left-to-right order",
|
|
669
|
-
"items": {
|
|
670
|
-
"type": "string"
|
|
671
|
-
}
|
|
672
|
-
},
|
|
673
|
-
"workspace": {
|
|
674
|
-
"type": "string",
|
|
675
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
676
|
-
}
|
|
677
|
-
},
|
|
678
|
-
"required": [
|
|
679
|
-
"board_id",
|
|
680
|
-
"column_ids"
|
|
681
|
-
]
|
|
682
|
-
},
|
|
683
|
-
},
|
|
684
|
-
{
|
|
685
|
-
name: "agentboard_listStages",
|
|
686
|
-
description: "List stages (sequential in-card steps) for a task. Stages enable multi-agent handoff workflows within a single task.",
|
|
687
|
-
inputSchema: {
|
|
688
|
-
"type": "object",
|
|
689
|
-
"properties": {
|
|
690
|
-
"task_id": {
|
|
691
|
-
"type": "string",
|
|
692
|
-
"description": "Task UUID"
|
|
693
|
-
},
|
|
694
|
-
"workspace": {
|
|
695
|
-
"type": "string",
|
|
696
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
697
|
-
}
|
|
698
|
-
},
|
|
699
|
-
"required": [
|
|
700
|
-
"task_id"
|
|
701
|
-
]
|
|
702
|
-
},
|
|
703
|
-
},
|
|
704
|
-
{
|
|
705
|
-
name: "agentboard_createStage",
|
|
706
|
-
description: "Create a stage on a task. The first stage auto-activates. Subsequent stages stay pending until the previous one is completed via handoff.",
|
|
707
|
-
inputSchema: {
|
|
708
|
-
"type": "object",
|
|
709
|
-
"properties": {
|
|
710
|
-
"task_id": {
|
|
711
|
-
"type": "string",
|
|
712
|
-
"description": "Task UUID"
|
|
713
|
-
},
|
|
714
|
-
"title": {
|
|
715
|
-
"type": "string",
|
|
716
|
-
"description": "Stage title"
|
|
717
|
-
},
|
|
718
|
-
"description": {
|
|
719
|
-
"type": "string",
|
|
720
|
-
"description": "Stage description"
|
|
721
|
-
},
|
|
722
|
-
"assignee_agent_id": {
|
|
723
|
-
"type": "string",
|
|
724
|
-
"description": "Agent UUID to assign this stage to"
|
|
725
|
-
},
|
|
726
|
-
"agent_instructions": {
|
|
727
|
-
"type": "string",
|
|
728
|
-
"description": "Instructions for the agent handling this stage"
|
|
729
|
-
},
|
|
730
|
-
"position": {
|
|
731
|
-
"type": "number",
|
|
732
|
-
"description": "Position in stage order"
|
|
733
|
-
},
|
|
734
|
-
"workspace": {
|
|
735
|
-
"type": "string",
|
|
736
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
737
|
-
}
|
|
738
|
-
},
|
|
739
|
-
"required": [
|
|
740
|
-
"task_id",
|
|
741
|
-
"title"
|
|
742
|
-
]
|
|
743
|
-
},
|
|
744
|
-
},
|
|
745
|
-
{
|
|
746
|
-
name: "agentboard_updateStage",
|
|
747
|
-
description: "Update a stage (pending or active only). Provide only the fields you want to change.",
|
|
748
|
-
inputSchema: {
|
|
749
|
-
"type": "object",
|
|
750
|
-
"properties": {
|
|
751
|
-
"task_id": {
|
|
752
|
-
"type": "string",
|
|
753
|
-
"description": "Task UUID"
|
|
754
|
-
},
|
|
755
|
-
"stage_id": {
|
|
756
|
-
"type": "string",
|
|
757
|
-
"description": "Stage UUID"
|
|
758
|
-
},
|
|
759
|
-
"title": {
|
|
760
|
-
"type": "string",
|
|
761
|
-
"description": "New title"
|
|
762
|
-
},
|
|
763
|
-
"description": {
|
|
764
|
-
"type": "string",
|
|
765
|
-
"description": "New description"
|
|
766
|
-
},
|
|
767
|
-
"assignee_agent_id": {
|
|
768
|
-
"type": "string",
|
|
769
|
-
"description": "New agent assignment"
|
|
770
|
-
},
|
|
771
|
-
"agent_instructions": {
|
|
772
|
-
"type": "string",
|
|
773
|
-
"description": "New agent instructions"
|
|
774
|
-
},
|
|
775
|
-
"workspace": {
|
|
776
|
-
"type": "string",
|
|
777
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
778
|
-
}
|
|
779
|
-
},
|
|
780
|
-
"required": [
|
|
781
|
-
"task_id",
|
|
782
|
-
"stage_id"
|
|
783
|
-
]
|
|
784
|
-
},
|
|
785
|
-
},
|
|
786
|
-
{
|
|
787
|
-
name: "agentboard_completeStage",
|
|
788
|
-
description: "Complete a stage and hand off to the next one. Requires a handoff report with what_was_done (min 10 chars) and output. If this is the last stage, the task can be completed.",
|
|
789
|
-
inputSchema: {
|
|
790
|
-
"type": "object",
|
|
791
|
-
"properties": {
|
|
792
|
-
"task_id": {
|
|
793
|
-
"type": "string",
|
|
794
|
-
"description": "Task UUID"
|
|
795
|
-
},
|
|
796
|
-
"stage_id": {
|
|
797
|
-
"type": "string",
|
|
798
|
-
"description": "Stage UUID to complete"
|
|
799
|
-
},
|
|
800
|
-
"what_was_done": {
|
|
801
|
-
"type": "string",
|
|
802
|
-
"description": "Summary of work completed in this stage (min 10 chars)"
|
|
803
|
-
},
|
|
804
|
-
"output": {
|
|
805
|
-
"type": "string",
|
|
806
|
-
"description": "Deliverable or result of this stage"
|
|
807
|
-
},
|
|
808
|
-
"next_owner_context": {
|
|
809
|
-
"type": "string",
|
|
810
|
-
"description": "Context or instructions for the next stage's assignee"
|
|
811
|
-
},
|
|
812
|
-
"resolution": {
|
|
813
|
-
"type": "string",
|
|
814
|
-
"description": "How this stage ended",
|
|
815
|
-
"enum": [
|
|
816
|
-
"hand_off",
|
|
817
|
-
"escalate",
|
|
818
|
-
"blocked",
|
|
819
|
-
"cancelled"
|
|
820
|
-
]
|
|
821
|
-
},
|
|
822
|
-
"workspace": {
|
|
823
|
-
"type": "string",
|
|
824
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
825
|
-
}
|
|
826
|
-
},
|
|
827
|
-
"required": [
|
|
828
|
-
"task_id",
|
|
829
|
-
"stage_id",
|
|
830
|
-
"what_was_done",
|
|
831
|
-
"output"
|
|
832
|
-
]
|
|
833
|
-
},
|
|
834
|
-
},
|
|
835
|
-
{
|
|
836
|
-
name: "agentboard_reorderStages",
|
|
837
|
-
description: "Reorder pending stages on a task. Active and completed stages cannot be reordered.",
|
|
838
|
-
inputSchema: {
|
|
839
|
-
"type": "object",
|
|
840
|
-
"properties": {
|
|
841
|
-
"task_id": {
|
|
842
|
-
"type": "string",
|
|
843
|
-
"description": "Task UUID"
|
|
844
|
-
},
|
|
845
|
-
"order": {
|
|
846
|
-
"type": "array",
|
|
847
|
-
"description": "Stage UUIDs in desired order",
|
|
848
|
-
"items": {
|
|
849
|
-
"type": "string"
|
|
850
|
-
}
|
|
851
|
-
},
|
|
852
|
-
"workspace": {
|
|
853
|
-
"type": "string",
|
|
854
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
855
|
-
}
|
|
856
|
-
},
|
|
857
|
-
"required": [
|
|
858
|
-
"task_id",
|
|
859
|
-
"order"
|
|
860
|
-
]
|
|
861
|
-
},
|
|
862
|
-
},
|
|
863
|
-
{
|
|
864
|
-
name: "agentboard_listTaskLinks",
|
|
865
|
-
description: "List links between tasks (related, blocks, blocked_by, etc.).",
|
|
866
|
-
inputSchema: {
|
|
867
|
-
"type": "object",
|
|
868
|
-
"properties": {
|
|
869
|
-
"task_id": {
|
|
870
|
-
"type": "string",
|
|
871
|
-
"description": "Task UUID"
|
|
872
|
-
},
|
|
873
|
-
"workspace": {
|
|
874
|
-
"type": "string",
|
|
875
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
876
|
-
}
|
|
877
|
-
},
|
|
878
|
-
"required": [
|
|
879
|
-
"task_id"
|
|
880
|
-
]
|
|
881
|
-
},
|
|
882
|
-
},
|
|
883
|
-
{
|
|
884
|
-
name: "agentboard_createTaskLink",
|
|
885
|
-
description: "Create a link between two tasks (e.g. related, blocks, blocked_by, parent, child).",
|
|
886
|
-
inputSchema: {
|
|
887
|
-
"type": "object",
|
|
888
|
-
"properties": {
|
|
889
|
-
"task_id": {
|
|
890
|
-
"type": "string",
|
|
891
|
-
"description": "Source task UUID"
|
|
892
|
-
},
|
|
893
|
-
"target_task_id": {
|
|
894
|
-
"type": "string",
|
|
895
|
-
"description": "Target task UUID"
|
|
896
|
-
},
|
|
897
|
-
"link_type": {
|
|
898
|
-
"type": "string",
|
|
899
|
-
"description": "Link type (related, blocks, blocked_by, parent, child)"
|
|
900
|
-
},
|
|
901
|
-
"workspace": {
|
|
902
|
-
"type": "string",
|
|
903
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
904
|
-
}
|
|
905
|
-
},
|
|
906
|
-
"required": [
|
|
907
|
-
"task_id",
|
|
908
|
-
"target_task_id"
|
|
909
|
-
]
|
|
910
|
-
},
|
|
911
|
-
},
|
|
912
|
-
{
|
|
913
|
-
name: "agentboard_deleteTaskLink",
|
|
914
|
-
description: "Delete a task link by its ID.",
|
|
915
|
-
inputSchema: {
|
|
916
|
-
"type": "object",
|
|
917
|
-
"properties": {
|
|
918
|
-
"link_id": {
|
|
919
|
-
"type": "string",
|
|
920
|
-
"description": "Link UUID"
|
|
921
|
-
},
|
|
922
|
-
"workspace": {
|
|
923
|
-
"type": "string",
|
|
924
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
925
|
-
}
|
|
926
|
-
},
|
|
927
|
-
"required": [
|
|
928
|
-
"link_id"
|
|
929
|
-
]
|
|
930
|
-
},
|
|
931
|
-
},
|
|
932
|
-
{
|
|
933
|
-
name: "agentboard_listBoardMembers",
|
|
934
|
-
description: "List members of a board (users and agents with access).",
|
|
935
|
-
inputSchema: {
|
|
936
|
-
"type": "object",
|
|
937
|
-
"properties": {
|
|
938
|
-
"board_id": {
|
|
939
|
-
"type": "string",
|
|
940
|
-
"description": "Board UUID"
|
|
941
|
-
},
|
|
942
|
-
"workspace": {
|
|
943
|
-
"type": "string",
|
|
944
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
945
|
-
}
|
|
946
|
-
},
|
|
947
|
-
"required": [
|
|
948
|
-
"board_id"
|
|
949
|
-
]
|
|
950
|
-
},
|
|
951
|
-
},
|
|
952
|
-
{
|
|
953
|
-
name: "agentboard_addBoardMember",
|
|
954
|
-
description: "Add a user or agent as a member of a board.",
|
|
955
|
-
inputSchema: {
|
|
956
|
-
"type": "object",
|
|
957
|
-
"properties": {
|
|
958
|
-
"board_id": {
|
|
959
|
-
"type": "string",
|
|
960
|
-
"description": "Board UUID"
|
|
961
|
-
},
|
|
962
|
-
"user_id": {
|
|
963
|
-
"type": "string",
|
|
964
|
-
"description": "User UUID to add"
|
|
965
|
-
},
|
|
966
|
-
"role": {
|
|
967
|
-
"type": "string",
|
|
968
|
-
"description": "Member role",
|
|
969
|
-
"enum": [
|
|
970
|
-
"member",
|
|
971
|
-
"admin"
|
|
972
|
-
]
|
|
973
|
-
},
|
|
974
|
-
"workspace": {
|
|
975
|
-
"type": "string",
|
|
976
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
977
|
-
}
|
|
978
|
-
},
|
|
979
|
-
"required": [
|
|
980
|
-
"board_id",
|
|
981
|
-
"user_id"
|
|
982
|
-
]
|
|
983
|
-
},
|
|
984
|
-
},
|
|
985
|
-
{
|
|
986
|
-
name: "agentboard_removeBoardMember",
|
|
987
|
-
description: "Remove a member from a board.",
|
|
988
|
-
inputSchema: {
|
|
989
|
-
"type": "object",
|
|
990
|
-
"properties": {
|
|
991
|
-
"board_id": {
|
|
992
|
-
"type": "string",
|
|
993
|
-
"description": "Board UUID"
|
|
994
|
-
},
|
|
995
|
-
"user_id": {
|
|
996
|
-
"type": "string",
|
|
997
|
-
"description": "User UUID to remove"
|
|
998
|
-
},
|
|
999
|
-
"workspace": {
|
|
1000
|
-
"type": "string",
|
|
1001
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1002
|
-
}
|
|
1003
|
-
},
|
|
1004
|
-
"required": [
|
|
1005
|
-
"board_id",
|
|
1006
|
-
"user_id"
|
|
1007
|
-
]
|
|
1008
|
-
},
|
|
1009
|
-
},
|
|
1010
|
-
{
|
|
1011
|
-
name: "agentboard_listMarkers",
|
|
1012
|
-
description: "List all markers/tags in the workspace. Markers are color-coded labels that can be toggled on tasks.",
|
|
1013
|
-
inputSchema: {
|
|
1014
|
-
"type": "object",
|
|
1015
|
-
"properties": {
|
|
1016
|
-
"workspace": {
|
|
1017
|
-
"type": "string",
|
|
1018
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1019
|
-
}
|
|
1020
|
-
}
|
|
1021
|
-
},
|
|
1022
|
-
},
|
|
1023
|
-
{
|
|
1024
|
-
name: "agentboard_createMarker",
|
|
1025
|
-
description: "Create a new marker with a name, color, and optional icon.",
|
|
1026
|
-
inputSchema: {
|
|
1027
|
-
"type": "object",
|
|
1028
|
-
"properties": {
|
|
1029
|
-
"name": {
|
|
1030
|
-
"type": "string",
|
|
1031
|
-
"description": "Marker name"
|
|
1032
|
-
},
|
|
1033
|
-
"color": {
|
|
1034
|
-
"type": "string",
|
|
1035
|
-
"description": "Color hex (e.g. '#ff0000')"
|
|
1036
|
-
},
|
|
1037
|
-
"icon": {
|
|
1038
|
-
"type": "string",
|
|
1039
|
-
"description": "Icon name"
|
|
1040
|
-
},
|
|
1041
|
-
"workspace": {
|
|
1042
|
-
"type": "string",
|
|
1043
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1044
|
-
}
|
|
1045
|
-
},
|
|
1046
|
-
"required": [
|
|
1047
|
-
"name"
|
|
1048
|
-
]
|
|
1049
|
-
},
|
|
1050
|
-
},
|
|
1051
|
-
{
|
|
1052
|
-
name: "agentboard_updateMarker",
|
|
1053
|
-
description: "Update a marker's name, color, or icon.",
|
|
1054
|
-
inputSchema: {
|
|
1055
|
-
"type": "object",
|
|
1056
|
-
"properties": {
|
|
1057
|
-
"marker_id": {
|
|
1058
|
-
"type": "string",
|
|
1059
|
-
"description": "Marker UUID"
|
|
1060
|
-
},
|
|
1061
|
-
"name": {
|
|
1062
|
-
"type": "string",
|
|
1063
|
-
"description": "New name"
|
|
1064
|
-
},
|
|
1065
|
-
"color": {
|
|
1066
|
-
"type": "string",
|
|
1067
|
-
"description": "New color hex"
|
|
1068
|
-
},
|
|
1069
|
-
"icon": {
|
|
1070
|
-
"type": "string",
|
|
1071
|
-
"description": "New icon"
|
|
1072
|
-
},
|
|
1073
|
-
"workspace": {
|
|
1074
|
-
"type": "string",
|
|
1075
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1076
|
-
}
|
|
1077
|
-
},
|
|
1078
|
-
"required": [
|
|
1079
|
-
"marker_id"
|
|
1080
|
-
]
|
|
1081
|
-
},
|
|
1082
|
-
},
|
|
1083
|
-
{
|
|
1084
|
-
name: "agentboard_deleteMarker",
|
|
1085
|
-
description: "Delete a marker. Removes it from all tasks.",
|
|
1086
|
-
inputSchema: {
|
|
1087
|
-
"type": "object",
|
|
1088
|
-
"properties": {
|
|
1089
|
-
"marker_id": {
|
|
1090
|
-
"type": "string",
|
|
1091
|
-
"description": "Marker UUID"
|
|
1092
|
-
},
|
|
1093
|
-
"workspace": {
|
|
1094
|
-
"type": "string",
|
|
1095
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1096
|
-
}
|
|
1097
|
-
},
|
|
1098
|
-
"required": [
|
|
1099
|
-
"marker_id"
|
|
1100
|
-
]
|
|
1101
|
-
},
|
|
1102
|
-
},
|
|
1103
|
-
{
|
|
1104
|
-
name: "agentboard_toggleMarker",
|
|
1105
|
-
description: "Toggle a marker on/off for a task.",
|
|
1106
|
-
inputSchema: {
|
|
1107
|
-
"type": "object",
|
|
1108
|
-
"properties": {
|
|
1109
|
-
"marker_id": {
|
|
1110
|
-
"type": "string",
|
|
1111
|
-
"description": "Marker UUID"
|
|
1112
|
-
},
|
|
1113
|
-
"task_id": {
|
|
1114
|
-
"type": "string",
|
|
1115
|
-
"description": "Task UUID to toggle marker on"
|
|
1116
|
-
},
|
|
1117
|
-
"workspace": {
|
|
1118
|
-
"type": "string",
|
|
1119
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1120
|
-
}
|
|
1121
|
-
},
|
|
1122
|
-
"required": [
|
|
1123
|
-
"marker_id",
|
|
1124
|
-
"task_id"
|
|
1125
|
-
]
|
|
1126
|
-
},
|
|
1127
|
-
},
|
|
1128
|
-
{
|
|
1129
|
-
name: "agentboard_listBoardLinks",
|
|
1130
|
-
description: "List cross-board links (relationships between boards).",
|
|
1131
|
-
inputSchema: {
|
|
1132
|
-
"type": "object",
|
|
1133
|
-
"properties": {
|
|
1134
|
-
"workspace": {
|
|
1135
|
-
"type": "string",
|
|
1136
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1137
|
-
}
|
|
1138
|
-
}
|
|
1139
|
-
},
|
|
1140
|
-
},
|
|
1141
|
-
{
|
|
1142
|
-
name: "agentboard_createBoardLink",
|
|
1143
|
-
description: "Create a link between two boards.",
|
|
1144
|
-
inputSchema: {
|
|
1145
|
-
"type": "object",
|
|
1146
|
-
"properties": {
|
|
1147
|
-
"source_board_id": {
|
|
1148
|
-
"type": "string",
|
|
1149
|
-
"description": "Source board UUID"
|
|
1150
|
-
},
|
|
1151
|
-
"target_board_id": {
|
|
1152
|
-
"type": "string",
|
|
1153
|
-
"description": "Target board UUID"
|
|
1154
|
-
},
|
|
1155
|
-
"link_type": {
|
|
1156
|
-
"type": "string",
|
|
1157
|
-
"description": "Link type"
|
|
1158
|
-
},
|
|
1159
|
-
"label": {
|
|
1160
|
-
"type": "string",
|
|
1161
|
-
"description": "Link label/description"
|
|
1162
|
-
},
|
|
1163
|
-
"workspace": {
|
|
1164
|
-
"type": "string",
|
|
1165
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1166
|
-
}
|
|
1167
|
-
},
|
|
1168
|
-
"required": [
|
|
1169
|
-
"source_board_id",
|
|
1170
|
-
"target_board_id"
|
|
1171
|
-
]
|
|
1172
|
-
},
|
|
1173
|
-
},
|
|
1174
|
-
{
|
|
1175
|
-
name: "agentboard_updateBoardLink",
|
|
1176
|
-
description: "Update a board link's type or label.",
|
|
1177
|
-
inputSchema: {
|
|
1178
|
-
"type": "object",
|
|
1179
|
-
"properties": {
|
|
1180
|
-
"link_id": {
|
|
1181
|
-
"type": "string",
|
|
1182
|
-
"description": "Link UUID"
|
|
1183
|
-
},
|
|
1184
|
-
"link_type": {
|
|
1185
|
-
"type": "string",
|
|
1186
|
-
"description": "New link type"
|
|
1187
|
-
},
|
|
1188
|
-
"label": {
|
|
1189
|
-
"type": "string",
|
|
1190
|
-
"description": "New label"
|
|
1191
|
-
},
|
|
1192
|
-
"workspace": {
|
|
1193
|
-
"type": "string",
|
|
1194
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1195
|
-
}
|
|
1196
|
-
},
|
|
1197
|
-
"required": [
|
|
1198
|
-
"link_id"
|
|
1199
|
-
]
|
|
1200
|
-
},
|
|
1201
|
-
},
|
|
1202
|
-
{
|
|
1203
|
-
name: "agentboard_deleteBoardLink",
|
|
1204
|
-
description: "Delete a board link.",
|
|
1205
|
-
inputSchema: {
|
|
1206
|
-
"type": "object",
|
|
1207
|
-
"properties": {
|
|
1208
|
-
"link_id": {
|
|
1209
|
-
"type": "string",
|
|
1210
|
-
"description": "Link UUID"
|
|
1211
|
-
},
|
|
1212
|
-
"workspace": {
|
|
1213
|
-
"type": "string",
|
|
1214
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1215
|
-
}
|
|
1216
|
-
},
|
|
1217
|
-
"required": [
|
|
1218
|
-
"link_id"
|
|
1219
|
-
]
|
|
1220
|
-
},
|
|
1221
|
-
},
|
|
1222
|
-
{
|
|
1223
|
-
name: "agentboard_listFiles",
|
|
1224
|
-
description: "List file attachments on a task. Returns file names, sizes, types, and IDs. Use getFile for download URLs.",
|
|
1225
|
-
inputSchema: {
|
|
1226
|
-
"type": "object",
|
|
1227
|
-
"properties": {
|
|
1228
|
-
"task_id": {
|
|
1229
|
-
"type": "string",
|
|
1230
|
-
"description": "Task UUID"
|
|
1231
|
-
},
|
|
1232
|
-
"workspace": {
|
|
1233
|
-
"type": "string",
|
|
1234
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1235
|
-
}
|
|
1236
|
-
},
|
|
1237
|
-
"required": [
|
|
1238
|
-
"task_id"
|
|
1239
|
-
]
|
|
1240
|
-
},
|
|
1241
|
-
},
|
|
1242
|
-
{
|
|
1243
|
-
name: "agentboard_getFile",
|
|
1244
|
-
description: "Get file metadata including name, size, MIME type, and download URL.",
|
|
1245
|
-
inputSchema: {
|
|
1246
|
-
"type": "object",
|
|
1247
|
-
"properties": {
|
|
1248
|
-
"file_id": {
|
|
1249
|
-
"type": "string",
|
|
1250
|
-
"description": "File UUID"
|
|
1251
|
-
},
|
|
1252
|
-
"workspace": {
|
|
1253
|
-
"type": "string",
|
|
1254
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1255
|
-
}
|
|
1256
|
-
},
|
|
1257
|
-
"required": [
|
|
1258
|
-
"file_id"
|
|
1259
|
-
]
|
|
1260
|
-
},
|
|
1261
|
-
},
|
|
1262
|
-
{
|
|
1263
|
-
name: "agentboard_agentMyTasks",
|
|
1264
|
-
description: "Get tasks assigned to you across ALL boards in one call. More comprehensive than listTasks with self=true — aggregates from every board and includes board names.",
|
|
1265
|
-
inputSchema: {
|
|
1266
|
-
"type": "object",
|
|
1267
|
-
"properties": {
|
|
1268
|
-
"board_id": {
|
|
1269
|
-
"type": "string",
|
|
1270
|
-
"description": "Scope to a specific board"
|
|
1271
|
-
},
|
|
1272
|
-
"status": {
|
|
1273
|
-
"type": "string",
|
|
1274
|
-
"description": "Filter by status",
|
|
1275
|
-
"enum": [
|
|
1276
|
-
"pending",
|
|
1277
|
-
"assigned",
|
|
1278
|
-
"in_progress",
|
|
1279
|
-
"blocked",
|
|
1280
|
-
"review",
|
|
1281
|
-
"done",
|
|
1282
|
-
"failed"
|
|
1283
|
-
]
|
|
1284
|
-
},
|
|
1285
|
-
"limit": {
|
|
1286
|
-
"type": "number",
|
|
1287
|
-
"description": "Max results"
|
|
1288
|
-
},
|
|
1289
|
-
"workspace": {
|
|
1290
|
-
"type": "string",
|
|
1291
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1292
|
-
}
|
|
1293
|
-
}
|
|
1294
|
-
},
|
|
1295
|
-
},
|
|
1296
|
-
{
|
|
1297
|
-
name: "agentboard_agentMyDelegations",
|
|
1298
|
-
description: "List tasks you delegated to other agents. Complement to agentMyTasks — shows tasks you handed off, not tasks assigned to you.",
|
|
1299
|
-
inputSchema: {
|
|
1300
|
-
"type": "object",
|
|
1301
|
-
"properties": {
|
|
1302
|
-
"status": {
|
|
1303
|
-
"type": "string",
|
|
1304
|
-
"description": "Filter by status",
|
|
1305
|
-
"enum": [
|
|
1306
|
-
"pending",
|
|
1307
|
-
"assigned",
|
|
1308
|
-
"in_progress",
|
|
1309
|
-
"blocked",
|
|
1310
|
-
"review",
|
|
1311
|
-
"done",
|
|
1312
|
-
"failed"
|
|
1313
|
-
]
|
|
1314
|
-
},
|
|
1315
|
-
"limit": {
|
|
1316
|
-
"type": "number",
|
|
1317
|
-
"description": "Max results"
|
|
1318
|
-
},
|
|
1319
|
-
"workspace": {
|
|
1320
|
-
"type": "string",
|
|
1321
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1322
|
-
}
|
|
1323
|
-
}
|
|
1324
|
-
},
|
|
1325
|
-
},
|
|
1326
|
-
{
|
|
1327
|
-
name: "agentboard_agentBatchCreateTasks",
|
|
1328
|
-
description: "Create multiple tasks at once. Each task needs board_id and title. Returns list of created IDs and any errors.",
|
|
1329
|
-
inputSchema: {
|
|
1330
|
-
"type": "object",
|
|
1331
|
-
"properties": {
|
|
1332
|
-
"tasks": {
|
|
1333
|
-
"type": "array",
|
|
1334
|
-
"description": "Array of task objects. Each object: board_id (required), title (required), description, priority (low/medium/high/critical), column_id, agent_instructions\n",
|
|
1335
|
-
"items": {
|
|
1336
|
-
"type": "object"
|
|
1337
|
-
}
|
|
1338
|
-
},
|
|
1339
|
-
"workspace": {
|
|
1340
|
-
"type": "string",
|
|
1341
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1342
|
-
}
|
|
1343
|
-
},
|
|
1344
|
-
"required": [
|
|
1345
|
-
"tasks"
|
|
1346
|
-
]
|
|
1347
|
-
},
|
|
1348
|
-
},
|
|
1349
|
-
{
|
|
1350
|
-
name: "agentboard_agentReportProgress",
|
|
1351
|
-
description: "Report progress on a task. Updates metadata and adds a progress comment. Use for long-running tasks to keep stakeholders informed.",
|
|
1352
|
-
inputSchema: {
|
|
1353
|
-
"type": "object",
|
|
1354
|
-
"properties": {
|
|
1355
|
-
"task_id": {
|
|
1356
|
-
"type": "string",
|
|
1357
|
-
"description": "Task UUID"
|
|
1358
|
-
},
|
|
1359
|
-
"percent": {
|
|
1360
|
-
"type": "number",
|
|
1361
|
-
"description": "Progress percentage (0-100)"
|
|
1362
|
-
},
|
|
1363
|
-
"message": {
|
|
1364
|
-
"type": "string",
|
|
1365
|
-
"description": "Progress message"
|
|
1366
|
-
},
|
|
1367
|
-
"current_operation": {
|
|
1368
|
-
"type": "string",
|
|
1369
|
-
"description": "What you're currently doing"
|
|
1370
|
-
},
|
|
1371
|
-
"workspace": {
|
|
1372
|
-
"type": "string",
|
|
1373
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1374
|
-
}
|
|
1375
|
-
},
|
|
1376
|
-
"required": [
|
|
1377
|
-
"task_id",
|
|
1378
|
-
"percent"
|
|
1379
|
-
]
|
|
1380
|
-
},
|
|
1381
|
-
},
|
|
1382
|
-
{
|
|
1383
|
-
name: "agentboard_agentCompleteTask",
|
|
1384
|
-
description: "Mark a task as done or failed. Automatically walks through intermediate status transitions (pending->assigned-> in_progress->done). Adds a completion comment.",
|
|
1385
|
-
inputSchema: {
|
|
1386
|
-
"type": "object",
|
|
1387
|
-
"properties": {
|
|
1388
|
-
"task_id": {
|
|
1389
|
-
"type": "string",
|
|
1390
|
-
"description": "Task UUID"
|
|
1391
|
-
},
|
|
1392
|
-
"status": {
|
|
1393
|
-
"type": "string",
|
|
1394
|
-
"description": "Final status",
|
|
1395
|
-
"enum": [
|
|
1396
|
-
"done",
|
|
1397
|
-
"failed"
|
|
1398
|
-
]
|
|
1399
|
-
},
|
|
1400
|
-
"summary": {
|
|
1401
|
-
"type": "string",
|
|
1402
|
-
"description": "Completion summary (added as comment)"
|
|
1403
|
-
},
|
|
1404
|
-
"result_data": {
|
|
1405
|
-
"type": "object",
|
|
1406
|
-
"description": "Structured result data (JSON object)"
|
|
1407
|
-
},
|
|
1408
|
-
"workspace": {
|
|
1409
|
-
"type": "string",
|
|
1410
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1411
|
-
}
|
|
1412
|
-
},
|
|
1413
|
-
"required": [
|
|
1414
|
-
"task_id"
|
|
1415
|
-
]
|
|
1416
|
-
},
|
|
1417
|
-
},
|
|
1418
|
-
{
|
|
1419
|
-
name: "agentboard_agentDelegateTask",
|
|
1420
|
-
description: "Reassign a task to another agent by their slug. Resolves the slug to a UUID, updates assignment, and adds a delegation comment.",
|
|
1421
|
-
inputSchema: {
|
|
1422
|
-
"type": "object",
|
|
1423
|
-
"properties": {
|
|
1424
|
-
"task_id": {
|
|
1425
|
-
"type": "string",
|
|
1426
|
-
"description": "Task UUID"
|
|
1427
|
-
},
|
|
1428
|
-
"agent_slug": {
|
|
1429
|
-
"type": "string",
|
|
1430
|
-
"description": "Target agent's slug (e.g. 'maya')"
|
|
1431
|
-
},
|
|
1432
|
-
"instructions": {
|
|
1433
|
-
"type": "string",
|
|
1434
|
-
"description": "Instructions for the target agent"
|
|
1435
|
-
},
|
|
1436
|
-
"workspace": {
|
|
1437
|
-
"type": "string",
|
|
1438
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1439
|
-
}
|
|
1440
|
-
},
|
|
1441
|
-
"required": [
|
|
1442
|
-
"task_id",
|
|
1443
|
-
"agent_slug"
|
|
1444
|
-
]
|
|
1445
|
-
},
|
|
1446
|
-
},
|
|
1447
|
-
{
|
|
1448
|
-
name: "agentboard_agentMention",
|
|
1449
|
-
description: "@mention an agent on a task to trigger them to respond. The agent receives a notification with the task context.",
|
|
1450
|
-
inputSchema: {
|
|
1451
|
-
"type": "object",
|
|
1452
|
-
"properties": {
|
|
1453
|
-
"task_id": {
|
|
1454
|
-
"type": "string",
|
|
1455
|
-
"description": "Task UUID"
|
|
1456
|
-
},
|
|
1457
|
-
"agent_slug": {
|
|
1458
|
-
"type": "string",
|
|
1459
|
-
"description": "Agent slug to mention"
|
|
1460
|
-
},
|
|
1461
|
-
"message": {
|
|
1462
|
-
"type": "string",
|
|
1463
|
-
"description": "Message for the agent"
|
|
1464
|
-
},
|
|
1465
|
-
"workspace": {
|
|
1466
|
-
"type": "string",
|
|
1467
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1468
|
-
}
|
|
1469
|
-
},
|
|
1470
|
-
"required": [
|
|
1471
|
-
"task_id",
|
|
1472
|
-
"agent_slug"
|
|
1473
|
-
]
|
|
1474
|
-
},
|
|
1475
|
-
},
|
|
1476
|
-
{
|
|
1477
|
-
name: "agentboard_agentTasksBy",
|
|
1478
|
-
description: "List tasks assigned to a specific agent by their slug.",
|
|
1479
|
-
inputSchema: {
|
|
1480
|
-
"type": "object",
|
|
1481
|
-
"properties": {
|
|
1482
|
-
"agent_slug": {
|
|
1483
|
-
"type": "string",
|
|
1484
|
-
"description": "Agent slug"
|
|
1485
|
-
},
|
|
1486
|
-
"status": {
|
|
1487
|
-
"type": "string",
|
|
1488
|
-
"description": "Filter by status",
|
|
1489
|
-
"enum": [
|
|
1490
|
-
"pending",
|
|
1491
|
-
"assigned",
|
|
1492
|
-
"in_progress",
|
|
1493
|
-
"blocked",
|
|
1494
|
-
"review",
|
|
1495
|
-
"done",
|
|
1496
|
-
"failed"
|
|
1497
|
-
]
|
|
1498
|
-
},
|
|
1499
|
-
"limit": {
|
|
1500
|
-
"type": "number",
|
|
1501
|
-
"description": "Max results"
|
|
1502
|
-
},
|
|
1503
|
-
"workspace": {
|
|
1504
|
-
"type": "string",
|
|
1505
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1506
|
-
}
|
|
1507
|
-
},
|
|
1508
|
-
"required": [
|
|
1509
|
-
"agent_slug"
|
|
1510
|
-
]
|
|
1511
|
-
},
|
|
1512
|
-
},
|
|
1513
|
-
{
|
|
1514
|
-
name: "agentboard_getBoardOverview",
|
|
1515
|
-
description: "Get board overview with column structure, task counts per column, and board metadata. Lighter than getSession (no task details).",
|
|
1516
|
-
inputSchema: {
|
|
1517
|
-
"type": "object",
|
|
1518
|
-
"properties": {
|
|
1519
|
-
"board_id": {
|
|
1520
|
-
"type": "string",
|
|
1521
|
-
"description": "Board UUID"
|
|
1522
|
-
},
|
|
1523
|
-
"workspace": {
|
|
1524
|
-
"type": "string",
|
|
1525
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1526
|
-
}
|
|
1527
|
-
},
|
|
1528
|
-
"required": [
|
|
1529
|
-
"board_id"
|
|
1530
|
-
]
|
|
1531
|
-
},
|
|
1532
|
-
},
|
|
1533
|
-
{
|
|
1534
|
-
name: "agentboard_getBoardSummary",
|
|
1535
|
-
description: "Get board KPIs: task counts by status, workload by assignee, priority distribution, and recent activity stats. Useful for reporting and board health.",
|
|
1536
|
-
inputSchema: {
|
|
1537
|
-
"type": "object",
|
|
1538
|
-
"properties": {
|
|
1539
|
-
"board_id": {
|
|
1540
|
-
"type": "string",
|
|
1541
|
-
"description": "Board UUID"
|
|
1542
|
-
},
|
|
1543
|
-
"days": {
|
|
1544
|
-
"type": "number",
|
|
1545
|
-
"description": "Time window in days"
|
|
1546
|
-
},
|
|
1547
|
-
"workspace": {
|
|
1548
|
-
"type": "string",
|
|
1549
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1550
|
-
}
|
|
1551
|
-
},
|
|
1552
|
-
"required": [
|
|
1553
|
-
"board_id"
|
|
1554
|
-
]
|
|
1555
|
-
},
|
|
1556
|
-
},
|
|
1557
|
-
{
|
|
1558
|
-
name: "agentboard_getTaskVelocity",
|
|
1559
|
-
description: "Get task velocity: tasks created vs completed per day over time. Useful for tracking team throughput and trends.",
|
|
1560
|
-
inputSchema: {
|
|
1561
|
-
"type": "object",
|
|
1562
|
-
"properties": {
|
|
1563
|
-
"days": {
|
|
1564
|
-
"type": "number",
|
|
1565
|
-
"description": "Time window in days"
|
|
1566
|
-
},
|
|
1567
|
-
"workspace": {
|
|
1568
|
-
"type": "string",
|
|
1569
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1570
|
-
}
|
|
1571
|
-
}
|
|
1572
|
-
},
|
|
1573
|
-
},
|
|
1574
|
-
{
|
|
1575
|
-
name: "agentboard_getCostMetrics",
|
|
1576
|
-
description: "Get LLM cost data over time.",
|
|
1577
|
-
inputSchema: {
|
|
1578
|
-
"type": "object",
|
|
1579
|
-
"properties": {
|
|
1580
|
-
"days": {
|
|
1581
|
-
"type": "number",
|
|
1582
|
-
"description": "Time window in days"
|
|
1583
|
-
},
|
|
1584
|
-
"workspace": {
|
|
1585
|
-
"type": "string",
|
|
1586
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1587
|
-
}
|
|
1588
|
-
}
|
|
1589
|
-
},
|
|
1590
|
-
},
|
|
1591
|
-
{
|
|
1592
|
-
name: "agentboard_getTaskDistribution",
|
|
1593
|
-
description: "Get task status distribution (counts by status, for dashboards).",
|
|
1594
|
-
inputSchema: {
|
|
1595
|
-
"type": "object",
|
|
1596
|
-
"properties": {
|
|
1597
|
-
"board_id": {
|
|
1598
|
-
"type": "string",
|
|
1599
|
-
"description": "Board UUID (optional — omit for workspace-wide)"
|
|
1600
|
-
},
|
|
1601
|
-
"workspace": {
|
|
1602
|
-
"type": "string",
|
|
1603
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1604
|
-
}
|
|
1605
|
-
}
|
|
1606
|
-
},
|
|
1607
|
-
},
|
|
1608
|
-
{
|
|
1609
|
-
name: "agentboard_viewBoardTasks",
|
|
1610
|
-
description: "Filtered task list view for a board. Returns tasks with full context in YAML format.",
|
|
1611
|
-
inputSchema: {
|
|
1612
|
-
"type": "object",
|
|
1613
|
-
"properties": {
|
|
1614
|
-
"board_id": {
|
|
1615
|
-
"type": "string",
|
|
1616
|
-
"description": "Board UUID"
|
|
1617
|
-
},
|
|
1618
|
-
"status": {
|
|
1619
|
-
"type": "string",
|
|
1620
|
-
"description": "Filter by status",
|
|
1621
|
-
"enum": [
|
|
1622
|
-
"pending",
|
|
1623
|
-
"assigned",
|
|
1624
|
-
"in_progress",
|
|
1625
|
-
"blocked",
|
|
1626
|
-
"review",
|
|
1627
|
-
"done",
|
|
1628
|
-
"failed"
|
|
1629
|
-
]
|
|
1630
|
-
},
|
|
1631
|
-
"limit": {
|
|
1632
|
-
"type": "number",
|
|
1633
|
-
"description": "Max results"
|
|
1634
|
-
},
|
|
1635
|
-
"workspace": {
|
|
1636
|
-
"type": "string",
|
|
1637
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1638
|
-
}
|
|
1639
|
-
},
|
|
1640
|
-
"required": [
|
|
1641
|
-
"board_id"
|
|
1642
|
-
]
|
|
1643
|
-
},
|
|
1644
|
-
},
|
|
1645
|
-
{
|
|
1646
|
-
name: "agentboard_viewTaskDetail",
|
|
1647
|
-
description: "Single task detail view with full context — description, stages, links, comments, activity.",
|
|
1648
|
-
inputSchema: {
|
|
1649
|
-
"type": "object",
|
|
1650
|
-
"properties": {
|
|
1651
|
-
"task_id": {
|
|
1652
|
-
"type": "string",
|
|
1653
|
-
"description": "Task UUID"
|
|
1654
|
-
},
|
|
1655
|
-
"workspace": {
|
|
1656
|
-
"type": "string",
|
|
1657
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1658
|
-
}
|
|
1659
|
-
},
|
|
1660
|
-
"required": [
|
|
1661
|
-
"task_id"
|
|
1662
|
-
]
|
|
1663
|
-
},
|
|
1664
|
-
},
|
|
1665
|
-
{
|
|
1666
|
-
name: "agentdocs_listProjects",
|
|
1667
|
-
description: "List all documentation projects for the current brand. Returns project metadata: name, slug, page count, description.",
|
|
1668
|
-
inputSchema: {
|
|
1669
|
-
"type": "object",
|
|
1670
|
-
"properties": {
|
|
1671
|
-
"workspace": {
|
|
1672
|
-
"type": "string",
|
|
1673
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1674
|
-
}
|
|
1675
|
-
}
|
|
1676
|
-
},
|
|
1677
|
-
},
|
|
1678
|
-
{
|
|
1679
|
-
name: "agentdocs_getProject",
|
|
1680
|
-
description: "Get a single documentation project by slug or UUID. Returns project metadata including page count and settings.",
|
|
1681
|
-
inputSchema: {
|
|
1682
|
-
"type": "object",
|
|
1683
|
-
"properties": {
|
|
1684
|
-
"project_slug": {
|
|
1685
|
-
"type": "string",
|
|
1686
|
-
"description": "Project slug, UUID, or name"
|
|
1687
|
-
},
|
|
1688
|
-
"workspace": {
|
|
1689
|
-
"type": "string",
|
|
1690
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1691
|
-
}
|
|
1692
|
-
},
|
|
1693
|
-
"required": [
|
|
1694
|
-
"project_slug"
|
|
1695
|
-
]
|
|
1696
|
-
},
|
|
1697
|
-
},
|
|
1698
|
-
{
|
|
1699
|
-
name: "agentdocs_listPages",
|
|
1700
|
-
description: "List all pages in a documentation project. Returns the page tree with slugs, titles, paths, and sort order.",
|
|
1701
|
-
inputSchema: {
|
|
1702
|
-
"type": "object",
|
|
1703
|
-
"properties": {
|
|
1704
|
-
"project_slug": {
|
|
1705
|
-
"type": "string",
|
|
1706
|
-
"description": "Project slug, UUID, or name"
|
|
1707
|
-
},
|
|
1708
|
-
"workspace": {
|
|
1709
|
-
"type": "string",
|
|
1710
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1711
|
-
}
|
|
1712
|
-
},
|
|
1713
|
-
"required": [
|
|
1714
|
-
"project_slug"
|
|
1715
|
-
]
|
|
1716
|
-
},
|
|
1717
|
-
},
|
|
1718
|
-
{
|
|
1719
|
-
name: "agentdocs_getPage",
|
|
1720
|
-
description: "Read a documentation page. Returns full content (no truncation), title, slug, version, tags, and revision metadata.",
|
|
1721
|
-
inputSchema: {
|
|
1722
|
-
"type": "object",
|
|
1723
|
-
"properties": {
|
|
1724
|
-
"project_slug": {
|
|
1725
|
-
"type": "string",
|
|
1726
|
-
"description": "Project slug, UUID, or name"
|
|
1727
|
-
},
|
|
1728
|
-
"slug": {
|
|
1729
|
-
"type": "string",
|
|
1730
|
-
"description": "Page slug (path-style, e.g. \"getting-started\" or \"guides/setup\")"
|
|
1731
|
-
},
|
|
1732
|
-
"workspace": {
|
|
1733
|
-
"type": "string",
|
|
1734
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1735
|
-
}
|
|
1736
|
-
},
|
|
1737
|
-
"required": [
|
|
1738
|
-
"project_slug",
|
|
1739
|
-
"slug"
|
|
1740
|
-
]
|
|
1741
|
-
},
|
|
1742
|
-
},
|
|
1743
|
-
{
|
|
1744
|
-
name: "agentdocs_createPage",
|
|
1745
|
-
description: "Create a new documentation page in a project. Creates the first revision. Returns the created page with content.",
|
|
1746
|
-
inputSchema: {
|
|
1747
|
-
"type": "object",
|
|
1748
|
-
"properties": {
|
|
1749
|
-
"project_slug": {
|
|
1750
|
-
"type": "string",
|
|
1751
|
-
"description": "Project slug, UUID, or name"
|
|
1752
|
-
},
|
|
1753
|
-
"title": {
|
|
1754
|
-
"type": "string",
|
|
1755
|
-
"description": "Page title"
|
|
1756
|
-
},
|
|
1757
|
-
"content_md": {
|
|
1758
|
-
"type": "string",
|
|
1759
|
-
"description": "Page content in Markdown"
|
|
1760
|
-
},
|
|
1761
|
-
"commit_message": {
|
|
1762
|
-
"type": "string",
|
|
1763
|
-
"description": "Describes what was created and why"
|
|
1764
|
-
},
|
|
1765
|
-
"path": {
|
|
1766
|
-
"type": "string",
|
|
1767
|
-
"description": "Tree location (e.g. \"/guides\", \"/api-reference\")"
|
|
1768
|
-
},
|
|
1769
|
-
"tags": {
|
|
1770
|
-
"type": "array",
|
|
1771
|
-
"description": "Array of tag strings for categorization",
|
|
1772
|
-
"items": {
|
|
1773
|
-
"type": "string"
|
|
1774
|
-
}
|
|
1775
|
-
},
|
|
1776
|
-
"slug": {
|
|
1777
|
-
"type": "string",
|
|
1778
|
-
"description": "Custom slug (auto-generated from title if omitted)"
|
|
1779
|
-
},
|
|
1780
|
-
"sort_order": {
|
|
1781
|
-
"type": "number",
|
|
1782
|
-
"description": "Position within the folder (0 = first)"
|
|
1783
|
-
},
|
|
1784
|
-
"workspace": {
|
|
1785
|
-
"type": "string",
|
|
1786
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1787
|
-
}
|
|
1788
|
-
},
|
|
1789
|
-
"required": [
|
|
1790
|
-
"project_slug",
|
|
1791
|
-
"title",
|
|
1792
|
-
"content_md",
|
|
1793
|
-
"commit_message"
|
|
1794
|
-
]
|
|
1795
|
-
},
|
|
1796
|
-
},
|
|
1797
|
-
{
|
|
1798
|
-
name: "agentdocs_updatePage",
|
|
1799
|
-
description: "Update an existing documentation page. Creates a new immutable revision. Deduplicates identical content automatically.",
|
|
1800
|
-
inputSchema: {
|
|
1801
|
-
"type": "object",
|
|
1802
|
-
"properties": {
|
|
1803
|
-
"project_slug": {
|
|
1804
|
-
"type": "string",
|
|
1805
|
-
"description": "Project slug, UUID, or name"
|
|
1806
|
-
},
|
|
1807
|
-
"slug": {
|
|
1808
|
-
"type": "string",
|
|
1809
|
-
"description": "Page slug to update"
|
|
1810
|
-
},
|
|
1811
|
-
"content_md": {
|
|
1812
|
-
"type": "string",
|
|
1813
|
-
"description": "New page content in Markdown"
|
|
1814
|
-
},
|
|
1815
|
-
"commit_message": {
|
|
1816
|
-
"type": "string",
|
|
1817
|
-
"description": "Describes what changed and why"
|
|
1818
|
-
},
|
|
1819
|
-
"title": {
|
|
1820
|
-
"type": "string",
|
|
1821
|
-
"description": "New title (omit to keep current)"
|
|
1822
|
-
},
|
|
1823
|
-
"tags": {
|
|
1824
|
-
"type": "array",
|
|
1825
|
-
"description": "New tags (omit to keep current)",
|
|
1826
|
-
"items": {
|
|
1827
|
-
"type": "string"
|
|
1828
|
-
}
|
|
1829
|
-
},
|
|
1830
|
-
"workspace": {
|
|
1831
|
-
"type": "string",
|
|
1832
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1833
|
-
}
|
|
1834
|
-
},
|
|
1835
|
-
"required": [
|
|
1836
|
-
"project_slug",
|
|
1837
|
-
"slug",
|
|
1838
|
-
"content_md",
|
|
1839
|
-
"commit_message"
|
|
1840
|
-
]
|
|
1841
|
-
},
|
|
1842
|
-
},
|
|
1843
|
-
{
|
|
1844
|
-
name: "agentdocs_deletePage",
|
|
1845
|
-
description: "Soft-delete a documentation page. The page can be recovered but will no longer appear in listings or search.",
|
|
1846
|
-
inputSchema: {
|
|
1847
|
-
"type": "object",
|
|
1848
|
-
"properties": {
|
|
1849
|
-
"project_slug": {
|
|
1850
|
-
"type": "string",
|
|
1851
|
-
"description": "Project slug, UUID, or name"
|
|
1852
|
-
},
|
|
1853
|
-
"slug": {
|
|
1854
|
-
"type": "string",
|
|
1855
|
-
"description": "Page slug to delete"
|
|
1856
|
-
},
|
|
1857
|
-
"workspace": {
|
|
1858
|
-
"type": "string",
|
|
1859
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1860
|
-
}
|
|
1861
|
-
},
|
|
1862
|
-
"required": [
|
|
1863
|
-
"project_slug",
|
|
1864
|
-
"slug"
|
|
1865
|
-
]
|
|
1866
|
-
},
|
|
1867
|
-
},
|
|
1868
|
-
{
|
|
1869
|
-
name: "agentdocs_searchDocs",
|
|
1870
|
-
description: "Full-text search across all pages in the brand's documentation. Searches titles and content. Supports filtering by project, tags, and author type.",
|
|
1871
|
-
inputSchema: {
|
|
1872
|
-
"type": "object",
|
|
1873
|
-
"properties": {
|
|
1874
|
-
"q": {
|
|
1875
|
-
"type": "string",
|
|
1876
|
-
"description": "Search query (1-500 chars)"
|
|
1877
|
-
},
|
|
1878
|
-
"project_id": {
|
|
1879
|
-
"type": "string",
|
|
1880
|
-
"description": "Scope search to a specific project (slug or UUID)"
|
|
1881
|
-
},
|
|
1882
|
-
"tags": {
|
|
1883
|
-
"type": "string",
|
|
1884
|
-
"description": "Comma-separated tags to filter by"
|
|
1885
|
-
},
|
|
1886
|
-
"author_type": {
|
|
1887
|
-
"type": "string",
|
|
1888
|
-
"description": "Filter by author type",
|
|
1889
|
-
"enum": [
|
|
1890
|
-
"human",
|
|
1891
|
-
"agent"
|
|
1892
|
-
]
|
|
1893
|
-
},
|
|
1894
|
-
"limit": {
|
|
1895
|
-
"type": "number",
|
|
1896
|
-
"description": "Maximum results to return (1-100)"
|
|
1897
|
-
},
|
|
1898
|
-
"skip": {
|
|
1899
|
-
"type": "number",
|
|
1900
|
-
"description": "Number of results to skip (for pagination)"
|
|
1901
|
-
},
|
|
1902
|
-
"workspace": {
|
|
1903
|
-
"type": "string",
|
|
1904
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1905
|
-
}
|
|
1906
|
-
},
|
|
1907
|
-
"required": [
|
|
1908
|
-
"q"
|
|
1909
|
-
]
|
|
1910
|
-
},
|
|
1911
|
-
},
|
|
1912
|
-
{
|
|
1913
|
-
name: "agentdocs_updateTheme",
|
|
1914
|
-
description: "Update the visual theme for a documentation project — colors, fonts, layout, logo, footer, and custom CSS. Changes are reflected on the public docs site immediately.",
|
|
1915
|
-
inputSchema: {
|
|
1916
|
-
"type": "object",
|
|
1917
|
-
"properties": {
|
|
1918
|
-
"project_id": {
|
|
1919
|
-
"type": "string",
|
|
1920
|
-
"description": "Project UUID"
|
|
1921
|
-
},
|
|
1922
|
-
"theme": {
|
|
1923
|
-
"type": "object",
|
|
1924
|
-
"description": "Theme settings (colors, fonts, layout, logo, footer, customCss)"
|
|
1925
|
-
},
|
|
1926
|
-
"workspace": {
|
|
1927
|
-
"type": "string",
|
|
1928
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1929
|
-
}
|
|
1930
|
-
},
|
|
1931
|
-
"required": [
|
|
1932
|
-
"project_id",
|
|
1933
|
-
"theme"
|
|
1934
|
-
]
|
|
1935
|
-
},
|
|
1936
|
-
},
|
|
1937
|
-
{
|
|
1938
|
-
name: "agentdocs_deleteProject",
|
|
1939
|
-
description: "Delete a documentation project and all its pages. This is destructive and cannot be undone.",
|
|
1940
|
-
inputSchema: {
|
|
1941
|
-
"type": "object",
|
|
1942
|
-
"properties": {
|
|
1943
|
-
"project_id": {
|
|
1944
|
-
"type": "string",
|
|
1945
|
-
"description": "Project UUID to delete"
|
|
1946
|
-
},
|
|
1947
|
-
"workspace": {
|
|
1948
|
-
"type": "string",
|
|
1949
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1950
|
-
}
|
|
1951
|
-
},
|
|
1952
|
-
"required": [
|
|
1953
|
-
"project_id"
|
|
1954
|
-
]
|
|
1955
|
-
},
|
|
1956
|
-
},
|
|
1957
|
-
{
|
|
1958
|
-
name: "agentdocs_movePage",
|
|
1959
|
-
description: "Move a documentation page to a different folder or change its sort order within the current folder.",
|
|
1960
|
-
inputSchema: {
|
|
1961
|
-
"type": "object",
|
|
1962
|
-
"properties": {
|
|
1963
|
-
"project_slug": {
|
|
1964
|
-
"type": "string",
|
|
1965
|
-
"description": "Project slug, UUID, or name"
|
|
1966
|
-
},
|
|
1967
|
-
"slug": {
|
|
1968
|
-
"type": "string",
|
|
1969
|
-
"description": "Page slug to move"
|
|
1970
|
-
},
|
|
1971
|
-
"path": {
|
|
1972
|
-
"type": "string",
|
|
1973
|
-
"description": "New folder path (e.g. \"/guides\", \"/api-reference\")"
|
|
1974
|
-
},
|
|
1975
|
-
"sort_order": {
|
|
1976
|
-
"type": "number",
|
|
1977
|
-
"description": "Position within the folder (0 = first)"
|
|
1978
|
-
},
|
|
1979
|
-
"workspace": {
|
|
1980
|
-
"type": "string",
|
|
1981
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1982
|
-
}
|
|
1983
|
-
},
|
|
1984
|
-
"required": [
|
|
1985
|
-
"project_slug",
|
|
1986
|
-
"slug"
|
|
1987
|
-
]
|
|
1988
|
-
},
|
|
1989
|
-
},
|
|
1990
|
-
{
|
|
1991
|
-
name: "agentdocs_createProject",
|
|
1992
|
-
description: "Create a new documentation project. Returns the project with its ID and slug.",
|
|
1993
|
-
inputSchema: {
|
|
1994
|
-
"type": "object",
|
|
1995
|
-
"properties": {
|
|
1996
|
-
"name": {
|
|
1997
|
-
"type": "string",
|
|
1998
|
-
"description": "Project name"
|
|
1999
|
-
},
|
|
2000
|
-
"description": {
|
|
2001
|
-
"type": "string",
|
|
2002
|
-
"description": "Project description"
|
|
2003
|
-
},
|
|
2004
|
-
"visibility": {
|
|
2005
|
-
"type": "string",
|
|
2006
|
-
"description": "Project visibility",
|
|
2007
|
-
"enum": [
|
|
2008
|
-
"public",
|
|
2009
|
-
"private"
|
|
2010
|
-
]
|
|
2011
|
-
},
|
|
2012
|
-
"workspace": {
|
|
2013
|
-
"type": "string",
|
|
2014
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2015
|
-
}
|
|
2016
|
-
},
|
|
2017
|
-
"required": [
|
|
2018
|
-
"name"
|
|
2019
|
-
]
|
|
2020
|
-
},
|
|
2021
|
-
},
|
|
2022
|
-
{
|
|
2023
|
-
name: "agentdocs_updateProject",
|
|
2024
|
-
description: "Update a documentation project's name, description, or visibility.",
|
|
2025
|
-
inputSchema: {
|
|
2026
|
-
"type": "object",
|
|
2027
|
-
"properties": {
|
|
2028
|
-
"project_slug": {
|
|
2029
|
-
"type": "string",
|
|
2030
|
-
"description": "Project slug or UUID"
|
|
2031
|
-
},
|
|
2032
|
-
"name": {
|
|
2033
|
-
"type": "string",
|
|
2034
|
-
"description": "New name"
|
|
2035
|
-
},
|
|
2036
|
-
"description": {
|
|
2037
|
-
"type": "string",
|
|
2038
|
-
"description": "New description"
|
|
2039
|
-
},
|
|
2040
|
-
"visibility": {
|
|
2041
|
-
"type": "string",
|
|
2042
|
-
"description": "New visibility",
|
|
2043
|
-
"enum": [
|
|
2044
|
-
"public",
|
|
2045
|
-
"private"
|
|
2046
|
-
]
|
|
2047
|
-
},
|
|
2048
|
-
"workspace": {
|
|
2049
|
-
"type": "string",
|
|
2050
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2051
|
-
}
|
|
2052
|
-
},
|
|
2053
|
-
"required": [
|
|
2054
|
-
"project_slug"
|
|
2055
|
-
]
|
|
2056
|
-
},
|
|
2057
|
-
},
|
|
2058
|
-
{
|
|
2059
|
-
name: "agentdocs_pageHistory",
|
|
2060
|
-
description: "Get revision history for a page. Returns all past versions with dates and authors.",
|
|
2061
|
-
inputSchema: {
|
|
2062
|
-
"type": "object",
|
|
2063
|
-
"properties": {
|
|
2064
|
-
"page_id": {
|
|
2065
|
-
"type": "string",
|
|
2066
|
-
"description": "Page UUID"
|
|
2067
|
-
},
|
|
2068
|
-
"limit": {
|
|
2069
|
-
"type": "number",
|
|
2070
|
-
"description": "Max results"
|
|
2071
|
-
},
|
|
2072
|
-
"workspace": {
|
|
2073
|
-
"type": "string",
|
|
2074
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2075
|
-
}
|
|
2076
|
-
},
|
|
2077
|
-
"required": [
|
|
2078
|
-
"page_id"
|
|
2079
|
-
]
|
|
2080
|
-
},
|
|
2081
|
-
},
|
|
2082
|
-
{
|
|
2083
|
-
name: "agentdocs_pageDiff",
|
|
2084
|
-
description: "Compute unified diff between two revisions. Omit from_rev for parent comparison.",
|
|
2085
|
-
inputSchema: {
|
|
2086
|
-
"type": "object",
|
|
2087
|
-
"properties": {
|
|
2088
|
-
"page_id": {
|
|
2089
|
-
"type": "string",
|
|
2090
|
-
"description": "Page UUID"
|
|
2091
|
-
},
|
|
2092
|
-
"from_rev": {
|
|
2093
|
-
"type": "string",
|
|
2094
|
-
"description": "From revision ID (omit for parent comparison)"
|
|
2095
|
-
},
|
|
2096
|
-
"to_rev": {
|
|
2097
|
-
"type": "string",
|
|
2098
|
-
"description": "To revision ID"
|
|
2099
|
-
},
|
|
2100
|
-
"workspace": {
|
|
2101
|
-
"type": "string",
|
|
2102
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2103
|
-
}
|
|
2104
|
-
},
|
|
2105
|
-
"required": [
|
|
2106
|
-
"page_id"
|
|
2107
|
-
]
|
|
2108
|
-
},
|
|
2109
|
-
},
|
|
2110
|
-
{
|
|
2111
|
-
name: "agentdocs_pageRollback",
|
|
2112
|
-
description: "Rollback a page to a previous revision. Non-destructive — creates a new revision with the old content.",
|
|
2113
|
-
inputSchema: {
|
|
2114
|
-
"type": "object",
|
|
2115
|
-
"properties": {
|
|
2116
|
-
"page_id": {
|
|
2117
|
-
"type": "string",
|
|
2118
|
-
"description": "Page UUID"
|
|
2119
|
-
},
|
|
2120
|
-
"revision_id": {
|
|
2121
|
-
"type": "string",
|
|
2122
|
-
"description": "Target revision ID to restore"
|
|
2123
|
-
},
|
|
2124
|
-
"message": {
|
|
2125
|
-
"type": "string",
|
|
2126
|
-
"description": "Commit message"
|
|
2127
|
-
},
|
|
2128
|
-
"workspace": {
|
|
2129
|
-
"type": "string",
|
|
2130
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2131
|
-
}
|
|
2132
|
-
},
|
|
2133
|
-
"required": [
|
|
2134
|
-
"page_id",
|
|
2135
|
-
"revision_id"
|
|
2136
|
-
]
|
|
2137
|
-
},
|
|
2138
|
-
},
|
|
2139
|
-
{
|
|
2140
|
-
name: "agentdocs_listMedia",
|
|
2141
|
-
description: "List media files in a documentation project. Returns filenames, sizes, URLs, and markdown embed snippets.",
|
|
2142
|
-
inputSchema: {
|
|
2143
|
-
"type": "object",
|
|
2144
|
-
"properties": {
|
|
2145
|
-
"project_slug": {
|
|
2146
|
-
"type": "string",
|
|
2147
|
-
"description": "Project slug or UUID"
|
|
2148
|
-
},
|
|
2149
|
-
"limit": {
|
|
2150
|
-
"type": "number",
|
|
2151
|
-
"description": "Max results"
|
|
2152
|
-
},
|
|
2153
|
-
"workspace": {
|
|
2154
|
-
"type": "string",
|
|
2155
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2156
|
-
}
|
|
2157
|
-
},
|
|
2158
|
-
"required": [
|
|
2159
|
-
"project_slug"
|
|
2160
|
-
]
|
|
2161
|
-
},
|
|
2162
|
-
},
|
|
2163
|
-
{
|
|
2164
|
-
name: "agentdocs_bulkCreatePages",
|
|
2165
|
-
description: "Bulk create or update multiple pages at once. Used for multi-page writes. Each page needs title, slug, content_md, commit_message.",
|
|
2166
|
-
inputSchema: {
|
|
2167
|
-
"type": "object",
|
|
2168
|
-
"properties": {
|
|
2169
|
-
"project_slug": {
|
|
2170
|
-
"type": "string",
|
|
2171
|
-
"description": "Project slug or UUID"
|
|
2172
|
-
},
|
|
2173
|
-
"pages": {
|
|
2174
|
-
"type": "array",
|
|
2175
|
-
"description": "Array of page objects. Each object: title (required), slug (required), content_md (required), commit_message (required), path (optional tree location)\n",
|
|
2176
|
-
"items": {
|
|
2177
|
-
"type": "object"
|
|
2178
|
-
}
|
|
2179
|
-
},
|
|
2180
|
-
"workspace": {
|
|
2181
|
-
"type": "string",
|
|
2182
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2183
|
-
}
|
|
2184
|
-
},
|
|
2185
|
-
"required": [
|
|
2186
|
-
"project_slug",
|
|
2187
|
-
"pages"
|
|
2188
|
-
]
|
|
2189
|
-
},
|
|
2190
|
-
},
|
|
2191
|
-
{
|
|
2192
|
-
name: "agentmemory_searchMemories",
|
|
2193
|
-
description: "Search agent memories by text query. Uses the context injection endpoint which returns the most relevant memories ranked by confidence and FTS relevance. Supports filtering by memory kind and limiting result count.",
|
|
2194
|
-
inputSchema: {
|
|
2195
|
-
"type": "object",
|
|
2196
|
-
"properties": {
|
|
2197
|
-
"agent_id": {
|
|
2198
|
-
"type": "string",
|
|
2199
|
-
"description": "The agent ID whose memories to search"
|
|
2200
|
-
},
|
|
2201
|
-
"query": {
|
|
2202
|
-
"type": "string",
|
|
2203
|
-
"description": "Natural language search query"
|
|
2204
|
-
},
|
|
2205
|
-
"kinds": {
|
|
2206
|
-
"type": "array",
|
|
2207
|
-
"description": "Filter by memory kind — decision, learning, pattern, preference, fact, summary\n",
|
|
2208
|
-
"items": {
|
|
2209
|
-
"type": "string"
|
|
2210
|
-
}
|
|
2211
|
-
},
|
|
2212
|
-
"limit": {
|
|
2213
|
-
"type": "number",
|
|
2214
|
-
"description": "Maximum results to return (max 50)"
|
|
2215
|
-
},
|
|
2216
|
-
"format": {
|
|
2217
|
-
"type": "string",
|
|
2218
|
-
"description": "Response format",
|
|
2219
|
-
"enum": [
|
|
2220
|
-
"json",
|
|
2221
|
-
"yaml"
|
|
2222
|
-
]
|
|
2223
|
-
},
|
|
2224
|
-
"workspace": {
|
|
2225
|
-
"type": "string",
|
|
2226
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2227
|
-
}
|
|
2228
|
-
},
|
|
2229
|
-
"required": [
|
|
2230
|
-
"agent_id",
|
|
2231
|
-
"query"
|
|
2232
|
-
]
|
|
2233
|
-
},
|
|
2234
|
-
},
|
|
2235
|
-
{
|
|
2236
|
-
name: "agentmemory_recallRelevant",
|
|
2237
|
-
description: "Get memories relevant to a specific topic or question. Uses two-stage retrieval: FTS pre-filter (100 candidates) then LLM reranker picks the most relevant. Use this when working on a specific topic and you need contextual memories instead of just the highest-confidence ones.",
|
|
2238
|
-
inputSchema: {
|
|
2239
|
-
"type": "object",
|
|
2240
|
-
"properties": {
|
|
2241
|
-
"agent_id": {
|
|
2242
|
-
"type": "string",
|
|
2243
|
-
"description": "The agent ID whose memories to search"
|
|
2244
|
-
},
|
|
2245
|
-
"query": {
|
|
2246
|
-
"type": "string",
|
|
2247
|
-
"description": "The topic, question, or conversation context to find relevant memories for\n"
|
|
2248
|
-
},
|
|
2249
|
-
"kinds": {
|
|
2250
|
-
"type": "array",
|
|
2251
|
-
"description": "Filter by memory kind — decision, learning, pattern, preference, fact, summary\n",
|
|
2252
|
-
"items": {
|
|
2253
|
-
"type": "string"
|
|
2254
|
-
}
|
|
2255
|
-
},
|
|
2256
|
-
"limit": {
|
|
2257
|
-
"type": "number",
|
|
2258
|
-
"description": "Maximum relevant memories to return (max 50)"
|
|
2259
|
-
},
|
|
2260
|
-
"format": {
|
|
2261
|
-
"type": "string",
|
|
2262
|
-
"description": "Response format",
|
|
2263
|
-
"enum": [
|
|
2264
|
-
"json",
|
|
2265
|
-
"yaml"
|
|
2266
|
-
]
|
|
2267
|
-
},
|
|
2268
|
-
"workspace": {
|
|
2269
|
-
"type": "string",
|
|
2270
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2271
|
-
}
|
|
2272
|
-
},
|
|
2273
|
-
"required": [
|
|
2274
|
-
"agent_id",
|
|
2275
|
-
"query"
|
|
2276
|
-
]
|
|
2277
|
-
},
|
|
2278
|
-
},
|
|
2279
|
-
{
|
|
2280
|
-
name: "agentmemory_createMemory",
|
|
2281
|
-
description: "Add a new memory manually. Use this when you learn something important during a conversation that should be remembered across sessions. Memories are stored with confidence scores and importance levels.",
|
|
2282
|
-
inputSchema: {
|
|
2283
|
-
"type": "object",
|
|
2284
|
-
"properties": {
|
|
2285
|
-
"agent_id": {
|
|
2286
|
-
"type": "string",
|
|
2287
|
-
"description": "The agent ID to associate this memory with"
|
|
2288
|
-
},
|
|
2289
|
-
"kind": {
|
|
2290
|
-
"type": "string",
|
|
2291
|
-
"description": "Memory kind — decision (choices made), learning (knowledge gained), pattern (recurring behaviors), preference (stated preferences), fact (concrete details)\n",
|
|
2292
|
-
"enum": [
|
|
2293
|
-
"decision",
|
|
2294
|
-
"learning",
|
|
2295
|
-
"pattern",
|
|
2296
|
-
"preference",
|
|
2297
|
-
"fact"
|
|
2298
|
-
]
|
|
2299
|
-
},
|
|
2300
|
-
"title": {
|
|
2301
|
-
"type": "string",
|
|
2302
|
-
"description": "Concise title for the memory"
|
|
2303
|
-
},
|
|
2304
|
-
"body": {
|
|
2305
|
-
"type": "string",
|
|
2306
|
-
"description": "Detailed description of the memory"
|
|
2307
|
-
},
|
|
2308
|
-
"tags": {
|
|
2309
|
-
"type": "array",
|
|
2310
|
-
"description": "Array of 1-5 tags for categorization",
|
|
2311
|
-
"items": {
|
|
2312
|
-
"type": "string"
|
|
2313
|
-
}
|
|
2314
|
-
},
|
|
2315
|
-
"confidence": {
|
|
2316
|
-
"type": "number",
|
|
2317
|
-
"description": "Confidence score from 0.0 to 1.0"
|
|
2318
|
-
},
|
|
2319
|
-
"importance": {
|
|
2320
|
-
"type": "string",
|
|
2321
|
-
"description": "Importance level for prioritization",
|
|
2322
|
-
"enum": [
|
|
2323
|
-
"low",
|
|
2324
|
-
"normal",
|
|
2325
|
-
"high",
|
|
2326
|
-
"critical"
|
|
2327
|
-
]
|
|
2328
|
-
},
|
|
2329
|
-
"workspace": {
|
|
2330
|
-
"type": "string",
|
|
2331
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2332
|
-
}
|
|
2333
|
-
},
|
|
2334
|
-
"required": [
|
|
2335
|
-
"agent_id",
|
|
2336
|
-
"kind",
|
|
2337
|
-
"title",
|
|
2338
|
-
"body"
|
|
2339
|
-
]
|
|
2340
|
-
},
|
|
2341
|
-
},
|
|
2342
|
-
{
|
|
2343
|
-
name: "agentmemory_getStats",
|
|
2344
|
-
description: "Get an overview of the memory collection — total count, breakdown by kind and importance, average confidence.",
|
|
2345
|
-
inputSchema: {
|
|
2346
|
-
"type": "object",
|
|
2347
|
-
"properties": {
|
|
2348
|
-
"format": {
|
|
2349
|
-
"type": "string",
|
|
2350
|
-
"description": "Response format",
|
|
2351
|
-
"enum": [
|
|
2352
|
-
"json",
|
|
2353
|
-
"yaml"
|
|
2354
|
-
]
|
|
2355
|
-
},
|
|
2356
|
-
"workspace": {
|
|
2357
|
-
"type": "string",
|
|
2358
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2359
|
-
}
|
|
2360
|
-
}
|
|
2361
|
-
},
|
|
2362
|
-
},
|
|
2363
|
-
{
|
|
2364
|
-
name: "auth_requestAccess",
|
|
2365
|
-
description: "Request a PAT token for API access. No authentication required — this is the bootstrap entry point. Sends an approval email to the workspace admin. Returns a request_id and poll_token for polling approval status.",
|
|
2366
|
-
inputSchema: {
|
|
2367
|
-
"type": "object",
|
|
2368
|
-
"properties": {
|
|
2369
|
-
"workspace_slug": {
|
|
2370
|
-
"type": "string",
|
|
2371
|
-
"description": "Workspace slug (brand identifier, e.g. \"spideriq\")"
|
|
2372
|
-
},
|
|
2373
|
-
"owner_email": {
|
|
2374
|
-
"type": "string",
|
|
2375
|
-
"description": "Email of the workspace admin who will approve the request"
|
|
2376
|
-
},
|
|
2377
|
-
"project_name": {
|
|
2378
|
-
"type": "string",
|
|
2379
|
-
"description": "Name of the project requesting access"
|
|
2380
|
-
},
|
|
2381
|
-
"requested_scopes": {
|
|
2382
|
-
"type": "array",
|
|
2383
|
-
"description": "Scopes to request (default board:read, board:write)",
|
|
2384
|
-
"items": {
|
|
2385
|
-
"type": "string"
|
|
2386
|
-
}
|
|
2387
|
-
},
|
|
2388
|
-
"ttl_hours": {
|
|
2389
|
-
"type": "number",
|
|
2390
|
-
"description": "Token lifetime in hours (1-8760, default 72)"
|
|
2391
|
-
},
|
|
2392
|
-
"workspace": {
|
|
2393
|
-
"type": "string",
|
|
2394
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2395
|
-
}
|
|
2396
|
-
},
|
|
2397
|
-
"required": [
|
|
2398
|
-
"workspace_slug",
|
|
2399
|
-
"owner_email"
|
|
2400
|
-
]
|
|
2401
|
-
},
|
|
2402
|
-
},
|
|
2403
|
-
{
|
|
2404
|
-
name: "auth_requestAccessByEmail",
|
|
2405
|
-
description: "Simplified PAT request — email only, auto-discovers all brands the admin belongs to. No authentication required.",
|
|
2406
|
-
inputSchema: {
|
|
2407
|
-
"type": "object",
|
|
2408
|
-
"properties": {
|
|
2409
|
-
"owner_email": {
|
|
2410
|
-
"type": "string",
|
|
2411
|
-
"description": "Email of the admin who will approve"
|
|
2412
|
-
},
|
|
2413
|
-
"project_name": {
|
|
2414
|
-
"type": "string",
|
|
2415
|
-
"description": "Name of the project requesting access"
|
|
2416
|
-
},
|
|
2417
|
-
"requested_scopes": {
|
|
2418
|
-
"type": "array",
|
|
2419
|
-
"description": "Scopes to request",
|
|
2420
|
-
"items": {
|
|
2421
|
-
"type": "string"
|
|
2422
|
-
}
|
|
2423
|
-
},
|
|
2424
|
-
"ttl_hours": {
|
|
2425
|
-
"type": "number",
|
|
2426
|
-
"description": "Token lifetime in hours"
|
|
2427
|
-
},
|
|
2428
|
-
"workspace": {
|
|
2429
|
-
"type": "string",
|
|
2430
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2431
|
-
}
|
|
2432
|
-
},
|
|
2433
|
-
"required": [
|
|
2434
|
-
"owner_email"
|
|
2435
|
-
]
|
|
2436
|
-
},
|
|
2437
|
-
},
|
|
2438
|
-
{
|
|
2439
|
-
name: "auth_checkAccessStatus",
|
|
2440
|
-
description: "Poll for PAT request approval status. When approved, auto-stores the token in OPVS_PAT so all subsequent tool calls are authenticated. Returns status: pending, approved, denied, or expired.",
|
|
2441
|
-
inputSchema: {
|
|
2442
|
-
"type": "object",
|
|
2443
|
-
"properties": {
|
|
2444
|
-
"request_id": {
|
|
2445
|
-
"type": "string",
|
|
2446
|
-
"description": "Request ID from requestAccess response"
|
|
2447
|
-
},
|
|
2448
|
-
"poll_token": {
|
|
2449
|
-
"type": "string",
|
|
2450
|
-
"description": "Poll token from requestAccess response"
|
|
2451
|
-
},
|
|
2452
|
-
"workspace": {
|
|
2453
|
-
"type": "string",
|
|
2454
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2455
|
-
}
|
|
2456
|
-
},
|
|
2457
|
-
"required": [
|
|
2458
|
-
"request_id",
|
|
2459
|
-
"poll_token"
|
|
2460
|
-
]
|
|
2461
|
-
},
|
|
2462
|
-
},
|
|
2463
|
-
{
|
|
2464
|
-
name: "auth_getMe",
|
|
2465
|
-
description: "Get the current user's profile including all brand memberships. Returns user details (name, email, photo, role) and a list of brands the user belongs to with their role and position.",
|
|
2466
|
-
inputSchema: {
|
|
2467
|
-
"type": "object",
|
|
2468
|
-
"properties": {
|
|
2469
|
-
"workspace": {
|
|
2470
|
-
"type": "string",
|
|
2471
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2472
|
-
}
|
|
2473
|
-
}
|
|
2474
|
-
},
|
|
2475
|
-
},
|
|
2476
|
-
{
|
|
2477
|
-
name: "auth_completeSignup",
|
|
2478
|
-
description: "Complete signup by creating a user profile, brand, and membership. Called after Better Auth signup succeeds. Creates the user record, a new brand, brand_settings, brand_information, and brand_membership.",
|
|
2479
|
-
inputSchema: {
|
|
2480
|
-
"type": "object",
|
|
2481
|
-
"properties": {
|
|
2482
|
-
"brand_name": {
|
|
2483
|
-
"type": "string",
|
|
2484
|
-
"description": "Name for the new brand/organization"
|
|
2485
|
-
},
|
|
2486
|
-
"firstname": {
|
|
2487
|
-
"type": "string",
|
|
2488
|
-
"description": "User's first name"
|
|
2489
|
-
},
|
|
2490
|
-
"lastname": {
|
|
2491
|
-
"type": "string",
|
|
2492
|
-
"description": "User's last name"
|
|
2493
|
-
},
|
|
2494
|
-
"workspace": {
|
|
2495
|
-
"type": "string",
|
|
2496
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2497
|
-
}
|
|
2498
|
-
},
|
|
2499
|
-
"required": [
|
|
2500
|
-
"brand_name"
|
|
2501
|
-
]
|
|
2502
|
-
},
|
|
2503
|
-
},
|
|
2504
|
-
{
|
|
2505
|
-
name: "auth_signupWithInvite",
|
|
2506
|
-
description: "Complete signup using an invitation token. Creates the user profile and adds them to the inviting brand as a client member.",
|
|
2507
|
-
inputSchema: {
|
|
2508
|
-
"type": "object",
|
|
2509
|
-
"properties": {
|
|
2510
|
-
"invite_token": {
|
|
2511
|
-
"type": "string",
|
|
2512
|
-
"description": "The invitation token from the invite link"
|
|
2513
|
-
},
|
|
2514
|
-
"workspace": {
|
|
2515
|
-
"type": "string",
|
|
2516
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2517
|
-
}
|
|
2518
|
-
},
|
|
2519
|
-
"required": [
|
|
2520
|
-
"invite_token"
|
|
2521
|
-
]
|
|
2522
|
-
},
|
|
2523
|
-
},
|
|
2524
|
-
{
|
|
2525
|
-
name: "auth_acceptInvite",
|
|
2526
|
-
description: "Accept a brand invitation as an already-authenticated user. Adds the user to the inviting brand without re-authentication.",
|
|
2527
|
-
inputSchema: {
|
|
2528
|
-
"type": "object",
|
|
2529
|
-
"properties": {
|
|
2530
|
-
"invite_token": {
|
|
2531
|
-
"type": "string",
|
|
2532
|
-
"description": "The invitation token to accept"
|
|
2533
|
-
},
|
|
2534
|
-
"workspace": {
|
|
2535
|
-
"type": "string",
|
|
2536
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2537
|
-
}
|
|
2538
|
-
},
|
|
2539
|
-
"required": [
|
|
2540
|
-
"invite_token"
|
|
2541
|
-
]
|
|
2542
|
-
},
|
|
2543
|
-
},
|
|
2544
|
-
{
|
|
2545
|
-
name: "auth_updateProfile",
|
|
2546
|
-
description: "Update the current user's profile. Supports partial updates for first name, last name, and mobile number. Automatically recomputes full_name from first + last.",
|
|
2547
|
-
inputSchema: {
|
|
2548
|
-
"type": "object",
|
|
2549
|
-
"properties": {
|
|
2550
|
-
"firstname": {
|
|
2551
|
-
"type": "string",
|
|
2552
|
-
"description": "Updated first name"
|
|
2553
|
-
},
|
|
2554
|
-
"lastname": {
|
|
2555
|
-
"type": "string",
|
|
2556
|
-
"description": "Updated last name"
|
|
2557
|
-
},
|
|
2558
|
-
"mobile": {
|
|
2559
|
-
"type": "string",
|
|
2560
|
-
"description": "Updated mobile/phone number"
|
|
2561
|
-
},
|
|
2562
|
-
"workspace": {
|
|
2563
|
-
"type": "string",
|
|
2564
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2565
|
-
}
|
|
2566
|
-
}
|
|
2567
|
-
},
|
|
2568
|
-
},
|
|
2569
|
-
{
|
|
2570
|
-
name: "auth_uploadProfilePhoto",
|
|
2571
|
-
description: "Upload a profile picture. Resizes to 256x256 JPEG and stores in Cloudflare R2. Accepts PNG, JPG, or GIF up to 5MB.",
|
|
2572
|
-
inputSchema: {
|
|
2573
|
-
"type": "object",
|
|
2574
|
-
"properties": {
|
|
2575
|
-
"file": {
|
|
2576
|
-
"type": "string",
|
|
2577
|
-
"description": "Image file path or base64 data (PNG, JPG, or GIF, max 5MB)"
|
|
2578
|
-
},
|
|
2579
|
-
"workspace": {
|
|
2580
|
-
"type": "string",
|
|
2581
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2582
|
-
}
|
|
2583
|
-
},
|
|
2584
|
-
"required": [
|
|
2585
|
-
"file"
|
|
2586
|
-
]
|
|
2587
|
-
},
|
|
2588
|
-
},
|
|
2589
|
-
{
|
|
2590
|
-
name: "auth_removeProfilePhoto",
|
|
2591
|
-
description: "Remove the current user's profile picture. Cleans up the R2 file if stored there.",
|
|
2592
|
-
inputSchema: {
|
|
2593
|
-
"type": "object",
|
|
2594
|
-
"properties": {
|
|
2595
|
-
"workspace": {
|
|
2596
|
-
"type": "string",
|
|
2597
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2598
|
-
}
|
|
2599
|
-
}
|
|
2600
|
-
},
|
|
2601
|
-
},
|
|
2602
|
-
{
|
|
2603
|
-
name: "auth_getConnectors",
|
|
2604
|
-
description: "List connected OAuth providers for the current user. Returns provider name, connection date, and associated email for each linked social login (GitHub, Google, etc.). Excludes credential (email/password) entries.",
|
|
2605
|
-
inputSchema: {
|
|
2606
|
-
"type": "object",
|
|
2607
|
-
"properties": {
|
|
2608
|
-
"workspace": {
|
|
2609
|
-
"type": "string",
|
|
2610
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2611
|
-
}
|
|
2612
|
-
}
|
|
2613
|
-
},
|
|
2614
|
-
},
|
|
2615
|
-
{
|
|
2616
|
-
name: "integrations_getOverview",
|
|
2617
|
-
description: "Get an aggregated overview of all configured providers for the brand. Returns per-provider key counts, active/healthy counts, daily capacity and spend totals.",
|
|
2618
|
-
inputSchema: {
|
|
2619
|
-
"type": "object",
|
|
2620
|
-
"properties": {
|
|
2621
|
-
"brand_id": {
|
|
2622
|
-
"type": "number",
|
|
2623
|
-
"description": "Brand ID"
|
|
2624
|
-
},
|
|
2625
|
-
"workspace": {
|
|
2626
|
-
"type": "string",
|
|
2627
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2628
|
-
}
|
|
2629
|
-
},
|
|
2630
|
-
"required": [
|
|
2631
|
-
"brand_id"
|
|
2632
|
-
]
|
|
2633
|
-
},
|
|
2634
|
-
},
|
|
2635
|
-
{
|
|
2636
|
-
name: "integrations_listProviders",
|
|
2637
|
-
description: "List available provider templates with their required credential fields and default limits.",
|
|
2638
|
-
inputSchema: {
|
|
2639
|
-
"type": "object",
|
|
2640
|
-
"properties": {
|
|
2641
|
-
"brand_id": {
|
|
2642
|
-
"type": "number",
|
|
2643
|
-
"description": "Brand ID"
|
|
2644
|
-
},
|
|
2645
|
-
"workspace": {
|
|
2646
|
-
"type": "string",
|
|
2647
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2648
|
-
}
|
|
2649
|
-
},
|
|
2650
|
-
"required": [
|
|
2651
|
-
"brand_id"
|
|
2652
|
-
]
|
|
2653
|
-
},
|
|
2654
|
-
},
|
|
2655
|
-
{
|
|
2656
|
-
name: "integrations_listIntegrations",
|
|
2657
|
-
description: "List all integration keys for the brand, optionally filtered by provider name. Returns key previews, health status, usage counters and spend data.",
|
|
2658
|
-
inputSchema: {
|
|
2659
|
-
"type": "object",
|
|
2660
|
-
"properties": {
|
|
2661
|
-
"brand_id": {
|
|
2662
|
-
"type": "number",
|
|
2663
|
-
"description": "Brand ID"
|
|
2664
|
-
},
|
|
2665
|
-
"provider_name": {
|
|
2666
|
-
"type": "string",
|
|
2667
|
-
"description": "Filter by provider name (e.g. spideriq, smartlead)"
|
|
2668
|
-
},
|
|
2669
|
-
"workspace": {
|
|
2670
|
-
"type": "string",
|
|
2671
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2672
|
-
}
|
|
2673
|
-
},
|
|
2674
|
-
"required": [
|
|
2675
|
-
"brand_id"
|
|
2676
|
-
]
|
|
2677
|
-
},
|
|
2678
|
-
},
|
|
2679
|
-
{
|
|
2680
|
-
name: "integrations_getIntegration",
|
|
2681
|
-
description: "Get details for a single integration key including preview, health status, usage and spend limits.",
|
|
2682
|
-
inputSchema: {
|
|
2683
|
-
"type": "object",
|
|
2684
|
-
"properties": {
|
|
2685
|
-
"brand_id": {
|
|
2686
|
-
"type": "number",
|
|
2687
|
-
"description": "Brand ID"
|
|
2688
|
-
},
|
|
2689
|
-
"integration_id": {
|
|
2690
|
-
"type": "number",
|
|
2691
|
-
"description": "The integration key ID"
|
|
2692
|
-
},
|
|
2693
|
-
"workspace": {
|
|
2694
|
-
"type": "string",
|
|
2695
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2696
|
-
}
|
|
2697
|
-
},
|
|
2698
|
-
"required": [
|
|
2699
|
-
"brand_id",
|
|
2700
|
-
"integration_id"
|
|
2701
|
-
]
|
|
2702
|
-
},
|
|
2703
|
-
},
|
|
2704
|
-
{
|
|
2705
|
-
name: "integrations_createIntegration",
|
|
2706
|
-
description: "Create a new API integration key. Requires provider_name and a credentials object with the provider's required fields. Brand admin only.",
|
|
2707
|
-
inputSchema: {
|
|
2708
|
-
"type": "object",
|
|
2709
|
-
"properties": {
|
|
2710
|
-
"brand_id": {
|
|
2711
|
-
"type": "number",
|
|
2712
|
-
"description": "Brand ID"
|
|
2713
|
-
},
|
|
2714
|
-
"provider_name": {
|
|
2715
|
-
"type": "string",
|
|
2716
|
-
"description": "Provider identifier (e.g. spideriq, smartlead, spidermail)"
|
|
2717
|
-
},
|
|
2718
|
-
"credentials": {
|
|
2719
|
-
"type": "object",
|
|
2720
|
-
"description": "Provider-specific credential fields (api_key, workspace, etc.)"
|
|
2721
|
-
},
|
|
2722
|
-
"key_label": {
|
|
2723
|
-
"type": "string",
|
|
2724
|
-
"description": "Human-readable label for this key"
|
|
2725
|
-
},
|
|
2726
|
-
"is_primary": {
|
|
2727
|
-
"type": "boolean",
|
|
2728
|
-
"description": "Set as primary key for this provider"
|
|
2729
|
-
},
|
|
2730
|
-
"daily_limit": {
|
|
2731
|
-
"type": "number",
|
|
2732
|
-
"description": "Daily usage limit (overrides provider default)"
|
|
2733
|
-
},
|
|
2734
|
-
"minute_limit": {
|
|
2735
|
-
"type": "number",
|
|
2736
|
-
"description": "Per-minute usage limit (overrides provider default)"
|
|
2737
|
-
},
|
|
2738
|
-
"country_code": {
|
|
2739
|
-
"type": "string",
|
|
2740
|
-
"description": "Country code for region-specific keys"
|
|
2741
|
-
},
|
|
2742
|
-
"workspace": {
|
|
2743
|
-
"type": "string",
|
|
2744
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2745
|
-
}
|
|
2746
|
-
},
|
|
2747
|
-
"required": [
|
|
2748
|
-
"brand_id",
|
|
2749
|
-
"provider_name",
|
|
2750
|
-
"credentials"
|
|
2751
|
-
]
|
|
2752
|
-
},
|
|
2753
|
-
},
|
|
2754
|
-
{
|
|
2755
|
-
name: "integrations_updateIntegration",
|
|
2756
|
-
description: "Update an existing integration key. Supports partial updates for label, credentials, limits, priority, active status, and spend limits. Brand admin only.",
|
|
2757
|
-
inputSchema: {
|
|
2758
|
-
"type": "object",
|
|
2759
|
-
"properties": {
|
|
2760
|
-
"brand_id": {
|
|
2761
|
-
"type": "number",
|
|
2762
|
-
"description": "Brand ID"
|
|
2763
|
-
},
|
|
2764
|
-
"integration_id": {
|
|
2765
|
-
"type": "number",
|
|
2766
|
-
"description": "The integration key ID to update"
|
|
2767
|
-
},
|
|
2768
|
-
"key_label": {
|
|
2769
|
-
"type": "string",
|
|
2770
|
-
"description": "Updated human-readable label"
|
|
2771
|
-
},
|
|
2772
|
-
"credentials": {
|
|
2773
|
-
"type": "object",
|
|
2774
|
-
"description": "Updated credential fields (merged with existing)"
|
|
2775
|
-
},
|
|
2776
|
-
"is_active": {
|
|
2777
|
-
"type": "boolean",
|
|
2778
|
-
"description": "Enable or disable the key"
|
|
2779
|
-
},
|
|
2780
|
-
"is_primary": {
|
|
2781
|
-
"type": "boolean",
|
|
2782
|
-
"description": "Set as primary key for this provider"
|
|
2783
|
-
},
|
|
2784
|
-
"daily_limit": {
|
|
2785
|
-
"type": "number",
|
|
2786
|
-
"description": "Updated daily usage limit"
|
|
2787
|
-
},
|
|
2788
|
-
"minute_limit": {
|
|
2789
|
-
"type": "number",
|
|
2790
|
-
"description": "Updated per-minute usage limit"
|
|
2791
|
-
},
|
|
2792
|
-
"priority": {
|
|
2793
|
-
"type": "number",
|
|
2794
|
-
"description": "Round-robin priority (higher = preferred)"
|
|
2795
|
-
},
|
|
2796
|
-
"spend_limit_amount": {
|
|
2797
|
-
"type": "number",
|
|
2798
|
-
"description": "Spend limit amount"
|
|
2799
|
-
},
|
|
2800
|
-
"spend_limit_period": {
|
|
2801
|
-
"type": "string",
|
|
2802
|
-
"description": "Spend limit period (daily, monthly)"
|
|
2803
|
-
},
|
|
2804
|
-
"spend_limit_action": {
|
|
2805
|
-
"type": "string",
|
|
2806
|
-
"description": "Action when limit hit (pause, alert)"
|
|
2807
|
-
},
|
|
2808
|
-
"workspace": {
|
|
2809
|
-
"type": "string",
|
|
2810
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2811
|
-
}
|
|
2812
|
-
},
|
|
2813
|
-
"required": [
|
|
2814
|
-
"brand_id",
|
|
2815
|
-
"integration_id"
|
|
2816
|
-
]
|
|
2817
|
-
},
|
|
2818
|
-
},
|
|
2819
|
-
{
|
|
2820
|
-
name: "integrations_deleteIntegration",
|
|
2821
|
-
description: "Delete an integration key permanently. Also deregisters associated services (e.g. SpiderMail mailboxes). Brand admin only.",
|
|
2822
|
-
inputSchema: {
|
|
2823
|
-
"type": "object",
|
|
2824
|
-
"properties": {
|
|
2825
|
-
"brand_id": {
|
|
2826
|
-
"type": "number",
|
|
2827
|
-
"description": "Brand ID"
|
|
2828
|
-
},
|
|
2829
|
-
"integration_id": {
|
|
2830
|
-
"type": "number",
|
|
2831
|
-
"description": "The integration key ID to delete"
|
|
2832
|
-
},
|
|
2833
|
-
"workspace": {
|
|
2834
|
-
"type": "string",
|
|
2835
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2836
|
-
}
|
|
2837
|
-
},
|
|
2838
|
-
"required": [
|
|
2839
|
-
"brand_id",
|
|
2840
|
-
"integration_id"
|
|
2841
|
-
]
|
|
2842
|
-
},
|
|
2843
|
-
},
|
|
2844
|
-
{
|
|
2845
|
-
name: "integrations_resetUsage",
|
|
2846
|
-
description: "Reset daily and minute usage counters for an integration key. Brand admin only.",
|
|
2847
|
-
inputSchema: {
|
|
2848
|
-
"type": "object",
|
|
2849
|
-
"properties": {
|
|
2850
|
-
"brand_id": {
|
|
2851
|
-
"type": "number",
|
|
2852
|
-
"description": "Brand ID"
|
|
2853
|
-
},
|
|
2854
|
-
"integration_id": {
|
|
2855
|
-
"type": "number",
|
|
2856
|
-
"description": "The integration key ID"
|
|
2857
|
-
},
|
|
2858
|
-
"workspace": {
|
|
2859
|
-
"type": "string",
|
|
2860
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2861
|
-
}
|
|
2862
|
-
},
|
|
2863
|
-
"required": [
|
|
2864
|
-
"brand_id",
|
|
2865
|
-
"integration_id"
|
|
2866
|
-
]
|
|
2867
|
-
},
|
|
2868
|
-
},
|
|
2869
|
-
{
|
|
2870
|
-
name: "integrations_getSpend",
|
|
2871
|
-
description: "Get spend details for a single integration key including cached balance, daily and monthly usage, and currency.",
|
|
2872
|
-
inputSchema: {
|
|
2873
|
-
"type": "object",
|
|
2874
|
-
"properties": {
|
|
2875
|
-
"brand_id": {
|
|
2876
|
-
"type": "number",
|
|
2877
|
-
"description": "Brand ID"
|
|
2878
|
-
},
|
|
2879
|
-
"integration_id": {
|
|
2880
|
-
"type": "number",
|
|
2881
|
-
"description": "The integration key ID"
|
|
2882
|
-
},
|
|
2883
|
-
"workspace": {
|
|
2884
|
-
"type": "string",
|
|
2885
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2886
|
-
}
|
|
2887
|
-
},
|
|
2888
|
-
"required": [
|
|
2889
|
-
"brand_id",
|
|
2890
|
-
"integration_id"
|
|
2891
|
-
]
|
|
2892
|
-
},
|
|
2893
|
-
},
|
|
2894
|
-
{
|
|
2895
|
-
name: "integrations_getProviderSpend",
|
|
2896
|
-
description: "Get aggregated spend overview for all keys of a specific provider. Includes per-key snapshots with balance, daily/monthly usage.",
|
|
2897
|
-
inputSchema: {
|
|
2898
|
-
"type": "object",
|
|
2899
|
-
"properties": {
|
|
2900
|
-
"brand_id": {
|
|
2901
|
-
"type": "number",
|
|
2902
|
-
"description": "Brand ID"
|
|
2903
|
-
},
|
|
2904
|
-
"provider_name": {
|
|
2905
|
-
"type": "string",
|
|
2906
|
-
"description": "Provider name (e.g. spideriq, smartlead)"
|
|
2907
|
-
},
|
|
2908
|
-
"workspace": {
|
|
2909
|
-
"type": "string",
|
|
2910
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2911
|
-
}
|
|
2912
|
-
},
|
|
2913
|
-
"required": [
|
|
2914
|
-
"brand_id",
|
|
2915
|
-
"provider_name"
|
|
2916
|
-
]
|
|
2917
|
-
},
|
|
2918
|
-
},
|
|
2919
|
-
{
|
|
2920
|
-
name: "integrations_syncBilling",
|
|
2921
|
-
description: "Trigger a billing sync for an integration key. Fetches current balance and usage from the provider API. Brand admin only.",
|
|
2922
|
-
inputSchema: {
|
|
2923
|
-
"type": "object",
|
|
2924
|
-
"properties": {
|
|
2925
|
-
"brand_id": {
|
|
2926
|
-
"type": "number",
|
|
2927
|
-
"description": "Brand ID"
|
|
2928
|
-
},
|
|
2929
|
-
"integration_id": {
|
|
2930
|
-
"type": "number",
|
|
2931
|
-
"description": "The integration key ID"
|
|
2932
|
-
},
|
|
2933
|
-
"workspace": {
|
|
2934
|
-
"type": "string",
|
|
2935
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2936
|
-
}
|
|
2937
|
-
},
|
|
2938
|
-
"required": [
|
|
2939
|
-
"brand_id",
|
|
2940
|
-
"integration_id"
|
|
2941
|
-
]
|
|
2942
|
-
},
|
|
2943
|
-
},
|
|
2944
|
-
{
|
|
2945
|
-
name: "opvs-protocol_register",
|
|
2946
|
-
description: "Register as an OPVS agent and get a free address",
|
|
2947
|
-
inputSchema: {
|
|
2948
|
-
"type": "object",
|
|
2949
|
-
"properties": {
|
|
2950
|
-
"name": {
|
|
2951
|
-
"type": "string",
|
|
2952
|
-
"description": "Display name for the agent"
|
|
2953
|
-
},
|
|
2954
|
-
"mode": {
|
|
2955
|
-
"type": "string",
|
|
2956
|
-
"description": "Agent messaging mode",
|
|
2957
|
-
"enum": [
|
|
2958
|
-
"public",
|
|
2959
|
-
"paired_only",
|
|
2960
|
-
"hybrid"
|
|
2961
|
-
]
|
|
2962
|
-
},
|
|
2963
|
-
"domain": {
|
|
2964
|
-
"type": "string",
|
|
2965
|
-
"description": "Domain for the OPVS address",
|
|
2966
|
-
"enum": [
|
|
2967
|
-
"opvs.run",
|
|
2968
|
-
"opvs.pub"
|
|
2969
|
-
]
|
|
2970
|
-
},
|
|
2971
|
-
"framework": {
|
|
2972
|
-
"type": "string",
|
|
2973
|
-
"description": "Agent framework identifier"
|
|
2974
|
-
},
|
|
2975
|
-
"workspace": {
|
|
2976
|
-
"type": "string",
|
|
2977
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2978
|
-
}
|
|
2979
|
-
}
|
|
2980
|
-
},
|
|
2981
|
-
},
|
|
2982
|
-
{
|
|
2983
|
-
name: "opvs-protocol_send",
|
|
2984
|
-
description: "Send a message to another OPVS agent",
|
|
2985
|
-
inputSchema: {
|
|
2986
|
-
"type": "object",
|
|
2987
|
-
"properties": {
|
|
2988
|
-
"body": {
|
|
2989
|
-
"type": "string",
|
|
2990
|
-
"description": "Message body text"
|
|
2991
|
-
},
|
|
2992
|
-
"workspace": {
|
|
2993
|
-
"type": "string",
|
|
2994
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2995
|
-
}
|
|
2996
|
-
},
|
|
2997
|
-
"required": [
|
|
2998
|
-
"body"
|
|
2999
|
-
]
|
|
3000
|
-
},
|
|
3001
|
-
},
|
|
3002
|
-
{
|
|
3003
|
-
name: "opvs-protocol_inbox",
|
|
3004
|
-
description: "Check inbox for received messages",
|
|
3005
|
-
inputSchema: {
|
|
3006
|
-
"type": "object",
|
|
3007
|
-
"properties": {
|
|
3008
|
-
"status": {
|
|
3009
|
-
"type": "string",
|
|
3010
|
-
"description": "Filter by message status",
|
|
3011
|
-
"enum": [
|
|
3012
|
-
"pending",
|
|
3013
|
-
"delivered",
|
|
3014
|
-
"claimed",
|
|
3015
|
-
"resolved"
|
|
3016
|
-
]
|
|
3017
|
-
},
|
|
3018
|
-
"limit": {
|
|
3019
|
-
"type": "number",
|
|
3020
|
-
"description": "Maximum number of messages to return"
|
|
3021
|
-
},
|
|
3022
|
-
"workspace": {
|
|
3023
|
-
"type": "string",
|
|
3024
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3025
|
-
}
|
|
3026
|
-
}
|
|
3027
|
-
},
|
|
3028
|
-
},
|
|
3029
|
-
{
|
|
3030
|
-
name: "opvs-protocol_readMessage",
|
|
3031
|
-
description: "Read a specific message",
|
|
3032
|
-
inputSchema: {
|
|
3033
|
-
"type": "object",
|
|
3034
|
-
"properties": {
|
|
3035
|
-
"message_id": {
|
|
3036
|
-
"type": "string",
|
|
3037
|
-
"description": "The message UUID"
|
|
3038
|
-
},
|
|
3039
|
-
"workspace": {
|
|
3040
|
-
"type": "string",
|
|
3041
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3042
|
-
}
|
|
3043
|
-
},
|
|
3044
|
-
"required": [
|
|
3045
|
-
"message_id"
|
|
3046
|
-
]
|
|
3047
|
-
},
|
|
3048
|
-
},
|
|
3049
|
-
{
|
|
3050
|
-
name: "opvs-protocol_reply",
|
|
3051
|
-
description: "Reply to a message",
|
|
3052
|
-
inputSchema: {
|
|
3053
|
-
"type": "object",
|
|
3054
|
-
"properties": {
|
|
3055
|
-
"message_id": {
|
|
3056
|
-
"type": "string",
|
|
3057
|
-
"description": "The message to reply to"
|
|
3058
|
-
},
|
|
3059
|
-
"body": {
|
|
3060
|
-
"type": "string",
|
|
3061
|
-
"description": "Reply body text"
|
|
3062
|
-
},
|
|
3063
|
-
"workspace": {
|
|
3064
|
-
"type": "string",
|
|
3065
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3066
|
-
}
|
|
3067
|
-
},
|
|
3068
|
-
"required": [
|
|
3069
|
-
"message_id",
|
|
3070
|
-
"body"
|
|
3071
|
-
]
|
|
3072
|
-
},
|
|
3073
|
-
},
|
|
3074
|
-
{
|
|
3075
|
-
name: "opvs-protocol_resolve",
|
|
3076
|
-
description: "Mark message resolved",
|
|
3077
|
-
inputSchema: {
|
|
3078
|
-
"type": "object",
|
|
3079
|
-
"properties": {
|
|
3080
|
-
"message_id": {
|
|
3081
|
-
"type": "string",
|
|
3082
|
-
"description": "The message to resolve"
|
|
3083
|
-
},
|
|
3084
|
-
"workspace": {
|
|
3085
|
-
"type": "string",
|
|
3086
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3087
|
-
}
|
|
3088
|
-
},
|
|
3089
|
-
"required": [
|
|
3090
|
-
"message_id"
|
|
3091
|
-
]
|
|
3092
|
-
},
|
|
3093
|
-
},
|
|
3094
|
-
{
|
|
3095
|
-
name: "opvs-protocol_claim",
|
|
3096
|
-
description: "Claim from pool (atomic)",
|
|
3097
|
-
inputSchema: {
|
|
3098
|
-
"type": "object",
|
|
3099
|
-
"properties": {
|
|
3100
|
-
"pool": {
|
|
3101
|
-
"type": "string",
|
|
3102
|
-
"description": "Pool name to claim from"
|
|
3103
|
-
},
|
|
3104
|
-
"workspace": {
|
|
3105
|
-
"type": "string",
|
|
3106
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3107
|
-
}
|
|
3108
|
-
},
|
|
3109
|
-
"required": [
|
|
3110
|
-
"pool"
|
|
3111
|
-
]
|
|
3112
|
-
},
|
|
3113
|
-
},
|
|
3114
|
-
{
|
|
3115
|
-
name: "opvs-protocol_listAgents",
|
|
3116
|
-
description: "List registered agents",
|
|
3117
|
-
inputSchema: {
|
|
3118
|
-
"type": "object",
|
|
3119
|
-
"properties": {
|
|
3120
|
-
"framework": {
|
|
3121
|
-
"type": "string",
|
|
3122
|
-
"description": "Filter by agent framework"
|
|
3123
|
-
},
|
|
3124
|
-
"status": {
|
|
3125
|
-
"type": "string",
|
|
3126
|
-
"description": "Filter by agent status",
|
|
3127
|
-
"enum": [
|
|
3128
|
-
"online",
|
|
3129
|
-
"offline",
|
|
3130
|
-
"busy",
|
|
3131
|
-
"away"
|
|
3132
|
-
]
|
|
3133
|
-
},
|
|
3134
|
-
"workspace": {
|
|
3135
|
-
"type": "string",
|
|
3136
|
-
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
3137
|
-
}
|
|
3138
|
-
}
|
|
3139
|
-
},
|
|
3140
|
-
},
|
|
3141
|
-
];
|
|
3142
|
-
// ── Generated Handler Cases ───────────────────────────────────────
|
|
3143
|
-
// Add these cases to the switch in the CallToolRequestSchema handler.
|
|
3144
|
-
//
|
|
3145
|
-
// Requires these imports/helpers from the existing MCP server:
|
|
3146
|
-
// callApi, buildUrl, ok, resolveWorkspace
|
|
3147
|
-
export async function handleGeneratedTool(name, args, callApi, buildUrl, ok) {
|
|
3148
|
-
const ws = resolveWorkspace(args);
|
|
3149
|
-
const fmt = "json";
|
|
3150
|
-
switch (name) {
|
|
3151
|
-
case "agentboard_getSession": {
|
|
3152
|
-
const path = buildUrl(`/api/v1/board/views/boards/${args.board_id}/session`, undefined, fmt);
|
|
3153
|
-
return ok(await callApi("GET", path, ws));
|
|
3154
|
-
}
|
|
3155
|
-
case "agentboard_listTasks": {
|
|
3156
|
-
const qp = [];
|
|
3157
|
-
if (args.status != null)
|
|
3158
|
-
qp.push(`status=${args.status}`);
|
|
3159
|
-
if (args.priority != null)
|
|
3160
|
-
qp.push(`priority=${args.priority}`);
|
|
3161
|
-
if (args.assignee_id != null)
|
|
3162
|
-
qp.push(`assignee_id=${args.assignee_id}`);
|
|
3163
|
-
if (args.self != null)
|
|
3164
|
-
qp.push(`self=${args.self}`);
|
|
3165
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3166
|
-
const path = buildUrl(`/api/v1/board/boards/${args.board_id}/tasks` + qs, undefined, fmt);
|
|
3167
|
-
return ok(await callApi("GET", path, ws));
|
|
3168
|
-
}
|
|
3169
|
-
case "agentboard_createTask": {
|
|
3170
|
-
const path = `/api/v1/board/boards/${args.board_id}/tasks`;
|
|
3171
|
-
const body = {};
|
|
3172
|
-
if (args.title != null)
|
|
3173
|
-
body["title"] = args.title;
|
|
3174
|
-
if (args.column_id != null)
|
|
3175
|
-
body["column_id"] = args.column_id;
|
|
3176
|
-
if (args.description != null)
|
|
3177
|
-
body["description"] = args.description;
|
|
3178
|
-
if (args.priority != null)
|
|
3179
|
-
body["priority"] = args.priority;
|
|
3180
|
-
if (args.status != null)
|
|
3181
|
-
body["status"] = args.status;
|
|
3182
|
-
if (args.assignee_id != null)
|
|
3183
|
-
body["assignee_id"] = args.assignee_id;
|
|
3184
|
-
if (args.labels != null)
|
|
3185
|
-
body["labels"] = args.labels;
|
|
3186
|
-
if (args.due_date != null)
|
|
3187
|
-
body["due_date"] = args.due_date;
|
|
3188
|
-
if (args.agent_instructions != null)
|
|
3189
|
-
body["agent_instructions"] = args.agent_instructions;
|
|
3190
|
-
if (args.agent_context != null)
|
|
3191
|
-
body["agent_context"] = args.agent_context;
|
|
3192
|
-
if (args.parent_task_id != null)
|
|
3193
|
-
body["parent_task_id"] = args.parent_task_id;
|
|
3194
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3195
|
-
}
|
|
3196
|
-
case "agentboard_updateTask": {
|
|
3197
|
-
const path = `/api/v1/board/tasks/${args.task_id}`;
|
|
3198
|
-
const body = {};
|
|
3199
|
-
if (args.title != null)
|
|
3200
|
-
body["title"] = args.title;
|
|
3201
|
-
if (args.status != null)
|
|
3202
|
-
body["status"] = args.status;
|
|
3203
|
-
if (args.priority != null)
|
|
3204
|
-
body["priority"] = args.priority;
|
|
3205
|
-
if (args.agent_result != null)
|
|
3206
|
-
body["agent_result"] = args.agent_result;
|
|
3207
|
-
if (args.description != null)
|
|
3208
|
-
body["description"] = args.description;
|
|
3209
|
-
if (args.column_id != null)
|
|
3210
|
-
body["column_id"] = args.column_id;
|
|
3211
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3212
|
-
}
|
|
3213
|
-
case "agentboard_addComment": {
|
|
3214
|
-
const path = `/api/v1/board/tasks/${args.task_id}/comments`;
|
|
3215
|
-
const body = {};
|
|
3216
|
-
if (args.content != null)
|
|
3217
|
-
body["content"] = args.content;
|
|
3218
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3219
|
-
}
|
|
3220
|
-
case "agentboard_listComments": {
|
|
3221
|
-
const qp = [];
|
|
3222
|
-
if (args.limit != null)
|
|
3223
|
-
qp.push(`limit=${args.limit}`);
|
|
3224
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3225
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/comments` + qs, undefined, fmt);
|
|
3226
|
-
return ok(await callApi("GET", path, ws));
|
|
3227
|
-
}
|
|
3228
|
-
case "agentboard_listAgents": {
|
|
3229
|
-
const qp = [];
|
|
3230
|
-
if (args.search != null)
|
|
3231
|
-
qp.push(`search=${args.search}`);
|
|
3232
|
-
if (args.agent_type != null)
|
|
3233
|
-
qp.push(`agent_type=${args.agent_type}`);
|
|
3234
|
-
if (args.page != null)
|
|
3235
|
-
qp.push(`page=${args.page}`);
|
|
3236
|
-
if (args.per_page != null)
|
|
3237
|
-
qp.push(`per_page=${args.per_page}`);
|
|
3238
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3239
|
-
const path = buildUrl("/api/v1/board/agents" + qs, undefined, fmt);
|
|
3240
|
-
return ok(await callApi("GET", path, ws));
|
|
3241
|
-
}
|
|
3242
|
-
case "agentboard_listBoards": {
|
|
3243
|
-
const path = buildUrl("/api/v1/board/boards", undefined, fmt);
|
|
3244
|
-
return ok(await callApi("GET", path, ws));
|
|
3245
|
-
}
|
|
3246
|
-
case "agentboard_getBoard": {
|
|
3247
|
-
const path = buildUrl(`/api/v1/board/boards/${args.board_id}`, undefined, fmt);
|
|
3248
|
-
return ok(await callApi("GET", path, ws));
|
|
3249
|
-
}
|
|
3250
|
-
case "agentboard_listColumns": {
|
|
3251
|
-
const path = buildUrl(`/api/v1/board/boards/${args.board_id}/columns`, undefined, fmt);
|
|
3252
|
-
return ok(await callApi("GET", path, ws));
|
|
3253
|
-
}
|
|
3254
|
-
case "agentboard_getTask": {
|
|
3255
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}`, undefined, fmt);
|
|
3256
|
-
return ok(await callApi("GET", path, ws));
|
|
3257
|
-
}
|
|
3258
|
-
case "agentboard_getActivity": {
|
|
3259
|
-
const qp = [];
|
|
3260
|
-
if (args.limit != null)
|
|
3261
|
-
qp.push(`limit=${args.limit}`);
|
|
3262
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3263
|
-
const path = buildUrl(`/api/v1/board/activity/boards/${args.board_id}` + qs, undefined, fmt);
|
|
3264
|
-
return ok(await callApi("GET", path, ws));
|
|
3265
|
-
}
|
|
3266
|
-
case "agentboard_getMetrics": {
|
|
3267
|
-
const path = buildUrl(`/api/v1/board/metrics/boards/${args.board_id}`, undefined, fmt);
|
|
3268
|
-
return ok(await callApi("GET", path, ws));
|
|
3269
|
-
}
|
|
3270
|
-
case "agentboard_deleteBoard": {
|
|
3271
|
-
const path = `/api/v1/board/boards/${args.board_id}`;
|
|
3272
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3273
|
-
}
|
|
3274
|
-
case "agentboard_deleteTask": {
|
|
3275
|
-
const path = `/api/v1/board/tasks/${args.task_id}`;
|
|
3276
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3277
|
-
}
|
|
3278
|
-
case "agentboard_moveTask": {
|
|
3279
|
-
const path = `/api/v1/board/tasks/${args.task_id}/move`;
|
|
3280
|
-
const body = {};
|
|
3281
|
-
if (args.column_id != null)
|
|
3282
|
-
body["column_id"] = args.column_id;
|
|
3283
|
-
if (args.position != null)
|
|
3284
|
-
body["position"] = args.position;
|
|
3285
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3286
|
-
}
|
|
3287
|
-
case "agentboard_listSubtasks": {
|
|
3288
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/subtasks`, undefined, fmt);
|
|
3289
|
-
return ok(await callApi("GET", path, ws));
|
|
3290
|
-
}
|
|
3291
|
-
case "agentboard_searchTasks": {
|
|
3292
|
-
const qp = [];
|
|
3293
|
-
if (args.query != null)
|
|
3294
|
-
qp.push(`query=${args.query}`);
|
|
3295
|
-
if (args.board_id != null)
|
|
3296
|
-
qp.push(`board_id=${args.board_id}`);
|
|
3297
|
-
if (args.limit != null)
|
|
3298
|
-
qp.push(`limit=${args.limit}`);
|
|
3299
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3300
|
-
const path = buildUrl("/api/v1/board/cards/search" + qs, undefined, fmt);
|
|
3301
|
-
return ok(await callApi("GET", path, ws));
|
|
3302
|
-
}
|
|
3303
|
-
case "agentboard_batchGetTasks": {
|
|
3304
|
-
const qp = [];
|
|
3305
|
-
if (args.ids != null)
|
|
3306
|
-
qp.push(`ids=${args.ids}`);
|
|
3307
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3308
|
-
const path = buildUrl("/api/v1/board/tasks/batch" + qs, undefined, fmt);
|
|
3309
|
-
return ok(await callApi("GET", path, ws));
|
|
3310
|
-
}
|
|
3311
|
-
case "agentboard_createBoard": {
|
|
3312
|
-
const path = "/api/v1/board/boards";
|
|
3313
|
-
const body = {};
|
|
3314
|
-
if (args.name != null)
|
|
3315
|
-
body["name"] = args.name;
|
|
3316
|
-
if (args.description != null)
|
|
3317
|
-
body["description"] = args.description;
|
|
3318
|
-
if (args.visibility != null)
|
|
3319
|
-
body["visibility"] = args.visibility;
|
|
3320
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3321
|
-
}
|
|
3322
|
-
case "agentboard_updateBoard": {
|
|
3323
|
-
const path = `/api/v1/board/boards/${args.board_id}`;
|
|
3324
|
-
const body = {};
|
|
3325
|
-
if (args.name != null)
|
|
3326
|
-
body["name"] = args.name;
|
|
3327
|
-
if (args.description != null)
|
|
3328
|
-
body["description"] = args.description;
|
|
3329
|
-
if (args.visibility != null)
|
|
3330
|
-
body["visibility"] = args.visibility;
|
|
3331
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3332
|
-
}
|
|
3333
|
-
case "agentboard_createColumn": {
|
|
3334
|
-
const path = `/api/v1/board/boards/${args.board_id}/columns`;
|
|
3335
|
-
const body = {};
|
|
3336
|
-
if (args.name != null)
|
|
3337
|
-
body["name"] = args.name;
|
|
3338
|
-
if (args.color != null)
|
|
3339
|
-
body["color"] = args.color;
|
|
3340
|
-
if (args.wip_limit != null)
|
|
3341
|
-
body["wip_limit"] = args.wip_limit;
|
|
3342
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3343
|
-
}
|
|
3344
|
-
case "agentboard_reorderColumns": {
|
|
3345
|
-
const path = `/api/v1/board/boards/${args.board_id}/columns/reorder`;
|
|
3346
|
-
const body = {};
|
|
3347
|
-
if (args.column_ids != null)
|
|
3348
|
-
body["column_ids"] = args.column_ids;
|
|
3349
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3350
|
-
}
|
|
3351
|
-
case "agentboard_listStages": {
|
|
3352
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/stages`, undefined, fmt);
|
|
3353
|
-
return ok(await callApi("GET", path, ws));
|
|
3354
|
-
}
|
|
3355
|
-
case "agentboard_createStage": {
|
|
3356
|
-
const path = `/api/v1/board/tasks/${args.task_id}/stages`;
|
|
3357
|
-
const body = {};
|
|
3358
|
-
if (args.title != null)
|
|
3359
|
-
body["title"] = args.title;
|
|
3360
|
-
if (args.description != null)
|
|
3361
|
-
body["description"] = args.description;
|
|
3362
|
-
if (args.assignee_agent_id != null)
|
|
3363
|
-
body["assignee_agent_id"] = args.assignee_agent_id;
|
|
3364
|
-
if (args.agent_instructions != null)
|
|
3365
|
-
body["agent_instructions"] = args.agent_instructions;
|
|
3366
|
-
if (args.position != null)
|
|
3367
|
-
body["position"] = args.position;
|
|
3368
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3369
|
-
}
|
|
3370
|
-
case "agentboard_updateStage": {
|
|
3371
|
-
const path = `/api/v1/board/tasks/${args.task_id}/stages/${args.stage_id}`;
|
|
3372
|
-
const body = {};
|
|
3373
|
-
if (args.title != null)
|
|
3374
|
-
body["title"] = args.title;
|
|
3375
|
-
if (args.description != null)
|
|
3376
|
-
body["description"] = args.description;
|
|
3377
|
-
if (args.assignee_agent_id != null)
|
|
3378
|
-
body["assignee_agent_id"] = args.assignee_agent_id;
|
|
3379
|
-
if (args.agent_instructions != null)
|
|
3380
|
-
body["agent_instructions"] = args.agent_instructions;
|
|
3381
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3382
|
-
}
|
|
3383
|
-
case "agentboard_completeStage": {
|
|
3384
|
-
const path = `/api/v1/board/tasks/${args.task_id}/stages/${args.stage_id}/handoff`;
|
|
3385
|
-
const body = {};
|
|
3386
|
-
if (args.what_was_done != null)
|
|
3387
|
-
body["what_was_done"] = args.what_was_done;
|
|
3388
|
-
if (args.output != null)
|
|
3389
|
-
body["output"] = args.output;
|
|
3390
|
-
if (args.next_owner_context != null)
|
|
3391
|
-
body["next_owner_context"] = args.next_owner_context;
|
|
3392
|
-
if (args.resolution != null)
|
|
3393
|
-
body["resolution"] = args.resolution;
|
|
3394
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3395
|
-
}
|
|
3396
|
-
case "agentboard_reorderStages": {
|
|
3397
|
-
const path = `/api/v1/board/tasks/${args.task_id}/stages/reorder`;
|
|
3398
|
-
const body = {};
|
|
3399
|
-
if (args.order != null)
|
|
3400
|
-
body["order"] = args.order;
|
|
3401
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3402
|
-
}
|
|
3403
|
-
case "agentboard_listTaskLinks": {
|
|
3404
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/links`, undefined, fmt);
|
|
3405
|
-
return ok(await callApi("GET", path, ws));
|
|
3406
|
-
}
|
|
3407
|
-
case "agentboard_createTaskLink": {
|
|
3408
|
-
const path = `/api/v1/board/tasks/${args.task_id}/links`;
|
|
3409
|
-
const body = {};
|
|
3410
|
-
if (args.target_task_id != null)
|
|
3411
|
-
body["target_task_id"] = args.target_task_id;
|
|
3412
|
-
if (args.link_type != null)
|
|
3413
|
-
body["link_type"] = args.link_type;
|
|
3414
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3415
|
-
}
|
|
3416
|
-
case "agentboard_deleteTaskLink": {
|
|
3417
|
-
const path = `/api/v1/board/task-links/${args.link_id}`;
|
|
3418
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3419
|
-
}
|
|
3420
|
-
case "agentboard_listBoardMembers": {
|
|
3421
|
-
const path = buildUrl(`/api/v1/board/boards/${args.board_id}/members`, undefined, fmt);
|
|
3422
|
-
return ok(await callApi("GET", path, ws));
|
|
3423
|
-
}
|
|
3424
|
-
case "agentboard_addBoardMember": {
|
|
3425
|
-
const path = `/api/v1/board/boards/${args.board_id}/members`;
|
|
3426
|
-
const body = {};
|
|
3427
|
-
if (args.user_id != null)
|
|
3428
|
-
body["user_id"] = args.user_id;
|
|
3429
|
-
if (args.role != null)
|
|
3430
|
-
body["role"] = args.role;
|
|
3431
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3432
|
-
}
|
|
3433
|
-
case "agentboard_removeBoardMember": {
|
|
3434
|
-
const path = `/api/v1/board/boards/${args.board_id}/members/${args.user_id}`;
|
|
3435
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3436
|
-
}
|
|
3437
|
-
case "agentboard_listMarkers": {
|
|
3438
|
-
const path = buildUrl("/api/v1/board/markers", undefined, fmt);
|
|
3439
|
-
return ok(await callApi("GET", path, ws));
|
|
3440
|
-
}
|
|
3441
|
-
case "agentboard_createMarker": {
|
|
3442
|
-
const path = "/api/v1/board/markers";
|
|
3443
|
-
const body = {};
|
|
3444
|
-
if (args.name != null)
|
|
3445
|
-
body["name"] = args.name;
|
|
3446
|
-
if (args.color != null)
|
|
3447
|
-
body["color"] = args.color;
|
|
3448
|
-
if (args.icon != null)
|
|
3449
|
-
body["icon"] = args.icon;
|
|
3450
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3451
|
-
}
|
|
3452
|
-
case "agentboard_updateMarker": {
|
|
3453
|
-
const path = `/api/v1/board/markers/${args.marker_id}`;
|
|
3454
|
-
const body = {};
|
|
3455
|
-
if (args.name != null)
|
|
3456
|
-
body["name"] = args.name;
|
|
3457
|
-
if (args.color != null)
|
|
3458
|
-
body["color"] = args.color;
|
|
3459
|
-
if (args.icon != null)
|
|
3460
|
-
body["icon"] = args.icon;
|
|
3461
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3462
|
-
}
|
|
3463
|
-
case "agentboard_deleteMarker": {
|
|
3464
|
-
const path = `/api/v1/board/markers/${args.marker_id}`;
|
|
3465
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3466
|
-
}
|
|
3467
|
-
case "agentboard_toggleMarker": {
|
|
3468
|
-
const path = `/api/v1/board/markers/${args.marker_id}/toggle`;
|
|
3469
|
-
const body = {};
|
|
3470
|
-
if (args.task_id != null)
|
|
3471
|
-
body["task_id"] = args.task_id;
|
|
3472
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3473
|
-
}
|
|
3474
|
-
case "agentboard_listBoardLinks": {
|
|
3475
|
-
const path = buildUrl("/api/v1/board/board-links", undefined, fmt);
|
|
3476
|
-
return ok(await callApi("GET", path, ws));
|
|
3477
|
-
}
|
|
3478
|
-
case "agentboard_createBoardLink": {
|
|
3479
|
-
const path = "/api/v1/board/board-links";
|
|
3480
|
-
const body = {};
|
|
3481
|
-
if (args.source_board_id != null)
|
|
3482
|
-
body["source_board_id"] = args.source_board_id;
|
|
3483
|
-
if (args.target_board_id != null)
|
|
3484
|
-
body["target_board_id"] = args.target_board_id;
|
|
3485
|
-
if (args.link_type != null)
|
|
3486
|
-
body["link_type"] = args.link_type;
|
|
3487
|
-
if (args.label != null)
|
|
3488
|
-
body["label"] = args.label;
|
|
3489
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3490
|
-
}
|
|
3491
|
-
case "agentboard_updateBoardLink": {
|
|
3492
|
-
const path = `/api/v1/board/board-links/${args.link_id}`;
|
|
3493
|
-
const body = {};
|
|
3494
|
-
if (args.link_type != null)
|
|
3495
|
-
body["link_type"] = args.link_type;
|
|
3496
|
-
if (args.label != null)
|
|
3497
|
-
body["label"] = args.label;
|
|
3498
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3499
|
-
}
|
|
3500
|
-
case "agentboard_deleteBoardLink": {
|
|
3501
|
-
const path = `/api/v1/board/board-links/${args.link_id}`;
|
|
3502
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3503
|
-
}
|
|
3504
|
-
case "agentboard_listFiles": {
|
|
3505
|
-
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/files`, undefined, fmt);
|
|
3506
|
-
return ok(await callApi("GET", path, ws));
|
|
3507
|
-
}
|
|
3508
|
-
case "agentboard_getFile": {
|
|
3509
|
-
const path = buildUrl(`/api/v1/board/files/${args.file_id}`, undefined, fmt);
|
|
3510
|
-
return ok(await callApi("GET", path, ws));
|
|
3511
|
-
}
|
|
3512
|
-
case "agentboard_agentMyTasks": {
|
|
3513
|
-
const qp = [];
|
|
3514
|
-
if (args.board_id != null)
|
|
3515
|
-
qp.push(`board_id=${args.board_id}`);
|
|
3516
|
-
if (args.status != null)
|
|
3517
|
-
qp.push(`status=${args.status}`);
|
|
3518
|
-
if (args.limit != null)
|
|
3519
|
-
qp.push(`limit=${args.limit}`);
|
|
3520
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3521
|
-
const path = buildUrl("/api/v1/board/agent-api/my-tasks" + qs, undefined, fmt);
|
|
3522
|
-
return ok(await callApi("GET", path, ws));
|
|
3523
|
-
}
|
|
3524
|
-
case "agentboard_agentMyDelegations": {
|
|
3525
|
-
const qp = [];
|
|
3526
|
-
if (args.status != null)
|
|
3527
|
-
qp.push(`status=${args.status}`);
|
|
3528
|
-
if (args.limit != null)
|
|
3529
|
-
qp.push(`limit=${args.limit}`);
|
|
3530
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3531
|
-
const path = buildUrl("/api/v1/board/agent-api/my-delegations" + qs, undefined, fmt);
|
|
3532
|
-
return ok(await callApi("GET", path, ws));
|
|
3533
|
-
}
|
|
3534
|
-
case "agentboard_agentBatchCreateTasks": {
|
|
3535
|
-
const path = "/api/v1/board/agent-api/tasks/batch";
|
|
3536
|
-
const body = {};
|
|
3537
|
-
if (args.tasks != null)
|
|
3538
|
-
body["tasks"] = args.tasks;
|
|
3539
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3540
|
-
}
|
|
3541
|
-
case "agentboard_agentReportProgress": {
|
|
3542
|
-
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/progress`;
|
|
3543
|
-
const body = {};
|
|
3544
|
-
if (args.percent != null)
|
|
3545
|
-
body["percent"] = args.percent;
|
|
3546
|
-
if (args.message != null)
|
|
3547
|
-
body["message"] = args.message;
|
|
3548
|
-
if (args.current_operation != null)
|
|
3549
|
-
body["current_operation"] = args.current_operation;
|
|
3550
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3551
|
-
}
|
|
3552
|
-
case "agentboard_agentCompleteTask": {
|
|
3553
|
-
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/complete`;
|
|
3554
|
-
const body = {};
|
|
3555
|
-
if (args.status != null)
|
|
3556
|
-
body["status"] = args.status;
|
|
3557
|
-
if (args.summary != null)
|
|
3558
|
-
body["summary"] = args.summary;
|
|
3559
|
-
if (args.result_data != null)
|
|
3560
|
-
body["result_data"] = args.result_data;
|
|
3561
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3562
|
-
}
|
|
3563
|
-
case "agentboard_agentDelegateTask": {
|
|
3564
|
-
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/delegate`;
|
|
3565
|
-
const body = {};
|
|
3566
|
-
if (args.agent_slug != null)
|
|
3567
|
-
body["agent_slug"] = args.agent_slug;
|
|
3568
|
-
if (args.instructions != null)
|
|
3569
|
-
body["instructions"] = args.instructions;
|
|
3570
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3571
|
-
}
|
|
3572
|
-
case "agentboard_agentMention": {
|
|
3573
|
-
const path = `/api/v1/board/tasks/${args.task_id}/agent-mention`;
|
|
3574
|
-
const body = {};
|
|
3575
|
-
if (args.agent_slug != null)
|
|
3576
|
-
body["agent_slug"] = args.agent_slug;
|
|
3577
|
-
if (args.message != null)
|
|
3578
|
-
body["message"] = args.message;
|
|
3579
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3580
|
-
}
|
|
3581
|
-
case "agentboard_agentTasksBy": {
|
|
3582
|
-
const qp = [];
|
|
3583
|
-
if (args.status != null)
|
|
3584
|
-
qp.push(`status=${args.status}`);
|
|
3585
|
-
if (args.limit != null)
|
|
3586
|
-
qp.push(`limit=${args.limit}`);
|
|
3587
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3588
|
-
const path = buildUrl(`/api/v1/board/agents/${args.agent_slug}/tasks` + qs, undefined, fmt);
|
|
3589
|
-
return ok(await callApi("GET", path, ws));
|
|
3590
|
-
}
|
|
3591
|
-
case "agentboard_getBoardOverview": {
|
|
3592
|
-
const path = buildUrl(`/api/v1/board/views/boards/${args.board_id}/overview`, undefined, fmt);
|
|
3593
|
-
return ok(await callApi("GET", path, ws));
|
|
3594
|
-
}
|
|
3595
|
-
case "agentboard_getBoardSummary": {
|
|
3596
|
-
const qp = [];
|
|
3597
|
-
if (args.board_id != null)
|
|
3598
|
-
qp.push(`board_id=${args.board_id}`);
|
|
3599
|
-
if (args.days != null)
|
|
3600
|
-
qp.push(`days=${args.days}`);
|
|
3601
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3602
|
-
const path = buildUrl("/api/v1/board/metrics/board-summary" + qs, undefined, fmt);
|
|
3603
|
-
return ok(await callApi("GET", path, ws));
|
|
3604
|
-
}
|
|
3605
|
-
case "agentboard_getTaskVelocity": {
|
|
3606
|
-
const qp = [];
|
|
3607
|
-
if (args.days != null)
|
|
3608
|
-
qp.push(`days=${args.days}`);
|
|
3609
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3610
|
-
const path = buildUrl("/api/v1/board/metrics/task-velocity" + qs, undefined, fmt);
|
|
3611
|
-
return ok(await callApi("GET", path, ws));
|
|
3612
|
-
}
|
|
3613
|
-
case "agentboard_getCostMetrics": {
|
|
3614
|
-
const qp = [];
|
|
3615
|
-
if (args.days != null)
|
|
3616
|
-
qp.push(`days=${args.days}`);
|
|
3617
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3618
|
-
const path = buildUrl("/api/v1/board/metrics/costs" + qs, undefined, fmt);
|
|
3619
|
-
return ok(await callApi("GET", path, ws));
|
|
3620
|
-
}
|
|
3621
|
-
case "agentboard_getTaskDistribution": {
|
|
3622
|
-
const qp = [];
|
|
3623
|
-
if (args.board_id != null)
|
|
3624
|
-
qp.push(`board_id=${args.board_id}`);
|
|
3625
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3626
|
-
const path = buildUrl("/api/v1/board/metrics/distribution" + qs, undefined, fmt);
|
|
3627
|
-
return ok(await callApi("GET", path, ws));
|
|
3628
|
-
}
|
|
3629
|
-
case "agentboard_viewBoardTasks": {
|
|
3630
|
-
const qp = [];
|
|
3631
|
-
if (args.status != null)
|
|
3632
|
-
qp.push(`status=${args.status}`);
|
|
3633
|
-
if (args.limit != null)
|
|
3634
|
-
qp.push(`limit=${args.limit}`);
|
|
3635
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3636
|
-
const path = buildUrl(`/api/v1/board/views/boards/${args.board_id}/tasks` + qs, undefined, fmt);
|
|
3637
|
-
return ok(await callApi("GET", path, ws));
|
|
3638
|
-
}
|
|
3639
|
-
case "agentboard_viewTaskDetail": {
|
|
3640
|
-
const path = buildUrl(`/api/v1/board/views/tasks/${args.task_id}`, undefined, fmt);
|
|
3641
|
-
return ok(await callApi("GET", path, ws));
|
|
3642
|
-
}
|
|
3643
|
-
case "agentdocs_listProjects": {
|
|
3644
|
-
const path = buildUrl("/api/v1/docs/projects", undefined, fmt);
|
|
3645
|
-
return ok(await callApi("GET", path, ws));
|
|
3646
|
-
}
|
|
3647
|
-
case "agentdocs_getProject": {
|
|
3648
|
-
const path = buildUrl(`/api/v1/docs/projects/${args.project_slug}`, undefined, fmt);
|
|
3649
|
-
return ok(await callApi("GET", path, ws));
|
|
3650
|
-
}
|
|
3651
|
-
case "agentdocs_listPages": {
|
|
3652
|
-
const path = buildUrl(`/api/v1/docs/projects/${args.project_slug}/pages`, undefined, fmt);
|
|
3653
|
-
return ok(await callApi("GET", path, ws));
|
|
3654
|
-
}
|
|
3655
|
-
case "agentdocs_getPage": {
|
|
3656
|
-
const path = buildUrl(`/api/v1/docs/projects/${args.project_slug}/pages/${args.slug}`, undefined, fmt);
|
|
3657
|
-
return ok(await callApi("GET", path, ws));
|
|
3658
|
-
}
|
|
3659
|
-
case "agentdocs_createPage": {
|
|
3660
|
-
const path = `/api/v1/docs/projects/${args.project_slug}/pages`;
|
|
3661
|
-
const body = {};
|
|
3662
|
-
if (args.title != null)
|
|
3663
|
-
body["title"] = args.title;
|
|
3664
|
-
if (args.content_md != null)
|
|
3665
|
-
body["content_md"] = args.content_md;
|
|
3666
|
-
if (args.commit_message != null)
|
|
3667
|
-
body["commit_message"] = args.commit_message;
|
|
3668
|
-
if (args.path != null)
|
|
3669
|
-
body["path"] = args.path;
|
|
3670
|
-
if (args.tags != null)
|
|
3671
|
-
body["tags"] = args.tags;
|
|
3672
|
-
if (args.slug != null)
|
|
3673
|
-
body["slug"] = args.slug;
|
|
3674
|
-
if (args.sort_order != null)
|
|
3675
|
-
body["sort_order"] = args.sort_order;
|
|
3676
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3677
|
-
}
|
|
3678
|
-
case "agentdocs_updatePage": {
|
|
3679
|
-
const path = `/api/v1/docs/projects/${args.project_slug}/pages/${args.slug}`;
|
|
3680
|
-
const body = {};
|
|
3681
|
-
if (args.content_md != null)
|
|
3682
|
-
body["content_md"] = args.content_md;
|
|
3683
|
-
if (args.commit_message != null)
|
|
3684
|
-
body["commit_message"] = args.commit_message;
|
|
3685
|
-
if (args.title != null)
|
|
3686
|
-
body["title"] = args.title;
|
|
3687
|
-
if (args.tags != null)
|
|
3688
|
-
body["tags"] = args.tags;
|
|
3689
|
-
return ok(await callApi("PUT", path, ws, body));
|
|
3690
|
-
}
|
|
3691
|
-
case "agentdocs_deletePage": {
|
|
3692
|
-
const path = `/api/v1/docs/projects/${args.project_slug}/pages/${args.slug}`;
|
|
3693
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3694
|
-
}
|
|
3695
|
-
case "agentdocs_searchDocs": {
|
|
3696
|
-
const qp = [];
|
|
3697
|
-
if (args.q != null)
|
|
3698
|
-
qp.push(`q=${args.q}`);
|
|
3699
|
-
if (args.project_id != null)
|
|
3700
|
-
qp.push(`project_id=${args.project_id}`);
|
|
3701
|
-
if (args.tags != null)
|
|
3702
|
-
qp.push(`tags=${args.tags}`);
|
|
3703
|
-
if (args.author_type != null)
|
|
3704
|
-
qp.push(`author_type=${args.author_type}`);
|
|
3705
|
-
if (args.limit != null)
|
|
3706
|
-
qp.push(`limit=${args.limit}`);
|
|
3707
|
-
if (args.skip != null)
|
|
3708
|
-
qp.push(`skip=${args.skip}`);
|
|
3709
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3710
|
-
const path = buildUrl("/api/v1/docs/search" + qs, undefined, fmt);
|
|
3711
|
-
return ok(await callApi("GET", path, ws));
|
|
3712
|
-
}
|
|
3713
|
-
case "agentdocs_updateTheme": {
|
|
3714
|
-
const path = `/api/v1/docs/projects/${args.project_id}`;
|
|
3715
|
-
const body = {};
|
|
3716
|
-
if (args.theme != null)
|
|
3717
|
-
body["theme"] = args.theme;
|
|
3718
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3719
|
-
}
|
|
3720
|
-
case "agentdocs_deleteProject": {
|
|
3721
|
-
const path = `/api/v1/docs/projects/${args.project_id}`;
|
|
3722
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3723
|
-
}
|
|
3724
|
-
case "agentdocs_movePage": {
|
|
3725
|
-
const path = `/api/v1/docs/projects/${args.project_slug}/pages/${args.slug}/move`;
|
|
3726
|
-
const body = {};
|
|
3727
|
-
if (args.path != null)
|
|
3728
|
-
body["path"] = args.path;
|
|
3729
|
-
if (args.sort_order != null)
|
|
3730
|
-
body["sort_order"] = args.sort_order;
|
|
3731
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3732
|
-
}
|
|
3733
|
-
case "agentdocs_createProject": {
|
|
3734
|
-
const path = "/api/v1/docs/projects";
|
|
3735
|
-
const body = {};
|
|
3736
|
-
if (args.name != null)
|
|
3737
|
-
body["name"] = args.name;
|
|
3738
|
-
if (args.description != null)
|
|
3739
|
-
body["description"] = args.description;
|
|
3740
|
-
if (args.visibility != null)
|
|
3741
|
-
body["visibility"] = args.visibility;
|
|
3742
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3743
|
-
}
|
|
3744
|
-
case "agentdocs_updateProject": {
|
|
3745
|
-
const path = `/api/v1/docs/projects/${args.project_slug}`;
|
|
3746
|
-
const body = {};
|
|
3747
|
-
if (args.name != null)
|
|
3748
|
-
body["name"] = args.name;
|
|
3749
|
-
if (args.description != null)
|
|
3750
|
-
body["description"] = args.description;
|
|
3751
|
-
if (args.visibility != null)
|
|
3752
|
-
body["visibility"] = args.visibility;
|
|
3753
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3754
|
-
}
|
|
3755
|
-
case "agentdocs_pageHistory": {
|
|
3756
|
-
const qp = [];
|
|
3757
|
-
if (args.limit != null)
|
|
3758
|
-
qp.push(`limit=${args.limit}`);
|
|
3759
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3760
|
-
const path = buildUrl(`/api/v1/docs/pages/${args.page_id}/history` + qs, undefined, fmt);
|
|
3761
|
-
return ok(await callApi("GET", path, ws));
|
|
3762
|
-
}
|
|
3763
|
-
case "agentdocs_pageDiff": {
|
|
3764
|
-
const qp = [];
|
|
3765
|
-
if (args.from_rev != null)
|
|
3766
|
-
qp.push(`from_rev=${args.from_rev}`);
|
|
3767
|
-
if (args.to_rev != null)
|
|
3768
|
-
qp.push(`to_rev=${args.to_rev}`);
|
|
3769
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3770
|
-
const path = buildUrl(`/api/v1/docs/pages/${args.page_id}/diff` + qs, undefined, fmt);
|
|
3771
|
-
return ok(await callApi("GET", path, ws));
|
|
3772
|
-
}
|
|
3773
|
-
case "agentdocs_pageRollback": {
|
|
3774
|
-
const path = `/api/v1/docs/pages/${args.page_id}/rollback`;
|
|
3775
|
-
const body = {};
|
|
3776
|
-
if (args.revision_id != null)
|
|
3777
|
-
body["revision_id"] = args.revision_id;
|
|
3778
|
-
if (args.message != null)
|
|
3779
|
-
body["message"] = args.message;
|
|
3780
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3781
|
-
}
|
|
3782
|
-
case "agentdocs_listMedia": {
|
|
3783
|
-
const qp = [];
|
|
3784
|
-
if (args.limit != null)
|
|
3785
|
-
qp.push(`limit=${args.limit}`);
|
|
3786
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3787
|
-
const path = buildUrl(`/api/v1/docs/projects/${args.project_slug}/media` + qs, undefined, fmt);
|
|
3788
|
-
return ok(await callApi("GET", path, ws));
|
|
3789
|
-
}
|
|
3790
|
-
case "agentdocs_bulkCreatePages": {
|
|
3791
|
-
const path = `/api/v1/docs/projects/${args.project_slug}/pages/bulk`;
|
|
3792
|
-
const body = {};
|
|
3793
|
-
if (args.pages != null)
|
|
3794
|
-
body["pages"] = args.pages;
|
|
3795
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3796
|
-
}
|
|
3797
|
-
case "agentmemory_searchMemories": {
|
|
3798
|
-
const path = `/api/v1/memory/agents/${args.agent_id}/context`;
|
|
3799
|
-
const body = {};
|
|
3800
|
-
if (args.query != null)
|
|
3801
|
-
body["query"] = args.query;
|
|
3802
|
-
if (args.kinds != null)
|
|
3803
|
-
body["kinds"] = args.kinds;
|
|
3804
|
-
if (args.limit != null)
|
|
3805
|
-
body["limit"] = args.limit;
|
|
3806
|
-
if (args.format != null)
|
|
3807
|
-
body["format"] = args.format;
|
|
3808
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3809
|
-
}
|
|
3810
|
-
case "agentmemory_recallRelevant": {
|
|
3811
|
-
const path = `/api/v1/memory/agents/${args.agent_id}/context/relevant`;
|
|
3812
|
-
const body = {};
|
|
3813
|
-
if (args.query != null)
|
|
3814
|
-
body["query"] = args.query;
|
|
3815
|
-
if (args.kinds != null)
|
|
3816
|
-
body["kinds"] = args.kinds;
|
|
3817
|
-
if (args.limit != null)
|
|
3818
|
-
body["limit"] = args.limit;
|
|
3819
|
-
if (args.format != null)
|
|
3820
|
-
body["format"] = args.format;
|
|
3821
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3822
|
-
}
|
|
3823
|
-
case "agentmemory_createMemory": {
|
|
3824
|
-
const path = "/api/v1/memory/memories";
|
|
3825
|
-
const body = {};
|
|
3826
|
-
if (args.agent_id != null)
|
|
3827
|
-
body["agent_id"] = args.agent_id;
|
|
3828
|
-
if (args.kind != null)
|
|
3829
|
-
body["kind"] = args.kind;
|
|
3830
|
-
if (args.title != null)
|
|
3831
|
-
body["title"] = args.title;
|
|
3832
|
-
if (args.body != null)
|
|
3833
|
-
body["body"] = args.body;
|
|
3834
|
-
if (args.tags != null)
|
|
3835
|
-
body["tags"] = args.tags;
|
|
3836
|
-
if (args.confidence != null)
|
|
3837
|
-
body["confidence"] = args.confidence;
|
|
3838
|
-
if (args.importance != null)
|
|
3839
|
-
body["importance"] = args.importance;
|
|
3840
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3841
|
-
}
|
|
3842
|
-
case "agentmemory_getStats": {
|
|
3843
|
-
const qp = [];
|
|
3844
|
-
if (args.format != null)
|
|
3845
|
-
qp.push(`format=${args.format}`);
|
|
3846
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3847
|
-
const path = buildUrl("/api/v1/memory/memories/stats" + qs, undefined, fmt);
|
|
3848
|
-
return ok(await callApi("GET", path, ws));
|
|
3849
|
-
}
|
|
3850
|
-
case "auth_requestAccess": {
|
|
3851
|
-
const path = "/api/v1/auth/pat/request";
|
|
3852
|
-
const body = {};
|
|
3853
|
-
if (args.workspace_slug != null)
|
|
3854
|
-
body["workspace_slug"] = args.workspace_slug;
|
|
3855
|
-
if (args.owner_email != null)
|
|
3856
|
-
body["owner_email"] = args.owner_email;
|
|
3857
|
-
if (args.project_name != null)
|
|
3858
|
-
body["project_name"] = args.project_name;
|
|
3859
|
-
if (args.requested_scopes != null)
|
|
3860
|
-
body["requested_scopes"] = args.requested_scopes;
|
|
3861
|
-
if (args.ttl_hours != null)
|
|
3862
|
-
body["ttl_hours"] = args.ttl_hours;
|
|
3863
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3864
|
-
}
|
|
3865
|
-
case "auth_requestAccessByEmail": {
|
|
3866
|
-
const path = "/api/v1/auth/pat/request-by-email";
|
|
3867
|
-
const body = {};
|
|
3868
|
-
if (args.owner_email != null)
|
|
3869
|
-
body["owner_email"] = args.owner_email;
|
|
3870
|
-
if (args.project_name != null)
|
|
3871
|
-
body["project_name"] = args.project_name;
|
|
3872
|
-
if (args.requested_scopes != null)
|
|
3873
|
-
body["requested_scopes"] = args.requested_scopes;
|
|
3874
|
-
if (args.ttl_hours != null)
|
|
3875
|
-
body["ttl_hours"] = args.ttl_hours;
|
|
3876
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3877
|
-
}
|
|
3878
|
-
case "auth_checkAccessStatus": {
|
|
3879
|
-
const qp = [];
|
|
3880
|
-
if (args.poll_token != null)
|
|
3881
|
-
qp.push(`poll_token=${args.poll_token}`);
|
|
3882
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3883
|
-
const path = buildUrl(`/api/v1/auth/pat/request/${args.request_id}/status` + qs, undefined, fmt);
|
|
3884
|
-
return ok(await callApi("GET", path, ws));
|
|
3885
|
-
}
|
|
3886
|
-
case "auth_getMe": {
|
|
3887
|
-
const path = buildUrl("/api/v1/auth/me", undefined, fmt);
|
|
3888
|
-
return ok(await callApi("GET", path, ws));
|
|
3889
|
-
}
|
|
3890
|
-
case "auth_completeSignup": {
|
|
3891
|
-
const path = "/api/v1/auth/signup/complete";
|
|
3892
|
-
const body = {};
|
|
3893
|
-
if (args.brand_name != null)
|
|
3894
|
-
body["brand_name"] = args.brand_name;
|
|
3895
|
-
if (args.firstname != null)
|
|
3896
|
-
body["firstname"] = args.firstname;
|
|
3897
|
-
if (args.lastname != null)
|
|
3898
|
-
body["lastname"] = args.lastname;
|
|
3899
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3900
|
-
}
|
|
3901
|
-
case "auth_signupWithInvite": {
|
|
3902
|
-
const path = "/api/v1/auth/signup/with-invite";
|
|
3903
|
-
const body = {};
|
|
3904
|
-
if (args.invite_token != null)
|
|
3905
|
-
body["invite_token"] = args.invite_token;
|
|
3906
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3907
|
-
}
|
|
3908
|
-
case "auth_acceptInvite": {
|
|
3909
|
-
const path = "/api/v1/auth/accept-invite";
|
|
3910
|
-
const body = {};
|
|
3911
|
-
if (args.invite_token != null)
|
|
3912
|
-
body["invite_token"] = args.invite_token;
|
|
3913
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3914
|
-
}
|
|
3915
|
-
case "auth_updateProfile": {
|
|
3916
|
-
const path = "/api/v1/auth/profile";
|
|
3917
|
-
const body = {};
|
|
3918
|
-
if (args.firstname != null)
|
|
3919
|
-
body["firstname"] = args.firstname;
|
|
3920
|
-
if (args.lastname != null)
|
|
3921
|
-
body["lastname"] = args.lastname;
|
|
3922
|
-
if (args.mobile != null)
|
|
3923
|
-
body["mobile"] = args.mobile;
|
|
3924
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
3925
|
-
}
|
|
3926
|
-
case "auth_uploadProfilePhoto": {
|
|
3927
|
-
const path = "/api/v1/auth/profile/photo";
|
|
3928
|
-
const body = {};
|
|
3929
|
-
if (args.file != null)
|
|
3930
|
-
body["file"] = args.file;
|
|
3931
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3932
|
-
}
|
|
3933
|
-
case "auth_removeProfilePhoto": {
|
|
3934
|
-
const path = "/api/v1/auth/profile/photo";
|
|
3935
|
-
return ok(await callApi("DELETE", path, ws));
|
|
3936
|
-
}
|
|
3937
|
-
case "auth_getConnectors": {
|
|
3938
|
-
const path = buildUrl("/api/v1/auth/connectors", undefined, fmt);
|
|
3939
|
-
return ok(await callApi("GET", path, ws));
|
|
3940
|
-
}
|
|
3941
|
-
case "integrations_getOverview": {
|
|
3942
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations`, undefined, fmt);
|
|
3943
|
-
return ok(await callApi("GET", path, ws));
|
|
3944
|
-
}
|
|
3945
|
-
case "integrations_listProviders": {
|
|
3946
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations/providers`, undefined, fmt);
|
|
3947
|
-
return ok(await callApi("GET", path, ws));
|
|
3948
|
-
}
|
|
3949
|
-
case "integrations_listIntegrations": {
|
|
3950
|
-
const qp = [];
|
|
3951
|
-
if (args.provider_name != null)
|
|
3952
|
-
qp.push(`provider_name=${args.provider_name}`);
|
|
3953
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
3954
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations/all` + qs, undefined, fmt);
|
|
3955
|
-
return ok(await callApi("GET", path, ws));
|
|
3956
|
-
}
|
|
3957
|
-
case "integrations_getIntegration": {
|
|
3958
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}`, undefined, fmt);
|
|
3959
|
-
return ok(await callApi("GET", path, ws));
|
|
3960
|
-
}
|
|
3961
|
-
case "integrations_createIntegration": {
|
|
3962
|
-
const path = `/api/v1/brands/${args.brand_id}/integrations`;
|
|
3963
|
-
const body = {};
|
|
3964
|
-
if (args.provider_name != null)
|
|
3965
|
-
body["provider_name"] = args.provider_name;
|
|
3966
|
-
if (args.credentials != null)
|
|
3967
|
-
body["credentials"] = args.credentials;
|
|
3968
|
-
if (args.key_label != null)
|
|
3969
|
-
body["key_label"] = args.key_label;
|
|
3970
|
-
if (args.is_primary != null)
|
|
3971
|
-
body["is_primary"] = args.is_primary;
|
|
3972
|
-
if (args.daily_limit != null)
|
|
3973
|
-
body["daily_limit"] = args.daily_limit;
|
|
3974
|
-
if (args.minute_limit != null)
|
|
3975
|
-
body["minute_limit"] = args.minute_limit;
|
|
3976
|
-
if (args.country_code != null)
|
|
3977
|
-
body["country_code"] = args.country_code;
|
|
3978
|
-
return ok(await callApi("POST", path, ws, body));
|
|
3979
|
-
}
|
|
3980
|
-
case "integrations_updateIntegration": {
|
|
3981
|
-
const path = `/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}`;
|
|
3982
|
-
const body = {};
|
|
3983
|
-
if (args.key_label != null)
|
|
3984
|
-
body["key_label"] = args.key_label;
|
|
3985
|
-
if (args.credentials != null)
|
|
3986
|
-
body["credentials"] = args.credentials;
|
|
3987
|
-
if (args.is_active != null)
|
|
3988
|
-
body["is_active"] = args.is_active;
|
|
3989
|
-
if (args.is_primary != null)
|
|
3990
|
-
body["is_primary"] = args.is_primary;
|
|
3991
|
-
if (args.daily_limit != null)
|
|
3992
|
-
body["daily_limit"] = args.daily_limit;
|
|
3993
|
-
if (args.minute_limit != null)
|
|
3994
|
-
body["minute_limit"] = args.minute_limit;
|
|
3995
|
-
if (args.priority != null)
|
|
3996
|
-
body["priority"] = args.priority;
|
|
3997
|
-
if (args.spend_limit_amount != null)
|
|
3998
|
-
body["spend_limit_amount"] = args.spend_limit_amount;
|
|
3999
|
-
if (args.spend_limit_period != null)
|
|
4000
|
-
body["spend_limit_period"] = args.spend_limit_period;
|
|
4001
|
-
if (args.spend_limit_action != null)
|
|
4002
|
-
body["spend_limit_action"] = args.spend_limit_action;
|
|
4003
|
-
return ok(await callApi("PATCH", path, ws, body));
|
|
4004
|
-
}
|
|
4005
|
-
case "integrations_deleteIntegration": {
|
|
4006
|
-
const path = `/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}`;
|
|
4007
|
-
return ok(await callApi("DELETE", path, ws));
|
|
4008
|
-
}
|
|
4009
|
-
case "integrations_resetUsage": {
|
|
4010
|
-
const path = `/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}/reset-usage`;
|
|
4011
|
-
return ok(await callApi("POST", path, ws));
|
|
4012
|
-
}
|
|
4013
|
-
case "integrations_getSpend": {
|
|
4014
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}/spend`, undefined, fmt);
|
|
4015
|
-
return ok(await callApi("GET", path, ws));
|
|
4016
|
-
}
|
|
4017
|
-
case "integrations_getProviderSpend": {
|
|
4018
|
-
const path = buildUrl(`/api/v1/brands/${args.brand_id}/integrations/spend/provider/${args.provider_name}`, undefined, fmt);
|
|
4019
|
-
return ok(await callApi("GET", path, ws));
|
|
4020
|
-
}
|
|
4021
|
-
case "integrations_syncBilling": {
|
|
4022
|
-
const path = `/api/v1/brands/${args.brand_id}/integrations/${args.integration_id}/sync-billing`;
|
|
4023
|
-
return ok(await callApi("POST", path, ws));
|
|
4024
|
-
}
|
|
4025
|
-
case "opvs-protocol_register": {
|
|
4026
|
-
const path = "/api/v1/opvs/agents/register";
|
|
4027
|
-
const body = {};
|
|
4028
|
-
if (args.name != null)
|
|
4029
|
-
body["name"] = args.name;
|
|
4030
|
-
if (args.mode != null)
|
|
4031
|
-
body["mode"] = args.mode;
|
|
4032
|
-
if (args.domain != null)
|
|
4033
|
-
body["domain"] = args.domain;
|
|
4034
|
-
if (args.framework != null)
|
|
4035
|
-
body["framework"] = args.framework;
|
|
4036
|
-
return ok(await callApi("POST", path, ws, body));
|
|
4037
|
-
}
|
|
4038
|
-
case "opvs-protocol_send": {
|
|
4039
|
-
const path = "/api/v1/opvs/send";
|
|
4040
|
-
const body = {};
|
|
4041
|
-
if (args.body != null)
|
|
4042
|
-
body["body"] = args.body;
|
|
4043
|
-
return ok(await callApi("POST", path, ws, body));
|
|
4044
|
-
}
|
|
4045
|
-
case "opvs-protocol_inbox": {
|
|
4046
|
-
const qp = [];
|
|
4047
|
-
if (args.status != null)
|
|
4048
|
-
qp.push(`status=${args.status}`);
|
|
4049
|
-
if (args.limit != null)
|
|
4050
|
-
qp.push(`limit=${args.limit}`);
|
|
4051
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
4052
|
-
const path = buildUrl("/api/v1/opvs/inbox" + qs, undefined, fmt);
|
|
4053
|
-
return ok(await callApi("GET", path, ws));
|
|
4054
|
-
}
|
|
4055
|
-
case "opvs-protocol_readMessage": {
|
|
4056
|
-
const path = buildUrl(`/api/v1/opvs/messages/${args.message_id}`, undefined, fmt);
|
|
4057
|
-
return ok(await callApi("GET", path, ws));
|
|
4058
|
-
}
|
|
4059
|
-
case "opvs-protocol_reply": {
|
|
4060
|
-
const path = "/api/v1/opvs/reply";
|
|
4061
|
-
const body = {};
|
|
4062
|
-
if (args.message_id != null)
|
|
4063
|
-
body["message_id"] = args.message_id;
|
|
4064
|
-
if (args.body != null)
|
|
4065
|
-
body["body"] = args.body;
|
|
4066
|
-
return ok(await callApi("POST", path, ws, body));
|
|
4067
|
-
}
|
|
4068
|
-
case "opvs-protocol_resolve": {
|
|
4069
|
-
const path = "/api/v1/opvs/resolve";
|
|
4070
|
-
const body = {};
|
|
4071
|
-
if (args.message_id != null)
|
|
4072
|
-
body["message_id"] = args.message_id;
|
|
4073
|
-
return ok(await callApi("POST", path, ws, body));
|
|
4074
|
-
}
|
|
4075
|
-
case "opvs-protocol_claim": {
|
|
4076
|
-
const path = "/api/v1/opvs/claim";
|
|
4077
|
-
const body = {};
|
|
4078
|
-
if (args.pool != null)
|
|
4079
|
-
body["pool"] = args.pool;
|
|
4080
|
-
return ok(await callApi("POST", path, ws, body));
|
|
4081
|
-
}
|
|
4082
|
-
case "opvs-protocol_listAgents": {
|
|
4083
|
-
const qp = [];
|
|
4084
|
-
if (args.framework != null)
|
|
4085
|
-
qp.push(`framework=${args.framework}`);
|
|
4086
|
-
if (args.status != null)
|
|
4087
|
-
qp.push(`status=${args.status}`);
|
|
4088
|
-
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
4089
|
-
const path = buildUrl("/api/v1/opvs/agents" + qs, undefined, fmt);
|
|
4090
|
-
return ok(await callApi("GET", path, ws));
|
|
4091
|
-
}
|
|
4092
|
-
default:
|
|
4093
|
-
return null;
|
|
4094
|
-
}
|
|
4095
|
-
}
|
|
4096
|
-
function resolveWorkspace(args) {
|
|
4097
|
-
return args.workspace || process.env.OPVS_WORKSPACE || undefined;
|
|
4098
|
-
}
|
|
4099
|
-
//# sourceMappingURL=generated-tools.js.map
|