swagger-parser-mcp-server 1.0.5 → 1.1.0
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.d.ts +1 -0
- package/dist/index.js +127 -206
- package/dist/index.js.map +1 -1
- package/dist/schemas.d.ts +58 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +32 -0
- package/dist/schemas.js.map +1 -0
- package/dist/tests/edgeCases.test.d.ts +2 -0
- package/dist/tests/edgeCases.test.d.ts.map +1 -0
- package/dist/tests/edgeCases.test.js +364 -0
- package/dist/tests/edgeCases.test.js.map +1 -0
- package/dist/tests/integration.test.d.ts +2 -0
- package/dist/tests/integration.test.d.ts.map +1 -0
- package/dist/tests/integration.test.js +382 -0
- package/dist/tests/integration.test.js.map +1 -0
- package/dist/tests/realWorldValidation.test.d.ts +2 -0
- package/dist/tests/realWorldValidation.test.d.ts.map +1 -0
- package/dist/tests/realWorldValidation.test.js +398 -0
- package/dist/tests/realWorldValidation.test.js.map +1 -0
- package/dist/tests/schemaResolver.test.d.ts +2 -0
- package/dist/tests/schemaResolver.test.d.ts.map +1 -0
- package/dist/tests/schemaResolver.test.js +322 -0
- package/dist/tests/schemaResolver.test.js.map +1 -0
- package/dist/utils/schemaResolver.d.ts +34 -0
- package/dist/utils/schemaResolver.d.ts.map +1 -0
- package/dist/utils/schemaResolver.js +255 -0
- package/dist/utils/schemaResolver.js.map +1 -0
- package/dist/utils/swaggerCache.d.ts +53 -0
- package/dist/utils/swaggerCache.d.ts.map +1 -0
- package/dist/utils/swaggerCache.js +146 -0
- package/dist/utils/swaggerCache.js.map +1 -0
- package/dist/utils/types.d.ts +73 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +20 -0
- package/dist/utils/types.js.map +1 -0
- package/package.json +31 -9
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -1,15 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
1
2
|
// swagger-parser-server.ts
|
|
2
|
-
import { Server } from
|
|
3
|
-
import { StdioServerTransport } from
|
|
4
|
-
import { CallToolRequestSchema, ListToolsRequestSchema
|
|
5
|
-
import
|
|
3
|
+
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
4
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
5
|
+
import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
6
|
+
import { SwaggerCache } from './utils/swaggerCache.js';
|
|
7
|
+
import { SchemaResolver } from './utils/schemaResolver.js';
|
|
8
|
+
import { loadSwaggerSchema, getControllersSchema, getPathsByControllerSchema, getPathDetailsSchema, resolveSchemaSchema, } from './schemas.js';
|
|
6
9
|
class SwaggerParserServer {
|
|
7
10
|
server;
|
|
8
|
-
swaggerCache
|
|
11
|
+
swaggerCache;
|
|
12
|
+
schemaResolver;
|
|
9
13
|
constructor() {
|
|
14
|
+
this.swaggerCache = new SwaggerCache();
|
|
15
|
+
this.schemaResolver = new SchemaResolver({
|
|
16
|
+
maxDepth: 10,
|
|
17
|
+
includeCircularRefs: false, // Prevent stack overflow by default
|
|
18
|
+
circularRefPlaceholder: '[Circular Reference]',
|
|
19
|
+
});
|
|
10
20
|
this.server = new Server({
|
|
11
|
-
name:
|
|
12
|
-
version:
|
|
21
|
+
name: 'swagger-parser-server',
|
|
22
|
+
version: '1.0.0',
|
|
13
23
|
}, {
|
|
14
24
|
capabilities: {
|
|
15
25
|
tools: {},
|
|
@@ -19,93 +29,32 @@ class SwaggerParserServer {
|
|
|
19
29
|
}
|
|
20
30
|
setupHandlers() {
|
|
21
31
|
// 도구 목록 제공
|
|
22
|
-
this.server.setRequestHandler(ListToolsRequestSchema,
|
|
32
|
+
this.server.setRequestHandler(ListToolsRequestSchema, () => ({
|
|
23
33
|
tools: [
|
|
24
34
|
{
|
|
25
|
-
name:
|
|
26
|
-
description:
|
|
27
|
-
inputSchema:
|
|
28
|
-
type: "object",
|
|
29
|
-
properties: {
|
|
30
|
-
url: {
|
|
31
|
-
type: "string",
|
|
32
|
-
description: "Swagger JSON URL",
|
|
33
|
-
},
|
|
34
|
-
},
|
|
35
|
-
required: ["url"],
|
|
36
|
-
},
|
|
35
|
+
name: 'load_swagger',
|
|
36
|
+
description: 'Swagger/OpenAPI JSON URL을 로드합니다',
|
|
37
|
+
inputSchema: loadSwaggerSchema,
|
|
37
38
|
},
|
|
38
39
|
{
|
|
39
|
-
name:
|
|
40
|
-
description:
|
|
41
|
-
inputSchema:
|
|
42
|
-
type: "object",
|
|
43
|
-
properties: {
|
|
44
|
-
url: {
|
|
45
|
-
type: "string",
|
|
46
|
-
description: "Swagger JSON URL",
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
required: ["url"],
|
|
50
|
-
},
|
|
40
|
+
name: 'get_controllers',
|
|
41
|
+
description: '모든 컨트롤러(태그) 목록을 가져옵니다',
|
|
42
|
+
inputSchema: getControllersSchema,
|
|
51
43
|
},
|
|
52
44
|
{
|
|
53
|
-
name:
|
|
54
|
-
description:
|
|
55
|
-
inputSchema:
|
|
56
|
-
type: "object",
|
|
57
|
-
properties: {
|
|
58
|
-
url: {
|
|
59
|
-
type: "string",
|
|
60
|
-
description: "Swagger JSON URL",
|
|
61
|
-
},
|
|
62
|
-
controller: {
|
|
63
|
-
type: "string",
|
|
64
|
-
description: "컨트롤러 이름 (태그)",
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
required: ["url", "controller"],
|
|
68
|
-
},
|
|
45
|
+
name: 'get_paths_by_controller',
|
|
46
|
+
description: '특정 컨트롤러의 모든 path를 가져옵니다',
|
|
47
|
+
inputSchema: getPathsByControllerSchema,
|
|
69
48
|
},
|
|
70
49
|
{
|
|
71
|
-
name:
|
|
72
|
-
description:
|
|
73
|
-
inputSchema:
|
|
74
|
-
type: "object",
|
|
75
|
-
properties: {
|
|
76
|
-
url: {
|
|
77
|
-
type: "string",
|
|
78
|
-
description: "Swagger JSON URL",
|
|
79
|
-
},
|
|
80
|
-
path: {
|
|
81
|
-
type: "string",
|
|
82
|
-
description: "API path (예: /users/{id})",
|
|
83
|
-
},
|
|
84
|
-
method: {
|
|
85
|
-
type: "string",
|
|
86
|
-
description: "HTTP method (get, post, put, delete 등)",
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
required: ["url", "path", "method"],
|
|
90
|
-
},
|
|
50
|
+
name: 'get_path_details',
|
|
51
|
+
description: '특정 path의 상세 정보를 가져옵니다',
|
|
52
|
+
inputSchema: getPathDetailsSchema,
|
|
91
53
|
},
|
|
92
54
|
{
|
|
93
|
-
name:
|
|
94
|
-
description:
|
|
95
|
-
inputSchema:
|
|
96
|
-
type: "object",
|
|
97
|
-
properties: {
|
|
98
|
-
url: {
|
|
99
|
-
type: "string",
|
|
100
|
-
description: "Swagger JSON URL",
|
|
101
|
-
},
|
|
102
|
-
ref: {
|
|
103
|
-
type: "string",
|
|
104
|
-
description: "$ref 경로 (예: #/components/schemas/User)",
|
|
105
|
-
},
|
|
106
|
-
},
|
|
107
|
-
required: ["url", "ref"],
|
|
108
|
-
},
|
|
55
|
+
name: 'resolve_schema',
|
|
56
|
+
description: '$ref를 해결하여 실제 스키마를 가져옵니다',
|
|
57
|
+
inputSchema: resolveSchemaSchema,
|
|
109
58
|
},
|
|
110
59
|
],
|
|
111
60
|
}));
|
|
@@ -114,26 +63,37 @@ class SwaggerParserServer {
|
|
|
114
63
|
const { name, arguments: args } = request.params;
|
|
115
64
|
try {
|
|
116
65
|
switch (name) {
|
|
117
|
-
case
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
case
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
case
|
|
126
|
-
|
|
66
|
+
case 'load_swagger': {
|
|
67
|
+
const validatedArgs = loadSwaggerSchema.parse(args);
|
|
68
|
+
return await this.loadSwagger(validatedArgs.url);
|
|
69
|
+
}
|
|
70
|
+
case 'get_controllers': {
|
|
71
|
+
const validatedArgs = getControllersSchema.parse(args);
|
|
72
|
+
return await this.getControllers(validatedArgs.url);
|
|
73
|
+
}
|
|
74
|
+
case 'get_paths_by_controller': {
|
|
75
|
+
const validatedArgs = getPathsByControllerSchema.parse(args);
|
|
76
|
+
return await this.getPathsByController(validatedArgs.url, validatedArgs.controller);
|
|
77
|
+
}
|
|
78
|
+
case 'get_path_details': {
|
|
79
|
+
const validatedArgs = getPathDetailsSchema.parse(args);
|
|
80
|
+
return await this.getPathDetails(validatedArgs.url, validatedArgs.path, validatedArgs.method);
|
|
81
|
+
}
|
|
82
|
+
case 'resolve_schema': {
|
|
83
|
+
const validatedArgs = resolveSchemaSchema.parse(args);
|
|
84
|
+
return await this.resolveSchema(validatedArgs.url, validatedArgs.ref);
|
|
85
|
+
}
|
|
127
86
|
default:
|
|
128
87
|
throw new Error(`Unknown tool: ${name}`);
|
|
129
88
|
}
|
|
130
89
|
}
|
|
131
90
|
catch (error) {
|
|
91
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
|
|
132
92
|
return {
|
|
133
93
|
content: [
|
|
134
94
|
{
|
|
135
|
-
type:
|
|
136
|
-
text: `Error: ${
|
|
95
|
+
type: 'text',
|
|
96
|
+
text: `Error: ${errorMessage}`,
|
|
137
97
|
},
|
|
138
98
|
],
|
|
139
99
|
};
|
|
@@ -142,13 +102,11 @@ class SwaggerParserServer {
|
|
|
142
102
|
}
|
|
143
103
|
async loadSwagger(url) {
|
|
144
104
|
try {
|
|
145
|
-
const
|
|
146
|
-
const swagger = response.data;
|
|
147
|
-
this.swaggerCache.set(url, swagger);
|
|
105
|
+
const swagger = await this.swaggerCache.load(url);
|
|
148
106
|
return {
|
|
149
107
|
content: [
|
|
150
108
|
{
|
|
151
|
-
type:
|
|
109
|
+
type: 'text',
|
|
152
110
|
text: JSON.stringify({
|
|
153
111
|
success: true,
|
|
154
112
|
info: swagger.info,
|
|
@@ -160,21 +118,24 @@ class SwaggerParserServer {
|
|
|
160
118
|
};
|
|
161
119
|
}
|
|
162
120
|
catch (error) {
|
|
163
|
-
|
|
121
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error occurred';
|
|
122
|
+
throw new Error(`Failed to load Swagger: ${errorMessage}`);
|
|
164
123
|
}
|
|
165
124
|
}
|
|
166
125
|
async getSwagger(url) {
|
|
167
|
-
|
|
168
|
-
await this.loadSwagger(url);
|
|
169
|
-
}
|
|
170
|
-
return this.swaggerCache.get(url);
|
|
126
|
+
return await this.swaggerCache.getOrLoad(url);
|
|
171
127
|
}
|
|
172
128
|
async getControllers(url) {
|
|
173
129
|
const swagger = await this.getSwagger(url);
|
|
174
130
|
const controllers = new Set();
|
|
175
|
-
Object.values(swagger.paths).forEach(pathItem => {
|
|
176
|
-
|
|
177
|
-
|
|
131
|
+
Object.values(swagger.paths || {}).forEach(pathItem => {
|
|
132
|
+
if (!pathItem)
|
|
133
|
+
return;
|
|
134
|
+
// Check each HTTP method
|
|
135
|
+
const methods = ['get', 'post', 'put', 'delete', 'patch', 'head', 'options'];
|
|
136
|
+
methods.forEach(method => {
|
|
137
|
+
const operation = pathItem[method];
|
|
138
|
+
if (operation?.tags) {
|
|
178
139
|
operation.tags.forEach((tag) => controllers.add(tag));
|
|
179
140
|
}
|
|
180
141
|
});
|
|
@@ -182,7 +143,7 @@ class SwaggerParserServer {
|
|
|
182
143
|
return {
|
|
183
144
|
content: [
|
|
184
145
|
{
|
|
185
|
-
type:
|
|
146
|
+
type: 'text',
|
|
186
147
|
text: JSON.stringify({
|
|
187
148
|
controllers: Array.from(controllers),
|
|
188
149
|
count: controllers.size,
|
|
@@ -194,9 +155,14 @@ class SwaggerParserServer {
|
|
|
194
155
|
async getPathsByController(url, controller) {
|
|
195
156
|
const swagger = await this.getSwagger(url);
|
|
196
157
|
const paths = [];
|
|
197
|
-
Object.entries(swagger.paths).forEach(([path, pathItem]) => {
|
|
198
|
-
|
|
199
|
-
|
|
158
|
+
Object.entries(swagger.paths || {}).forEach(([path, pathItem]) => {
|
|
159
|
+
if (!pathItem)
|
|
160
|
+
return;
|
|
161
|
+
// Check each HTTP method
|
|
162
|
+
const methods = ['get', 'post', 'put', 'delete', 'patch', 'head', 'options'];
|
|
163
|
+
methods.forEach(method => {
|
|
164
|
+
const operation = pathItem[method];
|
|
165
|
+
if (operation?.tags?.includes(controller)) {
|
|
200
166
|
paths.push({
|
|
201
167
|
path,
|
|
202
168
|
method,
|
|
@@ -210,7 +176,7 @@ class SwaggerParserServer {
|
|
|
210
176
|
return {
|
|
211
177
|
content: [
|
|
212
178
|
{
|
|
213
|
-
type:
|
|
179
|
+
type: 'text',
|
|
214
180
|
text: JSON.stringify({
|
|
215
181
|
controller,
|
|
216
182
|
paths,
|
|
@@ -222,28 +188,43 @@ class SwaggerParserServer {
|
|
|
222
188
|
}
|
|
223
189
|
async getPathDetails(url, path, method) {
|
|
224
190
|
const swagger = await this.getSwagger(url);
|
|
225
|
-
const
|
|
226
|
-
|
|
191
|
+
const pathItem = swagger.paths?.[path];
|
|
192
|
+
const operation = pathItem?.[method.toLowerCase()];
|
|
193
|
+
if (!operation || typeof operation !== 'object') {
|
|
227
194
|
throw new Error(`Path ${method.toUpperCase()} ${path} not found`);
|
|
228
195
|
}
|
|
229
196
|
// 파라미터 정보 추출
|
|
230
|
-
const parameters = operation.parameters?.map(param =>
|
|
231
|
-
|
|
232
|
-
in
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
197
|
+
const parameters = operation.parameters?.map(param => {
|
|
198
|
+
// Handle $ref parameters by resolving them first
|
|
199
|
+
if ('$ref' in param) {
|
|
200
|
+
const resolvedParam = this.schemaResolver.resolveRef(param.$ref, swagger);
|
|
201
|
+
return {
|
|
202
|
+
name: resolvedParam.name,
|
|
203
|
+
in: resolvedParam.in,
|
|
204
|
+
required: resolvedParam.required,
|
|
205
|
+
description: resolvedParam.description,
|
|
206
|
+
schema: this.schemaResolver.resolveSchemaReference(resolvedParam.schema, swagger),
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
return {
|
|
210
|
+
name: param.name,
|
|
211
|
+
in: param.in,
|
|
212
|
+
required: param.required,
|
|
213
|
+
description: param.description,
|
|
214
|
+
schema: this.schemaResolver.resolveSchemaReference(param.schema, swagger),
|
|
215
|
+
};
|
|
216
|
+
}) || [];
|
|
237
217
|
// Request Body 정보 추출
|
|
238
218
|
let requestBody = null;
|
|
239
|
-
if (operation.requestBody
|
|
219
|
+
if (operation.requestBody && 'content' in operation.requestBody && operation.requestBody.content) {
|
|
240
220
|
const content = operation.requestBody.content;
|
|
241
221
|
const mediaType = Object.keys(content)[0];
|
|
242
|
-
|
|
222
|
+
const mediaTypeObj = content[mediaType];
|
|
223
|
+
if (mediaTypeObj?.schema) {
|
|
243
224
|
requestBody = {
|
|
244
225
|
required: operation.requestBody.required,
|
|
245
226
|
mediaType,
|
|
246
|
-
schema: this.resolveSchemaReference(
|
|
227
|
+
schema: this.schemaResolver.resolveSchemaReference(mediaTypeObj.schema, swagger),
|
|
247
228
|
};
|
|
248
229
|
}
|
|
249
230
|
}
|
|
@@ -251,112 +232,52 @@ class SwaggerParserServer {
|
|
|
251
232
|
const responses = {};
|
|
252
233
|
if (operation.responses) {
|
|
253
234
|
Object.entries(operation.responses).forEach(([statusCode, response]) => {
|
|
254
|
-
if (response.content) {
|
|
235
|
+
if (response && typeof response === 'object' && 'content' in response && response.content) {
|
|
255
236
|
const content = response.content;
|
|
256
237
|
const mediaType = Object.keys(content)[0];
|
|
257
|
-
|
|
238
|
+
const mediaTypeObj = content[mediaType];
|
|
239
|
+
if (mediaTypeObj?.schema) {
|
|
258
240
|
responses[statusCode] = {
|
|
259
241
|
description: response.description,
|
|
260
242
|
mediaType,
|
|
261
|
-
schema: this.resolveSchemaReference(
|
|
243
|
+
schema: this.schemaResolver.resolveSchemaReference(mediaTypeObj.schema, swagger),
|
|
262
244
|
};
|
|
263
245
|
}
|
|
264
246
|
}
|
|
265
|
-
else {
|
|
247
|
+
else if (response && typeof response === 'object' && 'description' in response) {
|
|
266
248
|
responses[statusCode] = {
|
|
267
249
|
description: response.description,
|
|
268
250
|
};
|
|
269
251
|
}
|
|
270
252
|
});
|
|
271
253
|
}
|
|
254
|
+
const pathDetails = {
|
|
255
|
+
path,
|
|
256
|
+
method: method.toUpperCase(),
|
|
257
|
+
operationId: operation.operationId,
|
|
258
|
+
summary: operation.summary,
|
|
259
|
+
description: operation.description,
|
|
260
|
+
tags: operation.tags,
|
|
261
|
+
parameters,
|
|
262
|
+
requestBody: requestBody || undefined,
|
|
263
|
+
responses,
|
|
264
|
+
};
|
|
272
265
|
return {
|
|
273
266
|
content: [
|
|
274
267
|
{
|
|
275
|
-
type:
|
|
276
|
-
text: JSON.stringify(
|
|
277
|
-
path,
|
|
278
|
-
method: method.toUpperCase(),
|
|
279
|
-
operationId: operation.operationId,
|
|
280
|
-
summary: operation.summary,
|
|
281
|
-
description: operation.description,
|
|
282
|
-
tags: operation.tags,
|
|
283
|
-
parameters,
|
|
284
|
-
requestBody,
|
|
285
|
-
responses,
|
|
286
|
-
}, null, 2),
|
|
268
|
+
type: 'text',
|
|
269
|
+
text: JSON.stringify(pathDetails, null, 2),
|
|
287
270
|
},
|
|
288
271
|
],
|
|
289
272
|
};
|
|
290
273
|
}
|
|
291
|
-
resolveSchemaReference(schema, swagger) {
|
|
292
|
-
if (!schema)
|
|
293
|
-
return null;
|
|
294
|
-
if (schema.$ref) {
|
|
295
|
-
const resolved = this.resolveRef(schema.$ref, swagger);
|
|
296
|
-
return {
|
|
297
|
-
$ref: schema.$ref,
|
|
298
|
-
resolved,
|
|
299
|
-
};
|
|
300
|
-
}
|
|
301
|
-
if (schema.type === "array" && schema.items) {
|
|
302
|
-
return {
|
|
303
|
-
type: "array",
|
|
304
|
-
items: this.resolveSchemaReference(schema.items, swagger),
|
|
305
|
-
};
|
|
306
|
-
}
|
|
307
|
-
if (schema.type === "object" && schema.properties) {
|
|
308
|
-
const properties = {};
|
|
309
|
-
Object.entries(schema.properties).forEach(([key, value]) => {
|
|
310
|
-
properties[key] = this.resolveSchemaReference(value, swagger);
|
|
311
|
-
});
|
|
312
|
-
return {
|
|
313
|
-
type: "object",
|
|
314
|
-
properties,
|
|
315
|
-
required: schema.required,
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
return schema;
|
|
319
|
-
}
|
|
320
|
-
resolveRef(ref, swagger) {
|
|
321
|
-
const parts = ref.split("/");
|
|
322
|
-
let current = swagger;
|
|
323
|
-
for (let i = 1; i < parts.length; i++) {
|
|
324
|
-
current = current[parts[i]];
|
|
325
|
-
if (!current) {
|
|
326
|
-
throw new Error(`Cannot resolve reference: ${ref}`);
|
|
327
|
-
}
|
|
328
|
-
}
|
|
329
|
-
// 재귀적으로 중첩된 $ref도 해결
|
|
330
|
-
if (current.$ref) {
|
|
331
|
-
return this.resolveRef(current.$ref, swagger);
|
|
332
|
-
}
|
|
333
|
-
// 객체 속성에 있는 $ref도 해결
|
|
334
|
-
if (current.type === "object" && current.properties) {
|
|
335
|
-
const resolvedProperties = {};
|
|
336
|
-
Object.entries(current.properties).forEach(([key, value]) => {
|
|
337
|
-
resolvedProperties[key] = this.resolveSchemaReference(value, swagger);
|
|
338
|
-
});
|
|
339
|
-
return {
|
|
340
|
-
...current,
|
|
341
|
-
properties: resolvedProperties,
|
|
342
|
-
};
|
|
343
|
-
}
|
|
344
|
-
// 배열 아이템의 $ref도 해결
|
|
345
|
-
if (current.type === "array" && current.items) {
|
|
346
|
-
return {
|
|
347
|
-
...current,
|
|
348
|
-
items: this.resolveSchemaReference(current.items, swagger),
|
|
349
|
-
};
|
|
350
|
-
}
|
|
351
|
-
return current;
|
|
352
|
-
}
|
|
353
274
|
async resolveSchema(url, ref) {
|
|
354
275
|
const swagger = await this.getSwagger(url);
|
|
355
|
-
const resolved = this.resolveRef(ref, swagger);
|
|
276
|
+
const resolved = this.schemaResolver.resolveRef(ref, swagger);
|
|
356
277
|
return {
|
|
357
278
|
content: [
|
|
358
279
|
{
|
|
359
|
-
type:
|
|
280
|
+
type: 'text',
|
|
360
281
|
text: JSON.stringify({
|
|
361
282
|
ref,
|
|
362
283
|
resolved,
|
|
@@ -368,7 +289,7 @@ class SwaggerParserServer {
|
|
|
368
289
|
async run() {
|
|
369
290
|
const transport = new StdioServerTransport();
|
|
370
291
|
await this.server.connect(transport);
|
|
371
|
-
console.error(
|
|
292
|
+
console.error('Swagger Parser MCP Server running on stdio');
|
|
372
293
|
}
|
|
373
294
|
}
|
|
374
295
|
// 서버 실행
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAwD1B,MAAM,mBAAmB;IACf,MAAM,CAAS;IACf,YAAY,GAAiC,IAAI,GAAG,EAAE,CAAC;IAE/D;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CACtB;YACE,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV;SACF,CACF,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,aAAa;QACnB,WAAW;QACX,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACjE,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,iCAAiC;oBAC9C,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,CAAC;qBAClB;iBACF;gBACD;oBACE,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EAAE,uBAAuB;oBACpC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,CAAC;qBAClB;iBACF;gBACD;oBACE,IAAI,EAAE,yBAAyB;oBAC/B,WAAW,EAAE,yBAAyB;oBACtC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,cAAc;6BAC5B;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;qBAChC;iBACF;gBACD;oBACE,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,uBAAuB;oBACpC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,2BAA2B;6BACzC;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,wCAAwC;6BACtD;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC;qBACpC;iBACF;gBACD;oBACE,IAAI,EAAE,gBAAgB;oBACtB,WAAW,EAAE,0BAA0B;oBACvC,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kBAAkB;6BAChC;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,wCAAwC;6BACtD;yBACF;wBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;qBACzB;iBACF;aACF;SACF,CAAC,CAAC,CAAC;QAEJ,YAAY;QACZ,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAEjD,IAAI,CAAC;gBACH,QAAQ,IAAI,EAAE,CAAC;oBACb,KAAK,cAAc;wBACjB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAa,CAAC,CAAC;oBACrD,KAAK,iBAAiB;wBACpB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAa,CAAC,CAAC;oBACxD,KAAK,yBAAyB;wBAC5B,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,GAAa,EAAE,IAAI,EAAE,UAAoB,CAAC,CAAC;oBAC1F,KAAK,kBAAkB;wBACrB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAa,EAAE,IAAI,EAAE,IAAc,EAAE,IAAI,EAAE,MAAgB,CAAC,CAAC;oBACtG,KAAK,gBAAgB;wBACnB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAa,EAAE,IAAI,EAAE,GAAa,CAAC,CAAC;oBAC5E;wBACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE;yBAChC;qBACF;iBACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,GAAW;QACnC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAuB,CAAC;YACjD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAEpC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,OAAO,EAAE,IAAI;4BACb,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM;4BAC5C,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU;yBACpC,EAAE,IAAI,EAAE,CAAC,CAAC;qBACZ;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,GAAW;QAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,GAAW;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC9C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,SAAc,EAAE,EAAE;gBACjD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;oBACnB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;wBACpC,KAAK,EAAE,WAAW,CAAC,IAAI;qBACxB,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ;aACF;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,GAAW,EAAE,UAAkB;QAChE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAU,EAAE,CAAC;QAExB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE;YACzD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE;gBACvD,IAAI,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBACzC,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI;wBACJ,MAAM;wBACN,WAAW,EAAE,SAAS,CAAC,WAAW;wBAClC,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,WAAW,EAAE,SAAS,CAAC,WAAW;qBACnC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,UAAU;wBACV,KAAK;wBACL,KAAK,EAAE,KAAK,CAAC,MAAM;qBACpB,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ;aACF;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,IAAY,EAAE,MAAc;QACpE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAE9D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,QAAQ,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,YAAY,CAAC,CAAC;QACpE,CAAC;QAED,aAAa;QACb,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrD,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC;SAC3D,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,qBAAqB;QACrB,IAAI,WAAW,GAAQ,IAAI,CAAC;QAC5B,IAAI,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;gBAC/B,WAAW,GAAG;oBACZ,QAAQ,EAAE,SAAS,CAAC,WAAW,CAAC,QAAQ;oBACxC,SAAS;oBACT,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC;iBACxE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,MAAM,SAAS,GAAQ,EAAE,CAAC;QAC1B,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE;gBACrE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1C,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;wBAC/B,SAAS,CAAC,UAAU,CAAC,GAAG;4BACtB,WAAW,EAAE,QAAQ,CAAC,WAAW;4BACjC,SAAS;4BACT,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC;yBACxE,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,UAAU,CAAC,GAAG;wBACtB,WAAW,EAAE,QAAQ,CAAC,WAAW;qBAClC,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,IAAI;wBACJ,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;wBAC5B,WAAW,EAAE,SAAS,CAAC,WAAW;wBAClC,OAAO,EAAE,SAAS,CAAC,OAAO;wBAC1B,WAAW,EAAE,SAAS,CAAC,WAAW;wBAClC,IAAI,EAAE,SAAS,CAAC,IAAI;wBACpB,UAAU;wBACV,WAAW;wBACX,SAAS;qBACV,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ;aACF;SACF,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,MAAW,EAAE,OAAwB;QAClE,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ;aACT,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC5C,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;aAC1D,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAClD,MAAM,UAAU,GAAQ,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACzD,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU;gBACV,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,UAAU,CAAC,GAAW,EAAE,OAAwB;QACtD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,OAAO,GAAQ,OAAO,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAED,qBAAqB;QACrB,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACpD,MAAM,kBAAkB,GAAQ,EAAE,CAAC;YACnC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAgB,EAAE,EAAE;gBACzE,kBAAkB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YACH,OAAO;gBACL,GAAG,OAAO;gBACV,UAAU,EAAE,kBAAkB;aAC/B,CAAC;QACJ,CAAC;QAED,mBAAmB;QACnB,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9C,OAAO;gBACL,GAAG,OAAO;gBACV,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;aAC3D,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,GAAW,EAAE,GAAW;QAClD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAE/C,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,GAAG;wBACH,QAAQ;qBACT,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ;aACF;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC9D,CAAC;CACF;AAED,QAAQ;AACR,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;AACzC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Zod schemas for MCP tool input validation
|
|
4
|
+
* These schemas provide runtime validation and type safety for all MCP tools
|
|
5
|
+
*/
|
|
6
|
+
export declare const loadSwaggerSchema: z.ZodObject<{
|
|
7
|
+
url: z.ZodString;
|
|
8
|
+
}, "strip", z.ZodTypeAny, {
|
|
9
|
+
url: string;
|
|
10
|
+
}, {
|
|
11
|
+
url: string;
|
|
12
|
+
}>;
|
|
13
|
+
export declare const getControllersSchema: z.ZodObject<{
|
|
14
|
+
url: z.ZodString;
|
|
15
|
+
}, "strip", z.ZodTypeAny, {
|
|
16
|
+
url: string;
|
|
17
|
+
}, {
|
|
18
|
+
url: string;
|
|
19
|
+
}>;
|
|
20
|
+
export declare const getPathsByControllerSchema: z.ZodObject<{
|
|
21
|
+
url: z.ZodString;
|
|
22
|
+
controller: z.ZodString;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
url: string;
|
|
25
|
+
controller: string;
|
|
26
|
+
}, {
|
|
27
|
+
url: string;
|
|
28
|
+
controller: string;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const getPathDetailsSchema: z.ZodObject<{
|
|
31
|
+
url: z.ZodString;
|
|
32
|
+
path: z.ZodString;
|
|
33
|
+
method: z.ZodEnum<["get", "post", "put", "delete", "patch", "head", "options"]>;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
path: string;
|
|
36
|
+
url: string;
|
|
37
|
+
method: "get" | "post" | "put" | "delete" | "patch" | "head" | "options";
|
|
38
|
+
}, {
|
|
39
|
+
path: string;
|
|
40
|
+
url: string;
|
|
41
|
+
method: "get" | "post" | "put" | "delete" | "patch" | "head" | "options";
|
|
42
|
+
}>;
|
|
43
|
+
export declare const resolveSchemaSchema: z.ZodObject<{
|
|
44
|
+
url: z.ZodString;
|
|
45
|
+
ref: z.ZodString;
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
url: string;
|
|
48
|
+
ref: string;
|
|
49
|
+
}, {
|
|
50
|
+
url: string;
|
|
51
|
+
ref: string;
|
|
52
|
+
}>;
|
|
53
|
+
export type LoadSwaggerInput = z.infer<typeof loadSwaggerSchema>;
|
|
54
|
+
export type GetControllersInput = z.infer<typeof getControllersSchema>;
|
|
55
|
+
export type GetPathsByControllerInput = z.infer<typeof getPathsByControllerSchema>;
|
|
56
|
+
export type GetPathDetailsInput = z.infer<typeof getPathDetailsSchema>;
|
|
57
|
+
export type ResolveSchemaInput = z.infer<typeof resolveSchemaSchema>;
|
|
58
|
+
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AAGH,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;;EAE/B,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;;;EAGrC,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAM/B,CAAC;AAGH,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAGH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACjE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACvE,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACnF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACvE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
package/dist/schemas.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Zod schemas for MCP tool input validation
|
|
4
|
+
* These schemas provide runtime validation and type safety for all MCP tools
|
|
5
|
+
*/
|
|
6
|
+
// Schema for load_swagger tool
|
|
7
|
+
export const loadSwaggerSchema = z.object({
|
|
8
|
+
url: z.string().url('Must be a valid URL'),
|
|
9
|
+
});
|
|
10
|
+
// Schema for get_controllers tool
|
|
11
|
+
export const getControllersSchema = z.object({
|
|
12
|
+
url: z.string().url('Must be a valid URL'),
|
|
13
|
+
});
|
|
14
|
+
// Schema for get_paths_by_controller tool
|
|
15
|
+
export const getPathsByControllerSchema = z.object({
|
|
16
|
+
url: z.string().url('Must be a valid URL'),
|
|
17
|
+
controller: z.string().min(1, 'Controller name is required'),
|
|
18
|
+
});
|
|
19
|
+
// Schema for get_path_details tool
|
|
20
|
+
export const getPathDetailsSchema = z.object({
|
|
21
|
+
url: z.string().url('Must be a valid URL'),
|
|
22
|
+
path: z.string().min(1, 'Path is required'),
|
|
23
|
+
method: z.enum(['get', 'post', 'put', 'delete', 'patch', 'head', 'options'], {
|
|
24
|
+
errorMap: () => ({ message: 'Method must be a valid HTTP method' }),
|
|
25
|
+
}),
|
|
26
|
+
});
|
|
27
|
+
// Schema for resolve_schema tool
|
|
28
|
+
export const resolveSchemaSchema = z.object({
|
|
29
|
+
url: z.string().url('Must be a valid URL'),
|
|
30
|
+
ref: z.string().regex(/^#\//, 'Reference must start with #/ (e.g., #/components/schemas/User)'),
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AAEH,+BAA+B;AAC/B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;CAC3C,CAAC,CAAC;AAEH,kCAAkC;AAClC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;CAC3C,CAAC,CAAC;AAEH,0CAA0C;AAC1C,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,6BAA6B,CAAC;CAC7D,CAAC,CAAC;AAEH,mCAAmC;AACnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;IAC3C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;QAC3E,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC;KACpE,CAAC;CACH,CAAC,CAAC;AAEH,iCAAiC;AACjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC1C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,gEAAgE,CAAC;CAChG,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edgeCases.test.d.ts","sourceRoot":"","sources":["../../src/tests/edgeCases.test.ts"],"names":[],"mappings":""}
|