@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.
Files changed (2) hide show
  1. package/dist/index.js +36 -1
  2. 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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@testledger/mcp",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "description": "MCP server for Test Ledger - analyze flaky tests with Claude Code",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",