@telos.ready/mcp 1.3.0 → 1.5.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/build/index.js +40 -8
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -273,7 +273,39 @@ server.tool("get-ticket-details", "Gets the details of a ticket. The ticket refe
|
|
|
273
273
|
};
|
|
274
274
|
}
|
|
275
275
|
});
|
|
276
|
-
// Tool 6:
|
|
276
|
+
// Tool 6: Start Ticket
|
|
277
|
+
server.tool("start-ticket", "Starts working on a ticket by retrieving ticket details, and providing next-step guidance. This tool sets up a 30-minute session window during which other MCP tools will automatically provide contextual next steps.", {
|
|
278
|
+
ticketReference: z
|
|
279
|
+
.string()
|
|
280
|
+
.describe('The ticket reference for the ticket to start working on, which is an uppercase alphabetical code followed by a number, such as "TEL037".'),
|
|
281
|
+
}, async ({ ticketReference }) => {
|
|
282
|
+
try {
|
|
283
|
+
const result = await telosClient.post("/mcp/start-ticket", {
|
|
284
|
+
ticketReference,
|
|
285
|
+
});
|
|
286
|
+
if (result.success) {
|
|
287
|
+
return {
|
|
288
|
+
content: [{ type: "text", text: result.result }],
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
else {
|
|
292
|
+
return {
|
|
293
|
+
content: [{ type: "text", text: `Error: ${result}` }],
|
|
294
|
+
};
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
catch (error) {
|
|
298
|
+
return {
|
|
299
|
+
content: [
|
|
300
|
+
{
|
|
301
|
+
type: "text",
|
|
302
|
+
text: `Error starting ticket ${ticketReference}: ${error}`,
|
|
303
|
+
},
|
|
304
|
+
],
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
});
|
|
308
|
+
// Tool 7: Get Next Task
|
|
277
309
|
server.tool("get-next-task", "Gets the next task for a member and provides a ticket reference, next step and instructions for completing the task.", {
|
|
278
310
|
applicationSlug: z
|
|
279
311
|
.string()
|
|
@@ -305,7 +337,7 @@ server.tool("get-next-task", "Gets the next task for a member and provides a tic
|
|
|
305
337
|
};
|
|
306
338
|
}
|
|
307
339
|
});
|
|
308
|
-
// Tool
|
|
340
|
+
// Tool 8: Get Git Branch for Ticket
|
|
309
341
|
server.tool("get-git-branch-for-ticket", "Gets the git branch to be used for development work on this ticket. All commits for this ticket must use this branch. Git branches must stay ahead of main.", {
|
|
310
342
|
ticketReference: z
|
|
311
343
|
.string()
|
|
@@ -337,7 +369,7 @@ server.tool("get-git-branch-for-ticket", "Gets the git branch to be used for dev
|
|
|
337
369
|
};
|
|
338
370
|
}
|
|
339
371
|
});
|
|
340
|
-
// Tool
|
|
372
|
+
// Tool 9: Mark Ticket as Blocked
|
|
341
373
|
server.tool("mark-ticket-as-blocked", "Marks a ticket as blocked with a specified reason. This tool will load the ticket, add a comment with the blocking reason, and set the ticket status to blocked.", {
|
|
342
374
|
ticketReference: z
|
|
343
375
|
.string()
|
|
@@ -373,7 +405,7 @@ server.tool("mark-ticket-as-blocked", "Marks a ticket as blocked with a specifie
|
|
|
373
405
|
};
|
|
374
406
|
}
|
|
375
407
|
});
|
|
376
|
-
// Tool
|
|
408
|
+
// Tool 10: Update Action Item
|
|
377
409
|
server.tool("update-action-item", "Updates the status of an action item in a ticket. This tool finds a specific action item in the ticket or its comments and updates its status to INCOMPLETE, INPROGRESS, or COMPLETED.", {
|
|
378
410
|
ticketReference: z
|
|
379
411
|
.string()
|
|
@@ -413,7 +445,7 @@ server.tool("update-action-item", "Updates the status of an action item in a tic
|
|
|
413
445
|
};
|
|
414
446
|
}
|
|
415
447
|
});
|
|
416
|
-
// Tool
|
|
448
|
+
// Tool 11: Get Resource List
|
|
417
449
|
server.tool("get-resource-list", "Gets a list of resources for an application. Resources include system dependencies, infrastructure, documentation and policies.", {
|
|
418
450
|
applicationSlug: z
|
|
419
451
|
.string()
|
|
@@ -445,7 +477,7 @@ server.tool("get-resource-list", "Gets a list of resources for an application. R
|
|
|
445
477
|
};
|
|
446
478
|
}
|
|
447
479
|
});
|
|
448
|
-
// Tool
|
|
480
|
+
// Tool 12: Get Resource Details
|
|
449
481
|
server.tool("get-resource-details", "Gets detailed information about a specific resource by name and group. Resource names can be identified by using get-resource-list. Special resources include: Application Map, Style Guide, Tech Patterns, Database Schema", {
|
|
450
482
|
applicationSlug: z
|
|
451
483
|
.string()
|
|
@@ -483,7 +515,7 @@ server.tool("get-resource-details", "Gets detailed information about a specific
|
|
|
483
515
|
};
|
|
484
516
|
}
|
|
485
517
|
});
|
|
486
|
-
// Tool
|
|
518
|
+
// Tool 13: Answer Question
|
|
487
519
|
server.tool("answer-question", "Answers a question that was previously asked with a TECHNICAL or BUSINESS question type. Questions are identified by their six-character reference code. ", {
|
|
488
520
|
ticketReference: z
|
|
489
521
|
.string()
|
|
@@ -535,7 +567,7 @@ async function main() {
|
|
|
535
567
|
await server.connect(transport);
|
|
536
568
|
// Log success message
|
|
537
569
|
console.error("✅ Telos MCP Server running on stdio");
|
|
538
|
-
console.error("Available tools: ask-question, search-documentation, add-ticket-comment, add-documentation, get-ticket-details, get-next-task, get-git-branch-for-ticket, mark-ticket-as-blocked, update-action-item, get-resource-list, get-resource-details, answer-question");
|
|
570
|
+
console.error("Available tools: ask-question, search-documentation, add-ticket-comment, add-documentation, get-ticket-details, start-ticket, get-next-task, get-git-branch-for-ticket, mark-ticket-as-blocked, update-action-item, get-resource-list, get-resource-details, answer-question");
|
|
539
571
|
// Test connection in background without blocking or exiting
|
|
540
572
|
// This is non-critical and should not cause the server to exit
|
|
541
573
|
setImmediate(async () => {
|