fmea-api-mcp-server 1.1.35 → 1.1.37

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.
@@ -8,7 +8,7 @@
8
8
  "method": "GET",
9
9
  "operationId": "searchFailureModes",
10
10
  "summary": "Search failure modes globally",
11
- "description": "Searches failure modes across all projects in the system. Requires the 'q' parameter for keyword matching against failure mode names. Supports scope filtering: 'my' (default) returns failure modes from the current user's projects, 'division' filters by division ID, and 'all' returns from all projects. Returns paged results with project summary information.",
11
+ "description": "Searches failure modes across all projects in the system. Supports keyword search (q), scope filtering (my/division/all), project-level filters (projectId, projectName, fmeaType, status), and sorting (sort=name,asc or sort=rpn,desc). Returns paged results with project summary information and S/O/D cause data.",
12
12
  "tags": [
13
13
  "Search"
14
14
  ],
@@ -24,7 +24,7 @@
24
24
  {
25
25
  "name": "scope",
26
26
  "in": "query",
27
- "description": "Search scope: 'my' (default, current user's projects), 'division' (filter by divisionId), 'all' (all projects)",
27
+ "description": "Search scope: 'my' (default), 'division', 'all'",
28
28
  "schema": {
29
29
  "type": "string"
30
30
  }
@@ -32,7 +32,39 @@
32
32
  {
33
33
  "name": "divisionId",
34
34
  "in": "query",
35
- "description": "Division ID (required when scope is 'division')",
35
+ "description": "Division ID (required when scope='division')",
36
+ "schema": {
37
+ "type": "string"
38
+ }
39
+ },
40
+ {
41
+ "name": "projectName",
42
+ "in": "query",
43
+ "description": "Project name filter (partial match)",
44
+ "schema": {
45
+ "type": "string"
46
+ }
47
+ },
48
+ {
49
+ "name": "fmeaType",
50
+ "in": "query",
51
+ "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
52
+ "schema": {
53
+ "type": "string"
54
+ }
55
+ },
56
+ {
57
+ "name": "status",
58
+ "in": "query",
59
+ "description": "Project status filter: In-Progress|Completed|Review|etc.",
60
+ "schema": {
61
+ "type": "string"
62
+ }
63
+ },
64
+ {
65
+ "name": "sort",
66
+ "in": "query",
67
+ "description": "Sort: 'name,asc', 'name,desc', 'rpn,asc', 'rpn,desc'. Default: name,asc",
36
68
  "schema": {
37
69
  "type": "string"
38
70
  }
@@ -56,6 +88,17 @@
56
88
  "default": 50,
57
89
  "format": "int32"
58
90
  }
91
+ },
92
+ {
93
+ "name": "projectId",
94
+ "in": "query",
95
+ "description": "Project ID filter (repeatable for multiple projects)",
96
+ "schema": {
97
+ "type": "array",
98
+ "items": {
99
+ "type": "string"
100
+ }
101
+ }
59
102
  }
60
103
  ],
61
104
  "requestBody": null,
@@ -122,6 +165,47 @@
122
165
  "type": "string"
123
166
  }
124
167
  }
168
+ },
169
+ "maxSeverity": {
170
+ "type": "integer"
171
+ },
172
+ "maxRpn": {
173
+ "type": "integer"
174
+ },
175
+ "causes": {
176
+ "type": "array",
177
+ "items": {
178
+ "type": "object",
179
+ "properties": {
180
+ "text": {
181
+ "type": "string"
182
+ },
183
+ "severity": {
184
+ "type": "integer"
185
+ },
186
+ "occurrence": {
187
+ "type": "integer"
188
+ },
189
+ "detection": {
190
+ "type": "integer"
191
+ },
192
+ "rpn": {
193
+ "type": "integer"
194
+ },
195
+ "severityAfter": {
196
+ "type": "integer"
197
+ },
198
+ "occurrenceAfter": {
199
+ "type": "integer"
200
+ },
201
+ "detectionAfter": {
202
+ "type": "integer"
203
+ },
204
+ "rpnAfter": {
205
+ "type": "integer"
206
+ }
207
+ }
208
+ }
125
209
  }
126
210
  }
127
211
  }
@@ -145,6 +229,525 @@
145
229
  }
146
230
  }
147
231
  }
