@bbearai/mcp-server 0.3.4 → 0.5.1

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-api.js CHANGED
@@ -227,6 +227,33 @@ const tools = [
227
227
  required: ['test_key', 'title', 'steps', 'expected_result'],
228
228
  },
229
229
  },
230
+ {
231
+ name: 'delete_test_cases',
232
+ description: 'Delete one or more test cases. Supports single delete by ID or test_key, or bulk delete with arrays (max 50). WARNING: cascade-deletes associated test_assignments, test_feedback, and ai_test_runs.',
233
+ inputSchema: {
234
+ type: 'object',
235
+ properties: {
236
+ test_case_id: {
237
+ type: 'string',
238
+ description: 'UUID of a single test case to delete',
239
+ },
240
+ test_key: {
241
+ type: 'string',
242
+ description: 'Delete a single test case by test_key (e.g., TC-001)',
243
+ },
244
+ test_case_ids: {
245
+ type: 'array',
246
+ items: { type: 'string' },
247
+ description: 'Array of test case UUIDs to bulk delete (max 50)',
248
+ },
249
+ test_keys: {
250
+ type: 'array',
251
+ items: { type: 'string' },
252
+ description: 'Array of test_keys to bulk delete (max 50)',
253
+ },
254
+ },
255
+ },
256
+ },
230
257
  {
231
258
  name: 'get_qa_tracks',
232
259
  description: 'Get QA tracks for the project',
@@ -319,6 +346,24 @@ async function handleTool(name, args) {
319
346
  priority: args.priority || 'P2',
320
347
  });
321
348
  break;
349
+ case 'delete_test_cases': {
350
+ const ids = args.test_case_ids || (args.test_case_id ? [args.test_case_id] : undefined);
351
+ const keys = args.test_keys || (args.test_key ? [args.test_key] : undefined);
352
+ if (ids) {
353
+ const params = new URLSearchParams();
354
+ ids.forEach((id) => params.append('ids', id));
355
+ result = await apiRequest(`/test-cases?${params.toString()}`, 'DELETE');
356
+ }
357
+ else if (keys) {
358
+ const params = new URLSearchParams();
359
+ keys.forEach((k) => params.append('keys', k));
360
+ result = await apiRequest(`/test-cases?${params.toString()}`, 'DELETE');
361
+ }
362
+ else {
363
+ result = { error: 'Must provide test_case_id, test_key, test_case_ids, or test_keys' };
364
+ }
365
+ break;
366
+ }
322
367
  case 'get_qa_tracks':
323
368
  result = await apiRequest('/qa-tracks');
324
369
  break;