@testledger/mcp 0.0.6 → 0.0.8
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/dist/index.js +36 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -52,7 +52,7 @@ async function apiCall(endpoint, params = {}) {
|
|
|
52
52
|
const tools = [
|
|
53
53
|
{
|
|
54
54
|
name: "get_test_history",
|
|
55
|
-
description: "Get historical pass/fail/flaky statistics for a specific test. Use this to understand how often a test fails and its overall reliability.",
|
|
55
|
+
description: "Get historical pass/fail/flaky statistics for a specific test. Use this to understand how often a test fails and its overall reliability. Returns health_status (healthy/flaky/broken/disabled/insufficient_data) from the test_health view for AI pre-filtering decisions.",
|
|
56
56
|
inputSchema: {
|
|
57
57
|
type: "object",
|
|
58
58
|
properties: {
|
|
@@ -289,6 +289,38 @@ const tools = [
|
|
|
289
289
|
required: ["spec_file"],
|
|
290
290
|
},
|
|
291
291
|
},
|
|
292
|
+
{
|
|
293
|
+
name: "get_consecutive_failures",
|
|
294
|
+
description: "Get tests that are failing consecutively (broken tests, not flaky). Returns tests where the last 2+ runs have failed, with timing info (last_passed_date, first_failed_date) useful for identifying which merge broke them.",
|
|
295
|
+
inputSchema: {
|
|
296
|
+
type: "object",
|
|
297
|
+
properties: {
|
|
298
|
+
project_id: {
|
|
299
|
+
type: "number",
|
|
300
|
+
description: "Project ID to filter by (optional)",
|
|
301
|
+
},
|
|
302
|
+
version: {
|
|
303
|
+
type: "string",
|
|
304
|
+
description: "Version to filter by (e.g., '12.1.0'). If not provided, uses latest version.",
|
|
305
|
+
},
|
|
306
|
+
days: {
|
|
307
|
+
type: "number",
|
|
308
|
+
description: "Days to look back (default: 10)",
|
|
309
|
+
default: 10,
|
|
310
|
+
},
|
|
311
|
+
min_consecutive_failures: {
|
|
312
|
+
type: "number",
|
|
313
|
+
description: "Minimum number of consecutive failures to include (default: 2)",
|
|
314
|
+
default: 2,
|
|
315
|
+
},
|
|
316
|
+
limit: {
|
|
317
|
+
type: "number",
|
|
318
|
+
description: "Maximum results to return (default: 50)",
|
|
319
|
+
default: 50,
|
|
320
|
+
},
|
|
321
|
+
},
|
|
322
|
+
},
|
|
323
|
+
},
|
|
292
324
|
];
|
|
293
325
|
// Create the server
|
|
294
326
|
const server = new Server({
|
|
@@ -333,6 +365,9 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
333
365
|
case "get_failure_screenshots":
|
|
334
366
|
result = await apiCall("/tests/failure-screenshots", args);
|
|
335
367
|
break;
|
|
368
|
+
case "get_consecutive_failures":
|
|
369
|
+
result = await apiCall("/tests/consecutive-failures", args);
|
|
370
|
+
break;
|
|
336
371
|
default:
|
|
337
372
|
throw new Error(`Unknown tool: ${name}`);
|
|
338
373
|
}
|