232
+ },
233
+ {
234
+ "path": "/api/v2/search/projects",
235
+ "method": "GET",
236
+ "operationId": "searchProjects",
237
+ "summary": "Search projects globally",
238
+ "description": "Searches projects across the system with multiple filter options. Supports keyword search (q), scope filtering (my/division/all), FMEA type, status, date ranges, additional info filters, and more. When 'groupBy' is specified, returns grouped results instead of paged results. Additional info filters use repeated parameters (aiId, aiKeyword) for AND intersection.",
239
+ "tags": [
240
+ "Search"
241
+ ],
242
+ "parameters": [
243
+ {
244
+ "name": "q",
245
+ "in": "query",
246
+ "description": "Search keyword for project title (max 100 characters)",
247
+ "schema": {
248
+ "type": "string"
249
+ }
250
+ },
251
+ {
252
+ "name": "scope",
253
+ "in": "query",
254
+ "description": "Search scope: 'my' (default), 'division', 'all'",
255
+ "schema": {
256
+ "type": "string"
257
+ }
258
+ },
259
+ {
260
+ "name": "divisionId",
261
+ "in": "query",
262
+ "description": "Division ID (required when scope='division')",
263
+ "schema": {
264
+ "type": "string"
265
+ }
266
+ },
267
+ {
268
+ "name": "leader",
269
+ "in": "query",
270
+ "description": "Leader name filter (partial match)",
271
+ "schema": {
272
+ "type": "string"
273
+ }
274
+ },
275
+ {
276
+ "name": "fmeaType",
277
+ "in": "query",
278
+ "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
279
+ "schema": {
280
+ "type": "string"
281
+ }
282
+ },
283
+ {
284
+ "name": "status",
285
+ "in": "query",
286
+ "description": "Project status filter: In-Progress|Completed|Review",
287
+ "schema": {
288
+ "type": "string"
289
+ }
290
+ },
291
+ {
292
+ "name": "item",
293
+ "in": "query",
294
+ "description": "Item/kind filter (partial match)",
295
+ "schema": {
296
+ "type": "string"
297
+ }
298
+ },
299
+ {
300
+ "name": "model",
301
+ "in": "query",
302
+ "description": "Model/project number filter (partial match)",
303
+ "schema": {
304
+ "type": "string"
305
+ }
306
+ },
307
+ {
308
+ "name": "dueDateFrom",
309
+ "in": "query",
310
+ "description": "Due date range start (YYYYMMDD format)",
311
+ "schema": {
312
+ "type": "string"
313
+ }
314
+ },
315
+ {
316
+ "name": "dueDateTo",
317
+ "in": "query",
318
+ "description": "Due date range end (YYYYMMDD format)",
319
+ "schema": {
320
+ "type": "string"
321
+ }
322
+ },
323
+ {
324
+ "name": "completedDateFrom",
325
+ "in": "query",
326
+ "description": "Completed date range start (YYYYMMDD format)",
327
+ "schema": {
328
+ "type": "string"
329
+ }
330
+ },
331
+ {
332
+ "name": "completedDateTo",
333
+ "in": "query",
334
+ "description": "Completed date range end (YYYYMMDD format)",
335
+ "schema": {
336
+ "type": "string"
337
+ }
338
+ },
339
+ {
340
+ "name": "worksheetTemplateId",
341
+ "in": "query",
342
+ "description": "Worksheet template ID filter (exact match)",
343
+ "schema": {
344
+ "type": "string"
345
+ }
346
+ },
347
+ {
348
+ "name": "evaluationCriteria",
349
+ "in": "query",
350
+ "description": "Evaluation criteria filter (exact match)",
351
+ "schema": {
352
+ "type": "string"
353
+ }
354
+ },
355
+ {
356
+ "name": "description",
357
+ "in": "query",
358
+ "description": "Description filter (partial match)",
359
+ "schema": {
360
+ "type": "string"
361
+ }
362
+ },
363
+ {
364
+ "name": "groupBy",
365
+ "in": "query",
366
+ "description": "Group by: 'division' or 'item'. When specified, returns grouped response without paging.",
367
+ "schema": {
368
+ "type": "string"
369
+ }
370
+ },
371
+ {
372
+ "name": "page",
373
+ "in": "query",
374
+ "description": "Page number (0 = all, default: 1)",
375
+ "schema": {
376
+ "type": "integer",
377
+ "default": 1,
378
+ "format": "int32"
379
+ }
380
+ },
381
+ {
382
+ "name": "size",
383
+ "in": "query",
384
+ "description": "Page size (default: 50)",
385
+ "schema": {
386
+ "type": "integer",
387
+ "default": 50,
388
+ "format": "int32"
389
+ }
390
+ },
391
+ {
392
+ "name": "sort",
393
+ "in": "query",
394
+ "description": "Sort field (default: project ID desc)",
395
+ "schema": {
396
+ "type": "string"
397
+ }
398
+ },
399
+ {
400
+ "name": "aiId",
401
+ "in": "query",
402
+ "description": "Additional info ID list (repeated parameter for AND intersection)",
403
+ "schema": {
404
+ "type": "array",
405
+ "items": {
406
+ "type": "string"
407
+ }
408
+ }
409
+ },
410
+ {
411
+ "name": "aiKeyword",
412
+ "in": "query",
413
+ "description": "Additional info keyword list (paired with aiId)",
414
+ "schema": {
415
+ "type": "array",
416
+ "items": {
417
+ "type": "string"
418
+ }
419
+ }
420
+ },
421
+ {
422
+ "name": "aiStartDate",
423
+ "in": "query",
424
+ "description": "Additional info start date list (paired with aiId, YYYYMMDD format)",
425
+ "schema": {
426
+ "type": "array",
427
+ "items": {
428
+ "type": "string"
429
+ }
430
+ }
431
+ },
432
+ {
433
+ "name": "aiEndDate",
434
+ "in": "query",
435
+ "description": "Additional info end date list (paired with aiId, YYYYMMDD format)",
436
+ "schema": {
437
+ "type": "array",
438
+ "items": {
439
+ "type": "string"
440
+ }
441
+ }
442
+ }
443
+ ],
444
+ "requestBody": null,
445
+ "responses": {
446
+ "default": {
447
+ "description": "default response",
448
+ "content": {
449
+ "application/json": {
450
+ "schema": {
451
+ "type": "object",
452
+ "properties": {
453
+ "groups": {
454
+ "type": "array",
455
+ "items": {
456
+ "type": "object",
457
+ "properties": {
458
+ "key": {
459
+ "type": "string"
460
+ },
461
+ "label": {
462
+ "type": "string"
463
+ },
464
+ "projectCount": {
465
+ "type": "integer"
466
+ },
467
+ "projects": {
468
+ "type": "array",
469
+ "items": {
470
+ "type": "object",
471
+ "properties": {
472
+ "id": {
473
+ "type": "string"
474
+ },
475
+ "name": {
476
+ "type": "string"
477
+ },
478
+ "type": {
479
+ "type": "string",
480
+ "enum": [
481
+ "DESIGN",
482
+ "PROCESS",
483
+ "EQUIPMENT",
484
+ "FA",
485
+ "FTA",
486
+ "CPLAN"
487
+ ]
488
+ },
489
+ "master": {
490
+ "type": "boolean"
491
+ },
492
+ "item": {
493
+ "type": "string"
494
+ },
495
+ "model": {
496
+ "type": "string"
497
+ },
498
+ "description": {
499
+ "type": "string"
500
+ },
501
+ "leaderName": {
502
+ "type": "string"
503
+ },
504
+ "startDate": {
505
+ "type": "string"
506
+ },
507
+ "dueDate": {
508
+ "type": "string"
509
+ },
510
+ "completedDate": {
511
+ "type": "string"
512
+ },
513
+ "status": {
514
+ "type": "string",
515
+ "enum": [
516
+ "IN_PROGRESS",
517
+ "REFUSED",
518
+ "SELF_COMPLETED"
519
+ ]
520
+ },
521
+ "divisionId": {
522
+ "type": "string"
523
+ },
524
+ "divisionName": {
525
+ "type": "string"
526
+ },
527
+ "worksheetTemplateName": {
528
+ "type": "string"
529
+ },
530
+ "evaluationCriteria": {
531
+ "type": "string"
532
+ },
533
+ "projectClass": {
534
+ "type": "string"
535
+ }
536
+ }
537
+ }
538
+ }
539
+ }
540
+ }
541
+ },
542
+ "totalGroups": {
543
+ "type": "integer"
544
+ },
545
+ "totalProjects": {
546
+ "type": "integer"
547
+ }
548
+ }
549
+ }
550
+ }
551
+ }
552
+ }
553
+ }
554
+ },
555
+ {
556
+ "path": "/api/v2/search/projects/export",
557
+ "method": "GET",
558
+ "operationId": "exportProjects",
559
+ "summary": "Export project search results as Excel",
560
+ "description": "Exports project search results as an Excel (.xlsx) file. Returns a download URI (FileDownloadResponseDTO) for the generated file. Supports the same filter parameters as the search endpoint (excluding groupBy, page, size). Download the file using the returned URI via GET /api/v1/files/{uuid}.",
561
+ "tags": [
562
+ "Search"
563
+ ],
564
+ "parameters": [
565
+ {
566
+ "name": "q",
567
+ "in": "query",
568
+ "description": "Search keyword for project title (max 100 characters)",
569
+ "schema": {
570
+ "type": "string"
571
+ }
572
+ },
573
+ {
574
+ "name": "scope",
575
+ "in": "query",
576
+ "description": "Search scope: 'my' (default), 'division', 'all'",
577
+ "schema": {
578
+ "type": "string"
579
+ }
580
+ },
581
+ {
582
+ "name": "divisionId",
583
+ "in": "query",
584
+ "description": "Division ID (required when scope='division')",
585
+ "schema": {
586
+ "type": "string"
587
+ }
588
+ },
589
+ {
590
+ "name": "leader",
591
+ "in": "query",
592
+ "description": "Leader name filter (partial match)",
593
+ "schema": {
594
+ "type": "string"
595
+ }
596
+ },
597
+ {
598
+ "name": "fmeaType",
599
+ "in": "query",
600
+ "description": "FMEA type filter: Design|Process|Equipment|FA|FTA|CPlan",
601
+ "schema": {
602
+ "type": "string"
603
+ }
604
+ },
605
+ {
606
+ "name": "status",
607
+ "in": "query",
608
+ "description": "Project status filter: In-Progress|Completed|Review",
609
+ "schema": {
610
+ "type": "string"
611
+ }
612
+ },
613
+ {
614
+ "name": "item",
615
+ "in": "query",
616
+ "description": "Item/kind filter (partial match)",
617
+ "schema": {
618
+ "type": "string"
619
+ }
620
+ },
621
+ {
622
+ "name": "model",
623
+ "in": "query",
624
+ "description": "Model/project number filter (partial match)",
625
+ "schema": {
626
+ "type": "string"
627
+ }
628
+ },
629
+ {
630
+ "name": "dueDateFrom",
631
+ "in": "query",
632
+ "description": "Due date range start (YYYYMMDD)",
633
+ "schema": {
634
+ "type": "string"
635
+ }
636
+ },
637
+ {
638
+ "name": "dueDateTo",
639
+ "in": "query",
640
+ "description": "Due date range end (YYYYMMDD)",
641
+ "schema": {
642
+ "type": "string"
643
+ }
644
+ },
645
+ {
646
+ "name": "completedDateFrom",
647
+ "in": "query",
648
+ "description": "Completed date range start (YYYYMMDD)",
649
+ "schema": {
650
+ "type": "string"
651
+ }
652
+ },
653
+ {
654
+ "name": "completedDateTo",
655
+ "in": "query",
656
+ "description": "Completed date range end (YYYYMMDD)",
657
+ "schema": {
658
+ "type": "string"
659
+ }
660
+ },
661
+ {
662
+ "name": "worksheetTemplateId",
663
+ "in": "query",
664
+ "description": "Worksheet template ID filter",
665
+ "schema": {
666
+ "type": "string"
667
+ }
668
+ },
669
+ {
670
+ "name": "evaluationCriteria",
671
+ "in": "query",
672
+ "description": "Evaluation criteria filter",
673
+ "schema": {
674
+ "type": "string"
675
+ }
676
+ },
677
+ {
678
+ "name": "description",
679
+ "in": "query",
680
+ "description": "Description filter (partial match)",
681
+ "schema": {
682
+ "type": "string"
683
+ }
684
+ },
685
+ {
686
+ "name": "aiId",
687
+ "in": "query",
688
+ "description": "Additional info ID list (repeated for AND intersection)",
689
+ "schema": {
690
+ "type": "array",
691
+ "items": {
692
+ "type": "string"
693
+ }
694
+ }
695
+ },
696
+ {
697
+ "name": "aiKeyword",
698
+ "in": "query",
699
+ "description": "Additional info keyword list (paired with aiId)",
700
+ "schema": {
701
+ "type": "array",
702
+ "items": {
703
+ "type": "string"
704
+ }
705
+ }
706
+ },
707
+ {
708
+ "name": "aiStartDate",
709
+ "in": "query",
710
+ "description": "Additional info start date list (YYYYMMDD)",
711
+ "schema": {
712
+ "type": "array",
713
+ "items": {
714
+ "type": "string"
715
+ }
716
+ }
717
+ },
718
+ {
719
+ "name": "aiEndDate",
720
+ "in": "query",
721
+ "description": "Additional info end date list (YYYYMMDD)",
722
+ "schema": {
723
+ "type": "array",
724
+ "items": {
725
+ "type": "string"
726
+ }
727
+ }
728
+ }
729
+ ],
730
+ "requestBody": null,
731
+ "responses": {
732
+ "default": {
733
+ "description": "default response",
734
+ "content": {
735
+ "application/json": {
736
+ "schema": {
737
+ "type": "object",
738
+ "properties": {
739
+ "fileName": {
740
+ "type": "string"
741
+ },
742
+ "downloadUri": {
743
+ "type": "string"
744
+ }
745
+ }
746
+ }
747
+ }
748
+ }
749
+ }
750
+ }
148
751
  }
