fmea-api-mcp-server 1.1.13 → 1.1.14

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 CHANGED
@@ -28,7 +28,7 @@ class ApiDocsServer {
28
28
  constructor() {
29
29
  this.server = new Server({
30
30
  name: "api-docs-mcp",
31
- version: "1.1.13",
31
+ version: "1.1.14",
32
32
  }, {
33
33
  capabilities: {
34
34
  resources: {},
package/dist/synonyms.js CHANGED
@@ -14,7 +14,8 @@ export const RESOURCE_ALIASES = {
14
14
  'division': ['organization', 'org', 'department', 'group', 'sector', 'unit'],
15
15
  'knowledge': ['knowledge', 'knowledge base', 'category'], // [R17] New Resource Support + Category Mapping
16
16
  'project': ['workspace', 'repo', 'application', 'app'], // [R13] Removed 'system' to avoid conflict
17
- 'system': ['system', 'health', 'status'], // [R13] Added distinct system resource
17
+ 'system': ['system', 'health', 'status', 'health check', 'heartbeat', 'ping', 'deployment'],
18
+ 'context-version': ['context version', 'context-version', 'build version', 'deployment version'], // Dedicated sub-resource
18
19
  'auth': ['security', 'credential', 'token', 'access', 'password'], // [R17] Removed 'login' to avoid conflict with action
19
20
  'oauth': ['third party', 'social login', 'google', 'github', 'oauth'], // [R17] Dedicated OAuth resource
20
21
  // FMEA Domain
@@ -27,12 +28,14 @@ export const RESOURCE_ALIASES = {
27
28
  'user': ['person', 'account', 'profile'], // Removed 'member' from here to avoid conflict
28
29
  'member': ['member', 'project member', 'team'], // [R13] Distinct resource type matching indexer
29
30
  'document': ['file', 'attachment', 'upload', 'paperwork', 'files'], // [R13] Added plural 'files'
30
- 'api-key': ['key', 'secret', 'token', 'credential', 'usage', 'metrics', 'logs', 'stats'], // [R15] Added usage metrics aliases
31
+ 'api-key': ['key', 'secret', 'credential'], // [R15] Cleaned: monitoring keywords (usage/metrics/logs/stats) moved to ACTION_KEYWORDS only
31
32
  'worksheet-template': ['template', 'sheet structure'], // [R18] Keep clean - column/header expansion handled by SYNONYM_GROUPS
32
33
  'action-status-template': ['status template', 'action status'], // [R15]
33
- 'join-request': ['join', 'invite', 'add user', 'member request'], // [R16]
34
+ 'join-request': ['join', 'invite', 'add user', 'member request', 'pending', 'join request'], // [R16]
34
35
  'excel': ['excel', 'spreadsheet', 'csv'], // [R16]
35
36
  'synonym': ['synonyms', 'synonym'], // [Fix] Key must match singular resourceType for boosting
37
+ 'fourm': ['4m', 'four m', '4m analysis', 'man machine material environment'], // 4M Analysis
38
+ 'term': ['term', 'terms', 'taxonomy', 'terminology', 'classification', 'glossary'], // Term tree management
36
39
  };
37
40
  export const SYNONYM_GROUPS = {
38
41
  // Read / Retrieve
@@ -20,7 +20,10 @@ export class ScoreCalculator {
20
20
  'knowledge': ['category'],
21
21
  'category': ['knowledge'],
22
22
  'oauth': ['auth'],
23
- 'auth': ['oauth']
23
+ 'auth': ['oauth'],
24
+ 'context-version': ['system'],
25
+ 'system': ['context-version'],
26
+ 'join-request': ['project', 'user', 'member']
24
27
  // Note: Inverse is NOT necessarily true (searching for 'document' shouldn't show 'project' root unless necessary, but let's be strict for now)
25
28
  };
26
29
  /**
@@ -25,7 +25,15 @@
25
25
  "default": {
26
26
  "description": "default response",
27
27
  "content": {
28
- "application/json": {}
28
+ "application/json": {
29
+ "schema": {
30
+ "type": "array",
31
+ "items": {
32
+ "type": "string",
33
+ "description": "(unresolved: BlockDiagramDTO)"
34
+ }
35
+ }
36
+ }
29
37
  }
30
38
  }
31
39
  }
@@ -81,7 +89,15 @@
81
89
  "default": {
82
90
  "description": "default response",
83
91
  "content": {
84
- "application/json": {}
92
+ "application/json": {
93
+ "schema": {
94
+ "type": "array",
95
+ "items": {
96
+ "type": "string",
97
+ "description": "(unresolved: BlockDiagramSearchResultDTO)"
98
+ }
99
+ }
100
+ }
85
101
  }
86
102
  }
87
103
  }
@@ -116,7 +132,12 @@
116
132
  "default": {
117
133
  "description": "default response",
118
134
  "content": {
119
- "application/json": {}
135
+ "application/json": {
136
+ "schema": {
137
+ "type": "string",
138
+ "description": "(unresolved: BlockNodeDTO)"
139
+ }
140
+ }
120
141
  }
121
142
  }
122
143
  }
@@ -36,7 +36,28 @@
36
36
  "default": {
37
37
  "description": "default response",
38
38
  "content": {
39
- "application/json": {}
39
+ "application/json": {
40
+ "schema": {
41
+ "type": "array",
42
+ "items": {
43
+ "type": "object",
44
+ "properties": {
45
+ "id": {
46
+ "type": "integer"
47
+ },
48
+ "no": {
49
+ "type": "integer"
50
+ },
51
+ "name": {
52
+ "type": "string"
53
+ },
54
+ "code": {
55
+ "type": "string"
56
+ }
57
+ }
58
+ }
59
+ }
60
+ }
40
61
  }
41
62
  }
42
63
  }
@@ -92,7 +113,23 @@
92
113
  "default": {
93
114
  "description": "default response",
94
115
  "content": {
95
- "application/json": {}
116
+ "application/json": {
117
+ "schema": {
118
+ "type": "object",
119
+ "properties": {
120
+ "id": {
121
+ "type": "integer"
122
+ },
123
+ "authorizedDivisions": {
124
+ "type": "array",
125
+ "items": {
126
+ "type": "string",
127
+ "description": "(unresolved: Division)"
128
+ }
129
+ }
130
+ }
131
+ }
132
+ }
96
133
  }
97
134
  }
98
135
  }
@@ -109,7 +146,28 @@
109
146
  "default": {
110
147
  "description": "default response",
111
148
  "content": {
112
- "application/json": {}
149
+ "application/json": {
150
+ "schema": {
151
+ "type": "array",
152
+ "items": {
153
+ "type": "object",
154
+ "properties": {
155
+ "id": {
156
+ "type": "integer"
157
+ },
158
+ "no": {
159
+ "type": "integer"
160
+ },
161
+ "name": {
162
+ "type": "string"
163
+ },
164
+ "code": {
165
+ "type": "string"
166
+ }
167
+ }
168
+ }
169
+ }
170
+ }
113
171
  }
114
172
  }
115
173
  }
@@ -41,7 +41,15 @@
41
41
  "default": {
42
42
  "description": "default response",
43
43
  "content": {
44
- "application/json": {}
44
+ "application/json": {
45
+ "schema": {
46
+ "type": "array",
47
+ "items": {
48
+ "type": "string",
49
+ "description": "(unresolved: FailureMode)"
50
+ }
51
+ }
52
+ }
45
53
  }
46
54
  }
47
55
  }
@@ -206,7 +206,43 @@
206
206
  "default": {
207
207
  "description": "default response",
208
208
  "content": {
209
- "application/json": {}
209
+ "application/json": {
210
+ "schema": {
211
+ "type": "object",
212
+ "properties": {
213
+ "id": {
214
+ "type": "integer",
215
+ "format": "int64"
216
+ },
217
+ "categoryId": {
218
+ "type": "integer",
219
+ "format": "int64"
220
+ },
221
+ "item": {
222
+ "type": "string"
223
+ },
224
+ "function": {
225
+ "type": "string"
226
+ },
227
+ "designCause": {
228
+ "type": "string"
229
+ },
230
+ "processCause": {
231
+ "type": "string"
232
+ },
233
+ "stress": {
234
+ "type": "string"
235
+ },
236
+ "failureMode": {
237
+ "type": "string"
238
+ },
239
+ "createdAt": {
240
+ "type": "string",
241
+ "format": "date-time"
242
+ }
243
+ }
244
+ }
245
+ }
210
246
  }
211
247
  }
212
248
  }
@@ -314,7 +350,46 @@
314
350
  "default": {
315
351
  "description": "default response",
316
352
  "content": {
317
- "application/json": {}
353
+ "application/json": {
354
+ "schema": {
355
+ "type": "array",
356
+ "items": {
357
+ "type": "object",
358
+ "properties": {
359
+ "id": {
360
+ "type": "integer",
361
+ "format": "int64"
362
+ },
363
+ "categoryId": {
364
+ "type": "integer",
365
+ "format": "int64"
366
+ },
367
+ "item": {
368
+ "type": "string"
369
+ },
370
+ "function": {
371
+ "type": "string"
372
+ },
373
+ "designCause": {
374
+ "type": "string"
375
+ },
376
+ "processCause": {
377
+ "type": "string"
378
+ },
379
+ "stress": {
380
+ "type": "string"
381
+ },
382
+ "failureMode": {
383
+ "type": "string"
384
+ },
385
+ "createdAt": {
386
+ "type": "string",
387
+ "format": "date-time"
388
+ }
389
+ }
390
+ }
391
+ }
392
+ }
318
393
  }
319
394
  }
320
395
  }
@@ -49,7 +49,59 @@
49
49
  "default": {
50
50
  "description": "default response",
51
51
  "content": {
52
- "application/json": {}
52
+ "application/json": {
53
+ "schema": {
54
+ "type": "object",
55
+ "properties": {
56
+ "columnHeaders": {
57
+ "type": "array",
58
+ "items": {
59
+ "type": "object",
60
+ "properties": {
61
+ "id": {
62
+ "type": "integer"
63
+ },
64
+ "key": {
65
+ "type": "string"
66
+ },
67
+ "title": {
68
+ "type": "string"
69
+ },
70
+ "type": {
71
+ "type": "string"
72
+ },
73
+ "readOnly": {
74
+ "type": "string"
75
+ },
76
+ "width": {
77
+ "type": "integer"
78
+ },
79
+ "valign": {
80
+ "type": "integer"
81
+ },
82
+ "halign": {
83
+ "type": "integer"
84
+ },
85
+ "children": {
86
+ "type": "array",
87
+ "items": {
88
+ "type": "object",
89
+ "description": "(circular: ColumnHeader)"
90
+ }
91
+ }
92
+ }
93
+ }
94
+ },
95
+ "rows": {
96
+ "type": "array",
97
+ "items": {
98
+ "type": "string",
99
+ "description": "(unresolved: RecommendationRowDTO)"
100
+ }
101
+ }
102
+ }
103
+ }
104
+ }
53
105
  }
54
106
  }
55
107
  }
@@ -25,7 +25,25 @@
25
25
  "default": {
26
26
  "description": "default response",
27
27
  "content": {
28
- "application/json": {}
28
+ "application/json": {
29
+ "schema": {
30
+ "type": "array",
31
+ "items": {
32
+ "type": "object",
33
+ "properties": {
34
+ "id": {
35
+ "type": "integer"
36
+ },
37
+ "serial": {
38
+ "type": "integer"
39
+ },
40
+ "value": {
41
+ "type": "string"
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
29
47
  }
30
48
  }
31
49
  }
@@ -64,7 +82,25 @@
64
82
  "default": {
65
83
  "description": "default response",
66
84
  "content": {
67
- "application/json": {}
85
+ "application/json": {
86
+ "schema": {
87
+ "type": "array",
88
+ "items": {
89
+ "type": "object",
90
+ "properties": {
91
+ "id": {
92
+ "type": "integer"
93
+ },
94
+ "serial": {
95
+ "type": "integer"
96
+ },
97
+ "value": {
98
+ "type": "string"
99
+ }
100
+ }
101
+ }
102
+ }
103
+ }
68
104
  }
69
105
  }
70
106
  }
@@ -133,7 +169,25 @@
133
169
  "default": {
134
170
  "description": "default response",
135
171
  "content": {
136
- "application/json": {}
172
+ "application/json": {
173
+ "schema": {
174
+ "type": "array",
175
+ "items": {
176
+ "type": "object",
177
+ "properties": {
178
+ "id": {
179
+ "type": "integer"
180
+ },
181
+ "serial": {
182
+ "type": "integer"
183
+ },
184
+ "value": {
185
+ "type": "string"
186
+ }
187
+ }
188
+ }
189
+ }
190
+ }
137
191
  }
138
192
  }
139
193
  }
@@ -33,7 +33,37 @@
33
33
  "default": {
34
34
  "description": "default response",
35
35
  "content": {
36
- "application/json": {}
36
+ "application/json": {
37
+ "schema": {
38
+ "type": "array",
39
+ "items": {
40
+ "type": "object",
41
+ "properties": {
42
+ "id": {
43
+ "type": "string"
44
+ },
45
+ "parentId": {
46
+ "type": "string"
47
+ },
48
+ "title": {
49
+ "type": "string"
50
+ },
51
+ "typeCode": {
52
+ "type": "integer"
53
+ },
54
+ "serial": {
55
+ "type": "integer"
56
+ },
57
+ "depth": {
58
+ "type": "integer"
59
+ },
60
+ "order": {
61
+ "type": "integer"
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
37
67
  }
38
68
  }
39
69
  }
@@ -76,7 +106,34 @@
76
106
  "default": {
77
107
  "description": "default response",
78
108
  "content": {
79
- "application/json": {}
109
+ "application/json": {
110
+ "schema": {
111
+ "type": "object",
112
+ "properties": {
113
+ "id": {
114
+ "type": "string"
115
+ },
116
+ "parentId": {
117
+ "type": "string"
118
+ },
119
+ "title": {
120
+ "type": "string"
121
+ },
122
+ "typeCode": {
123
+ "type": "integer"
124
+ },
125
+ "serial": {
126
+ "type": "integer"
127
+ },
128
+ "depth": {
129
+ "type": "integer"
130
+ },
131
+ "order": {
132
+ "type": "integer"
133
+ }
134
+ }
135
+ }
136
+ }
80
137
  }
81
138
  }
82
139
  }
@@ -181,7 +238,37 @@
181
238
  "default": {
182
239
  "description": "default response",
183
240
  "content": {
184
- "application/json": {}
241
+ "application/json": {
242
+ "schema": {
243
+ "type": "array",
244
+ "items": {
245
+ "type": "object",
246
+ "properties": {
247
+ "id": {
248
+ "type": "string"
249
+ },
250
+ "parentId": {
251
+ "type": "string"
252
+ },
253
+ "title": {
254
+ "type": "string"
255
+ },
256
+ "typeCode": {
257
+ "type": "integer"
258
+ },
259
+ "serial": {
260
+ "type": "integer"
261
+ },
262
+ "depth": {
263
+ "type": "integer"
264
+ },
265
+ "order": {
266
+ "type": "integer"
267
+ }
268
+ }
269
+ }
270
+ }
271
+ }
185
272
  }
186
273
  }
187
274
  }
@@ -37,7 +37,65 @@
37
37
  "method": "GET",
38
38
  "operationId": "findById",
39
39
  "summary": "Get User Details (Admin)",
40
- "description": "Retrieves comprehensive details for any user by ID. Returns full profile, role, and status information. Use this for admin auditing, user lookup, or support troubleshooting."
40
+ "description": "Retrieves comprehensive details for any user by ID. Returns full profile, role, and status information. Use this for admin auditing, user lookup, or support troubleshooting.",
41
+ "responses": {
42
+ "default": {
43
+ "description": "default response",
44
+ "content": {
45
+ "application/json": {
46
+ "schema": {
47
+ "type": "object",
48
+ "properties": {
49
+ "id": {
50
+ "type": "string"
51
+ },
52
+ "name": {
53
+ "type": "string"
54
+ },
55
+ "englishName": {
56
+ "type": "string"
57
+ },
58
+ "email": {
59
+ "type": "string"
60
+ },
61
+ "department": {
62
+ "type": "string"
63
+ },
64
+ "division": {
65
+ "type": "string",
66
+ "description": "(unresolved: Division)"
67
+ },
68
+ "userLevel": {
69
+ "type": "string",
70
+ "description": "(unresolved: UserLevel)"
71
+ },
72
+ "creationDate": {
73
+ "type": "string",
74
+ "format": "date-time"
75
+ },
76
+ "lastPasswordChangeDate": {
77
+ "type": "string",
78
+ "format": "date-time"
79
+ },
80
+ "useAccessibleDivisions": {
81
+ "type": "integer"
82
+ },
83
+ "accessibleDivisions": {
84
+ "type": "array",
85
+ "items": {
86
+ "type": "string",
87
+ "description": "(unresolved: Division)"
88
+ }
89
+ },
90
+ "encryptedPassword": {
91
+ "type": "string"
92
+ }
93
+ }
94
+ }
95
+ }
96
+ }
97
+ }
98
+ }
41
99
  },
42
100
  {
43
101
  "path": "/api/v1/admin/users",
@@ -18,7 +18,57 @@
18
18
  "default": {
19
19
  "description": "default response",
20
20
  "content": {
21
- "application/json": {}
21
+ "application/json": {
22
+ "schema": {
23
+ "type": "object",
24
+ "properties": {
25
+ "id": {
26
+ "type": "string"
27
+ },
28
+ "name": {
29
+ "type": "string"
30
+ },
31
+ "englishName": {
32
+ "type": "string"
33
+ },
34
+ "email": {
35
+ "type": "string"
36
+ },
37
+ "department": {
38
+ "type": "string"
39
+ },
40
+ "division": {
41
+ "type": "string",
42
+ "description": "(unresolved: Division)"
43
+ },
44
+ "userLevel": {
45
+ "type": "string",
46
+ "description": "(unresolved: UserLevel)"
47
+ },
48
+ "creationDate": {
49
+ "type": "string",
50
+ "format": "date-time"
51
+ },
52
+ "lastPasswordChangeDate": {
53
+ "type": "string",
54
+ "format": "date-time"
55
+ },
56
+ "useAccessibleDivisions": {
57
+ "type": "integer"
58
+ },
59
+ "accessibleDivisions": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "string",
63
+ "description": "(unresolved: Division)"
64
+ }
65
+ },
66
+ "encryptedPassword": {
67
+ "type": "string"
68
+ }
69
+ }
70
+ }
71
+ }
22
72
  }
23
73
  }
24
74
  }