149
752
  ]
150
753
  }
@@ -38,7 +38,7 @@
38
38
  {
39
39
  "path": "/api/v2/template/action-status",
40
40
  "method": "POST",
41
- "operationId": "create_4",
41
+ "operationId": "create_5",
42
42
  "summary": "Create action status template",
43
43
  "description": "Creates a new action status template with a custom title. This endpoint is used to define additional states for improvement actions beyond the default options (e.g., 'Under Review', 'On Hold', 'Cancelled'). Requires ADMIN user level privileges. The request body must contain a 'title' field specifying the status name. Upon successful creation, returns the location URI of the new resource. Use this endpoint when you need to extend the available action status options for your organization's workflow. Synonyms: add action status, create new action state, define status template, add status option.",
44
44
  "tags": [],
@@ -69,7 +69,7 @@
69
69
  {
70
70
  "path": "/api/v2/template/action-status/{id}",
71
71
  "method": "GET",
72
- "operationId": "getById",
72
+ "operationId": "getById_1",
73
73
  "summary": "Get action status template by ID",
74
74
  "description": "Retrieves a specific action status template by its unique identifier. Use this endpoint when you need to view detailed information about a particular action status, validate an ID reference, or fetch the title of a specific status. Returns 404 Not Found if the specified ID does not exist. The response includes the template ID and title fields. This is useful for displaying current status information or verifying status existence before updates. Synonyms: get action status by ID, fetch specific action state, retrieve status template details, find action status.",
75
75
  "tags": [],
@@ -107,7 +107,7 @@
107
107
  {
108
108
  "path": "/api/v2/template/action-status/{id}",
109
109
  "method": "PUT",
110
- "operationId": "update_3",
110
+ "operationId": "update_4",
111
111
  "summary": "Update action status template",
112
112
  "description": "Updates an existing action status template's information. This endpoint allows administrators to modify the title of an action status template. Use this endpoint when you need to rename a status, correct typos, or standardize status terminology. Requires ADMIN user level privileges. The request body must contain a 'title' field with the new status name. The path parameter specifies the ID of the status template to update. Returns the updated DTO in the response. Synonyms: modify action status, edit action state, change status title, rename action status.",
113
113
  "tags": [],
@@ -147,7 +147,7 @@
147
147
  {
148
148
  "path": "/api/v2/template/action-status/{id}",
149
149
  "method": "DELETE",
150
- "operationId": "delete_3",
150
+ "operationId": "delete_4",
151
151
  "summary": "Delete action status template",
152
152
  "description": "Permanently removes an action status template from the system. This endpoint is used to delete obsolete or unused action status options. Requires ADMIN user level privileges. The path parameter specifies the ID of the status template to delete. Use with caution as this operation cannot be undone. Returns 204 No Content on successful deletion. Consider whether any existing actions reference this status before deletion to avoid data integrity issues. Synonyms: remove action status, delete action state, eliminate status template, remove status option.",
153
153
  "tags": [],
@@ -8,7 +8,7 @@
8
8
  "method": "GET",
9
9
  "summary": "Search users",
10
10
  "description": "Returns paged users filtered by search, dept, and level.",
11
- "operationId": "list_9",
11
+ "operationId": "list_10",
12
12
  "tags": [
13
13
  "User"
14
14
  ],