@frontmcp/adapters 1.9.1 → 1.9.3

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/index.js CHANGED
@@ -683,7 +683,9 @@ var KNOWN_EXTENSION_FIELDS = /* @__PURE__ */ new Set([
683
683
  "codecall",
684
684
  "tags",
685
685
  "hideFromDiscovery",
686
- "examples"
686
+ "examples",
687
+ "meta",
688
+ "icons"
687
689
  ]);
688
690
  var KNOWN_ANNOTATION_FIELDS = /* @__PURE__ */ new Set([
689
691
  "title",
@@ -907,6 +909,10 @@ function appendCookie(headers, name, value) {
907
909
  const combined = existing ? `${existing}; ${cookiePair}` : cookiePair;
908
910
  headers.set("Cookie", combined);
909
911
  }
912
+ function specDefault(tool2, inputKey) {
913
+ const property = tool2.inputSchema.properties?.[inputKey];
914
+ return typeof property === "object" ? property.default : void 0;
915
+ }
910
916
  function buildRequest(tool2, input, security, baseUrl) {
911
917
  const rawBaseUrl = tool2.metadata.servers?.[0]?.url || baseUrl;
912
918
  (0, import_utils2.validateBaseUrl)(rawBaseUrl);
@@ -920,7 +926,7 @@ function buildRequest(tool2, input, security, baseUrl) {
920
926
  let body;
921
927
  for (const mapper of tool2.mapper) {
922
928
  if (mapper.security) continue;
923
- const value = input[mapper.inputKey];
929
+ const value = input[mapper.inputKey] ?? (mapper.required ? specDefault(tool2, mapper.inputKey) : void 0);
924
930
  if (value === void 0 || value === null) {
925
931
  if (mapper.required) {
926
932
  throw new Error(
@@ -1034,9 +1040,11 @@ function createOpenApiTool(openapiTool, options, logger) {
1034
1040
  const inputTransforms = metadata.adapter?.inputTransforms ?? [];
1035
1041
  const toolTransform = metadata.adapter?.toolTransform ?? {};
1036
1042
  const postToolTransform = metadata.adapter?.postToolTransform;
1043
+ const serverFilledKeys = new Set(inputTransforms.map((transform) => transform.inputKey));
1037
1044
  const frontmcpValidation = validateFrontMcpExtension(metadata.frontmcp, openapiTool.name, logger);
1038
1045
  const frontmcpExt = frontmcpValidation.data;
1039
1046
  const schemaResult = getZodSchemaFromJsonSchema(openapiTool.inputSchema, openapiTool.name, logger);
1047
+ const argumentCheck = schemaResult.conversionFailed ? void 0 : getZodSchemaFromJsonSchema(toArgumentJsonSchema(openapiTool), openapiTool.name, logger);
1040
1048
  let wrappedOutputSchema;
1041
1049
  if (openapiTool.outputSchema !== void 0) {
1042
1050
  const baseOutputSchema = openapiTool.outputSchema ?? { type: "string" };
@@ -1054,11 +1062,15 @@ function createOpenApiTool(openapiTool, options, logger) {
1054
1062
  const toolMetadata = {
1055
1063
  id: openapiTool.name,
1056
1064
  name: openapiTool.name,
1065
+ ...openapiTool.title && { title: openapiTool.title },
1057
1066
  description: openapiTool.description,
1058
1067
  inputSchema: schemaResult.schema.shape || {},
1059
1068
  rawInputSchema: openapiTool.inputSchema,
1060
1069
  // Add output schema for tool/list to expose (only if not moved to description)
1061
- ...wrappedOutputSchema && { rawOutputSchema: wrappedOutputSchema }
1070
+ ...wrappedOutputSchema && { rawOutputSchema: wrappedOutputSchema },
1071
+ ...openapiTool.annotations && { annotations: { ...openapiTool.annotations } },
1072
+ ...openapiTool.icons?.length && { icons: openapiTool.icons.map((icon) => ({ ...icon })) },
1073
+ ...openapiTool._meta && { _meta: { ...openapiTool._meta } }
1062
1074
  };
1063
1075
  if (schemaResult.conversionFailed) {
1064
1076
  toolMetadata["_schemaConversionFailed"] = true;
@@ -1066,7 +1078,10 @@ function createOpenApiTool(openapiTool, options, logger) {
1066
1078
  }
1067
1079
  if (frontmcpExt) {
1068
1080
  if (frontmcpExt.annotations) {
1069
- toolMetadata["annotations"] = { ...frontmcpExt.annotations };
1081
+ toolMetadata["annotations"] = {
1082
+ ...toolMetadata["annotations"] || {},
1083
+ ...frontmcpExt.annotations
1084
+ };
1070
1085
  }
1071
1086
  if (frontmcpExt.tags) {
1072
1087
  toolMetadata["tags"] = [...frontmcpExt.tags];
@@ -1106,16 +1121,20 @@ function createOpenApiTool(openapiTool, options, logger) {
1106
1121
  }
1107
1122
  return (0, import_sdk4.tool)(toolMetadata)(async (input, toolCtx) => {
1108
1123
  const ctx = toolCtx.context;
1124
+ const modelInput = omitKeys(input, serverFilledKeys);
1125
+ if (argumentCheck && !argumentCheck.conversionFailed) {
1126
+ const validation = argumentCheck.schema.safeParse(modelInput);
1127
+ if (!validation.success) {
1128
+ const problems = validation.error.issues.map((issue) => `${issue.path.join(".") || "input"}: ${issue.message}`);
1129
+ throw new import_sdk4.InvalidInputError(`Invalid arguments for tool '${openapiTool.name}': ${problems.join("; ")}`);
1130
+ }
1131
+ }
1109
1132
  const transformContext = {
1110
1133
  ctx,
1111
1134
  env: process.env,
1112
1135
  tool: openapiTool
1113
1136
  };
1114
- const injectedInput = await injectTransformedValues(
1115
- input,
1116
- inputTransforms,
1117
- transformContext
1118
- );
1137
+ const injectedInput = await injectTransformedValues(modelInput, inputTransforms, transformContext);
1119
1138
  const security = await resolveToolSecurity(openapiTool, ctx, options, {
1120
1139
  input: injectedInput,
1121
1140
  deferCredentialCheck: true
@@ -1300,6 +1319,10 @@ async function safeInject(transform, ctx, timeoutMs = DEFAULT_TRANSFORM_TIMEOUT_
1300
1319
  function isPlainObject(value) {
1301
1320
  return typeof value === "object" && value !== null && !Array.isArray(value);
1302
1321
  }
1322
+ function omitKeys(input, keys) {
1323
+ if (keys.size === 0 || !isPlainObject(input)) return input;
1324
+ return Object.fromEntries(Object.entries(input).filter(([key]) => !keys.has(key)));
1325
+ }
1303
1326
  async function injectTransformedValues(input, transforms, ctx) {
1304
1327
  if (!isPlainObject(input)) {
1305
1328
  throw new Error(`Invalid input type: expected object, got ${input === null ? "null" : typeof input}`);
@@ -1319,6 +1342,64 @@ async function injectTransformedValues(input, transforms, ctx) {
1319
1342
  }
1320
1343
  return result;
1321
1344
  }
1345
+ var SUBSCHEMA_KEYWORDS = [
1346
+ "items",
1347
+ "additionalProperties",
1348
+ "not",
1349
+ "if",
1350
+ "then",
1351
+ "else",
1352
+ "contains",
1353
+ "propertyNames",
1354
+ "unevaluatedItems",
1355
+ "unevaluatedProperties"
1356
+ ];
1357
+ var SUBSCHEMA_LIST_KEYWORDS = ["allOf", "anyOf", "prefixItems"];
1358
+ var SUBSCHEMA_MAP_KEYWORDS = ["properties", "patternProperties", "dependentSchemas", "$defs", "definitions"];
1359
+ function toArgumentJsonSchema(openapiTool) {
1360
+ const argumentSchema = relaxSchema(openapiTool.inputSchema);
1361
+ const credentialKeys = new Set(
1362
+ openapiTool.mapper.filter((mapper) => mapper.security).map((mapper) => mapper.inputKey)
1363
+ );
1364
+ const required = argumentSchema["required"];
1365
+ if (Array.isArray(required)) {
1366
+ argumentSchema["required"] = required.filter((key) => !credentialKeys.has(key));
1367
+ }
1368
+ return argumentSchema;
1369
+ }
1370
+ function relaxSchema(schema) {
1371
+ if (Array.isArray(schema)) return schema.map(relaxSchema);
1372
+ if (typeof schema !== "object" || schema === null) return schema;
1373
+ const relaxed = { ...schema };
1374
+ delete relaxed["format"];
1375
+ for (const keyword of SUBSCHEMA_KEYWORDS) {
1376
+ if (keyword in relaxed) relaxed[keyword] = relaxSchema(relaxed[keyword]);
1377
+ }
1378
+ for (const keyword of SUBSCHEMA_LIST_KEYWORDS) {
1379
+ const subschemas = relaxed[keyword];
1380
+ if (Array.isArray(subschemas)) relaxed[keyword] = subschemas.map(relaxSchema);
1381
+ }
1382
+ for (const keyword of SUBSCHEMA_MAP_KEYWORDS) {
1383
+ const subschemasByName = relaxed[keyword];
1384
+ if (typeof subschemasByName === "object" && subschemasByName !== null) {
1385
+ relaxed[keyword] = Object.fromEntries(
1386
+ Object.entries(subschemasByName).map(([name, subschema]) => [name, relaxSchema(subschema)])
1387
+ );
1388
+ }
1389
+ }
1390
+ const exclusiveBranches = relaxed["oneOf"];
1391
+ if (Array.isArray(exclusiveBranches)) {
1392
+ delete relaxed["oneOf"];
1393
+ const branches = exclusiveBranches.map(relaxSchema);
1394
+ if (Array.isArray(relaxed["anyOf"])) {
1395
+ const allOf = Array.isArray(relaxed["allOf"]) ? relaxed["allOf"] : [];
1396
+ relaxed["allOf"] = [...allOf, { anyOf: branches }];
1397
+ } else {
1398
+ relaxed["anyOf"] = branches;
1399
+ }
1400
+ }
1401
+ return relaxed;
1402
+ }
1322
1403
  function getZodSchemaFromJsonSchema(jsonSchema, toolName, logger) {
1323
1404
  if (typeof jsonSchema !== "object" || jsonSchema === null) {
1324
1405
  logger.warn(`[${toolName}] No valid JSON schema provided, using permissive schema`);
@@ -1346,6 +1427,18 @@ function getZodSchemaFromJsonSchema(jsonSchema, toolName, logger) {
1346
1427
 
1347
1428
  // libs/adapters/src/openapi/openapi.adapter.ts
1348
1429
  var RESERVED_KEYS2 = ["__proto__", "constructor", "prototype"];
1430
+ var HTTP_METHODS = ["get", "post", "put", "patch", "delete", "head", "options", "trace"];
1431
+ function normalizeMethods(adapterName, optionName, methods) {
1432
+ return methods?.map((method) => {
1433
+ const lowerMethod = method.toLowerCase();
1434
+ if (!HTTP_METHODS.includes(lowerMethod)) {
1435
+ throw new Error(
1436
+ `[OpenAPI Adapter: ${adapterName}] generateOptions.${optionName} lists "${method}", which is not an HTTP method; use one of ${HTTP_METHODS.join(", ")}.`
1437
+ );
1438
+ }
1439
+ return lowerMethod;
1440
+ });
1441
+ }
1349
1442
  function createConsoleLogger(prefix) {
1350
1443
  const formatMessage = (level, msg) => `[${prefix}] ${level}: ${msg}`;
1351
1444
  return {
@@ -1364,9 +1457,14 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1364
1457
  poller = null;
1365
1458
  updateCallbacks = /* @__PURE__ */ new Set();
1366
1459
  rebuildChain = Promise.resolve();
1460
+ methodFilters;
1367
1461
  constructor(options) {
1368
1462
  super();
1369
1463
  this.options = options;
1464
+ this.methodFilters = {
1465
+ includeMethods: normalizeMethods(options.name, "includeMethods", options.generateOptions?.includeMethods),
1466
+ excludeMethods: normalizeMethods(options.name, "excludeMethods", options.generateOptions?.excludeMethods)
1467
+ };
1370
1468
  this.logger = options.logger ?? createConsoleLogger(`openapi:${options.name}`);
1371
1469
  if (options.polling?.enabled && !("url" in options)) {
1372
1470
  throw new Error(
@@ -1390,6 +1488,8 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1390
1488
  const generateOptions = this.options.generateOptions;
1391
1489
  let openapiTools = await this.generator.generateTools({
1392
1490
  ...generateOptions,
1491
+ ...this.methodFilters,
1492
+ filterFn: this.operationFilter(),
1393
1493
  preferredStatusCodes: generateOptions?.preferredStatusCodes ?? [200, 201, 202, 204],
1394
1494
  includeDeprecated: generateOptions?.includeDeprecated ?? false,
1395
1495
  includeAllResponses: generateOptions?.includeAllResponses ?? true,
@@ -1475,28 +1575,31 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1475
1575
  resolveRefResolution() {
1476
1576
  return this.options.loadOptions?.refResolution ?? { allowedProtocols: [] };
1477
1577
  }
1578
+ /**
1579
+ * `generateOptions.filterFn`, and with `includeOperations` set, only the operations it names: the
1580
+ * generator lets an operation with no `operationId` through that list.
1581
+ */
1582
+ operationFilter() {
1583
+ const { includeOperations, filterFn } = this.options.generateOptions ?? {};
1584
+ if (!includeOperations) return filterFn;
1585
+ return (operation) => operation.operationId !== void 0 && includeOperations.includes(operation.operationId) && (filterFn?.(operation) ?? true);
1586
+ }
1478
1587
  async initializeGenerator() {
1479
- const refResolution = this.resolveRefResolution();
1588
+ const loadOptions = {
1589
+ ...this.options.loadOptions,
1590
+ baseUrl: this.options.baseUrl,
1591
+ validate: this.options.loadOptions?.validate ?? true,
1592
+ dereference: this.options.loadOptions?.dereference ?? true,
1593
+ // SECURITY: do not follow spec-URL redirects by default — a 3xx to an
1594
+ // internal target would otherwise be fetched. With mcp-from-openapi
1595
+ // ≥ 2.5.0 each hop is re-validated; opt in with loadOptions.followRedirects.
1596
+ followRedirects: this.options.loadOptions?.followRedirects ?? false,
1597
+ refResolution: this.resolveRefResolution()
1598
+ };
1480
1599
  if ("url" in this.options) {
1481
- return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromURL(this.options.url, {
1482
- baseUrl: this.options.baseUrl,
1483
- validate: this.options.loadOptions?.validate ?? true,
1484
- dereference: this.options.loadOptions?.dereference ?? true,
1485
- headers: this.options.loadOptions?.headers,
1486
- timeout: this.options.loadOptions?.timeout,
1487
- // SECURITY: do not follow spec-URL redirects by default — a 3xx to an
1488
- // internal target would otherwise be fetched. With mcp-from-openapi
1489
- // ≥ 2.5.0 each hop is re-validated; opt in with loadOptions.followRedirects.
1490
- followRedirects: this.options.loadOptions?.followRedirects ?? false,
1491
- refResolution
1492
- });
1600
+ return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromURL(this.options.url, loadOptions);
1493
1601
  } else if ("spec" in this.options) {
1494
- return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromJSON(this.options.spec, {
1495
- baseUrl: this.options.baseUrl,
1496
- validate: this.options.loadOptions?.validate ?? true,
1497
- dereference: this.options.loadOptions?.dereference ?? true,
1498
- refResolution
1499
- });
1602
+ return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromJSON(this.options.spec, loadOptions);
1500
1603
  } else {
1501
1604
  throw new Error("Either url or spec must be provided in OpenApiAdapterOptions");
1502
1605
  }
package/openapi/index.js CHANGED
@@ -683,7 +683,9 @@ var KNOWN_EXTENSION_FIELDS = /* @__PURE__ */ new Set([
683
683
  "codecall",
684
684
  "tags",
685
685
  "hideFromDiscovery",
686
- "examples"
686
+ "examples",
687
+ "meta",
688
+ "icons"
687
689
  ]);
688
690
  var KNOWN_ANNOTATION_FIELDS = /* @__PURE__ */ new Set([
689
691
  "title",
@@ -907,6 +909,10 @@ function appendCookie(headers, name, value) {
907
909
  const combined = existing ? `${existing}; ${cookiePair}` : cookiePair;
908
910
  headers.set("Cookie", combined);
909
911
  }
912
+ function specDefault(tool2, inputKey) {
913
+ const property = tool2.inputSchema.properties?.[inputKey];
914
+ return typeof property === "object" ? property.default : void 0;
915
+ }
910
916
  function buildRequest(tool2, input, security, baseUrl) {
911
917
  const rawBaseUrl = tool2.metadata.servers?.[0]?.url || baseUrl;
912
918
  (0, import_utils2.validateBaseUrl)(rawBaseUrl);
@@ -920,7 +926,7 @@ function buildRequest(tool2, input, security, baseUrl) {
920
926
  let body;
921
927
  for (const mapper of tool2.mapper) {
922
928
  if (mapper.security) continue;
923
- const value = input[mapper.inputKey];
929
+ const value = input[mapper.inputKey] ?? (mapper.required ? specDefault(tool2, mapper.inputKey) : void 0);
924
930
  if (value === void 0 || value === null) {
925
931
  if (mapper.required) {
926
932
  throw new Error(
@@ -1034,9 +1040,11 @@ function createOpenApiTool(openapiTool, options, logger) {
1034
1040
  const inputTransforms = metadata.adapter?.inputTransforms ?? [];
1035
1041
  const toolTransform = metadata.adapter?.toolTransform ?? {};
1036
1042
  const postToolTransform = metadata.adapter?.postToolTransform;
1043
+ const serverFilledKeys = new Set(inputTransforms.map((transform) => transform.inputKey));
1037
1044
  const frontmcpValidation = validateFrontMcpExtension(metadata.frontmcp, openapiTool.name, logger);
1038
1045
  const frontmcpExt = frontmcpValidation.data;
1039
1046
  const schemaResult = getZodSchemaFromJsonSchema(openapiTool.inputSchema, openapiTool.name, logger);
1047
+ const argumentCheck = schemaResult.conversionFailed ? void 0 : getZodSchemaFromJsonSchema(toArgumentJsonSchema(openapiTool), openapiTool.name, logger);
1040
1048
  let wrappedOutputSchema;
1041
1049
  if (openapiTool.outputSchema !== void 0) {
1042
1050
  const baseOutputSchema = openapiTool.outputSchema ?? { type: "string" };
@@ -1054,11 +1062,15 @@ function createOpenApiTool(openapiTool, options, logger) {
1054
1062
  const toolMetadata = {
1055
1063
  id: openapiTool.name,
1056
1064
  name: openapiTool.name,
1065
+ ...openapiTool.title && { title: openapiTool.title },
1057
1066
  description: openapiTool.description,
1058
1067
  inputSchema: schemaResult.schema.shape || {},
1059
1068
  rawInputSchema: openapiTool.inputSchema,
1060
1069
  // Add output schema for tool/list to expose (only if not moved to description)
1061
- ...wrappedOutputSchema && { rawOutputSchema: wrappedOutputSchema }
1070
+ ...wrappedOutputSchema && { rawOutputSchema: wrappedOutputSchema },
1071
+ ...openapiTool.annotations && { annotations: { ...openapiTool.annotations } },
1072
+ ...openapiTool.icons?.length && { icons: openapiTool.icons.map((icon) => ({ ...icon })) },
1073
+ ...openapiTool._meta && { _meta: { ...openapiTool._meta } }
1062
1074
  };
1063
1075
  if (schemaResult.conversionFailed) {
1064
1076
  toolMetadata["_schemaConversionFailed"] = true;
@@ -1066,7 +1078,10 @@ function createOpenApiTool(openapiTool, options, logger) {
1066
1078
  }
1067
1079
  if (frontmcpExt) {
1068
1080
  if (frontmcpExt.annotations) {
1069
- toolMetadata["annotations"] = { ...frontmcpExt.annotations };
1081
+ toolMetadata["annotations"] = {
1082
+ ...toolMetadata["annotations"] || {},
1083
+ ...frontmcpExt.annotations
1084
+ };
1070
1085
  }
1071
1086
  if (frontmcpExt.tags) {
1072
1087
  toolMetadata["tags"] = [...frontmcpExt.tags];
@@ -1106,16 +1121,20 @@ function createOpenApiTool(openapiTool, options, logger) {
1106
1121
  }
1107
1122
  return (0, import_sdk4.tool)(toolMetadata)(async (input, toolCtx) => {
1108
1123
  const ctx = toolCtx.context;
1124
+ const modelInput = omitKeys(input, serverFilledKeys);
1125
+ if (argumentCheck && !argumentCheck.conversionFailed) {
1126
+ const validation = argumentCheck.schema.safeParse(modelInput);
1127
+ if (!validation.success) {
1128
+ const problems = validation.error.issues.map((issue) => `${issue.path.join(".") || "input"}: ${issue.message}`);
1129
+ throw new import_sdk4.InvalidInputError(`Invalid arguments for tool '${openapiTool.name}': ${problems.join("; ")}`);
1130
+ }
1131
+ }
1109
1132
  const transformContext = {
1110
1133
  ctx,
1111
1134
  env: process.env,
1112
1135
  tool: openapiTool
1113
1136
  };
1114
- const injectedInput = await injectTransformedValues(
1115
- input,
1116
- inputTransforms,
1117
- transformContext
1118
- );
1137
+ const injectedInput = await injectTransformedValues(modelInput, inputTransforms, transformContext);
1119
1138
  const security = await resolveToolSecurity(openapiTool, ctx, options, {
1120
1139
  input: injectedInput,
1121
1140
  deferCredentialCheck: true
@@ -1300,6 +1319,10 @@ async function safeInject(transform, ctx, timeoutMs = DEFAULT_TRANSFORM_TIMEOUT_
1300
1319
  function isPlainObject(value) {
1301
1320
  return typeof value === "object" && value !== null && !Array.isArray(value);
1302
1321
  }
1322
+ function omitKeys(input, keys) {
1323
+ if (keys.size === 0 || !isPlainObject(input)) return input;
1324
+ return Object.fromEntries(Object.entries(input).filter(([key]) => !keys.has(key)));
1325
+ }
1303
1326
  async function injectTransformedValues(input, transforms, ctx) {
1304
1327
  if (!isPlainObject(input)) {
1305
1328
  throw new Error(`Invalid input type: expected object, got ${input === null ? "null" : typeof input}`);
@@ -1319,6 +1342,64 @@ async function injectTransformedValues(input, transforms, ctx) {
1319
1342
  }
1320
1343
  return result;
1321
1344
  }
1345
+ var SUBSCHEMA_KEYWORDS = [
1346
+ "items",
1347
+ "additionalProperties",
1348
+ "not",
1349
+ "if",
1350
+ "then",
1351
+ "else",
1352
+ "contains",
1353
+ "propertyNames",
1354
+ "unevaluatedItems",
1355
+ "unevaluatedProperties"
1356
+ ];
1357
+ var SUBSCHEMA_LIST_KEYWORDS = ["allOf", "anyOf", "prefixItems"];
1358
+ var SUBSCHEMA_MAP_KEYWORDS = ["properties", "patternProperties", "dependentSchemas", "$defs", "definitions"];
1359
+ function toArgumentJsonSchema(openapiTool) {
1360
+ const argumentSchema = relaxSchema(openapiTool.inputSchema);
1361
+ const credentialKeys = new Set(
1362
+ openapiTool.mapper.filter((mapper) => mapper.security).map((mapper) => mapper.inputKey)
1363
+ );
1364
+ const required = argumentSchema["required"];
1365
+ if (Array.isArray(required)) {
1366
+ argumentSchema["required"] = required.filter((key) => !credentialKeys.has(key));
1367
+ }
1368
+ return argumentSchema;
1369
+ }
1370
+ function relaxSchema(schema) {
1371
+ if (Array.isArray(schema)) return schema.map(relaxSchema);
1372
+ if (typeof schema !== "object" || schema === null) return schema;
1373
+ const relaxed = { ...schema };
1374
+ delete relaxed["format"];
1375
+ for (const keyword of SUBSCHEMA_KEYWORDS) {
1376
+ if (keyword in relaxed) relaxed[keyword] = relaxSchema(relaxed[keyword]);
1377
+ }
1378
+ for (const keyword of SUBSCHEMA_LIST_KEYWORDS) {
1379
+ const subschemas = relaxed[keyword];
1380
+ if (Array.isArray(subschemas)) relaxed[keyword] = subschemas.map(relaxSchema);
1381
+ }
1382
+ for (const keyword of SUBSCHEMA_MAP_KEYWORDS) {
1383
+ const subschemasByName = relaxed[keyword];
1384
+ if (typeof subschemasByName === "object" && subschemasByName !== null) {
1385
+ relaxed[keyword] = Object.fromEntries(
1386
+ Object.entries(subschemasByName).map(([name, subschema]) => [name, relaxSchema(subschema)])
1387
+ );
1388
+ }
1389
+ }
1390
+ const exclusiveBranches = relaxed["oneOf"];
1391
+ if (Array.isArray(exclusiveBranches)) {
1392
+ delete relaxed["oneOf"];
1393
+ const branches = exclusiveBranches.map(relaxSchema);
1394
+ if (Array.isArray(relaxed["anyOf"])) {
1395
+ const allOf = Array.isArray(relaxed["allOf"]) ? relaxed["allOf"] : [];
1396
+ relaxed["allOf"] = [...allOf, { anyOf: branches }];
1397
+ } else {
1398
+ relaxed["anyOf"] = branches;
1399
+ }
1400
+ }
1401
+ return relaxed;
1402
+ }
1322
1403
  function getZodSchemaFromJsonSchema(jsonSchema, toolName, logger) {
1323
1404
  if (typeof jsonSchema !== "object" || jsonSchema === null) {
1324
1405
  logger.warn(`[${toolName}] No valid JSON schema provided, using permissive schema`);
@@ -1346,6 +1427,18 @@ function getZodSchemaFromJsonSchema(jsonSchema, toolName, logger) {
1346
1427
 
1347
1428
  // libs/adapters/src/openapi/openapi.adapter.ts
1348
1429
  var RESERVED_KEYS2 = ["__proto__", "constructor", "prototype"];
1430
+ var HTTP_METHODS = ["get", "post", "put", "patch", "delete", "head", "options", "trace"];
1431
+ function normalizeMethods(adapterName, optionName, methods) {
1432
+ return methods?.map((method) => {
1433
+ const lowerMethod = method.toLowerCase();
1434
+ if (!HTTP_METHODS.includes(lowerMethod)) {
1435
+ throw new Error(
1436
+ `[OpenAPI Adapter: ${adapterName}] generateOptions.${optionName} lists "${method}", which is not an HTTP method; use one of ${HTTP_METHODS.join(", ")}.`
1437
+ );
1438
+ }
1439
+ return lowerMethod;
1440
+ });
1441
+ }
1349
1442
  function createConsoleLogger(prefix) {
1350
1443
  const formatMessage = (level, msg) => `[${prefix}] ${level}: ${msg}`;
1351
1444
  return {
@@ -1364,9 +1457,14 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1364
1457
  poller = null;
1365
1458
  updateCallbacks = /* @__PURE__ */ new Set();
1366
1459
  rebuildChain = Promise.resolve();
1460
+ methodFilters;
1367
1461
  constructor(options) {
1368
1462
  super();
1369
1463
  this.options = options;
1464
+ this.methodFilters = {
1465
+ includeMethods: normalizeMethods(options.name, "includeMethods", options.generateOptions?.includeMethods),
1466
+ excludeMethods: normalizeMethods(options.name, "excludeMethods", options.generateOptions?.excludeMethods)
1467
+ };
1370
1468
  this.logger = options.logger ?? createConsoleLogger(`openapi:${options.name}`);
1371
1469
  if (options.polling?.enabled && !("url" in options)) {
1372
1470
  throw new Error(
@@ -1390,6 +1488,8 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1390
1488
  const generateOptions = this.options.generateOptions;
1391
1489
  let openapiTools = await this.generator.generateTools({
1392
1490
  ...generateOptions,
1491
+ ...this.methodFilters,
1492
+ filterFn: this.operationFilter(),
1393
1493
  preferredStatusCodes: generateOptions?.preferredStatusCodes ?? [200, 201, 202, 204],
1394
1494
  includeDeprecated: generateOptions?.includeDeprecated ?? false,
1395
1495
  includeAllResponses: generateOptions?.includeAllResponses ?? true,
@@ -1475,28 +1575,31 @@ var OpenapiAdapter = class extends import_sdk5.DynamicAdapter {
1475
1575
  resolveRefResolution() {
1476
1576
  return this.options.loadOptions?.refResolution ?? { allowedProtocols: [] };
1477
1577
  }
1578
+ /**
1579
+ * `generateOptions.filterFn`, and with `includeOperations` set, only the operations it names: the
1580
+ * generator lets an operation with no `operationId` through that list.
1581
+ */
1582
+ operationFilter() {
1583
+ const { includeOperations, filterFn } = this.options.generateOptions ?? {};
1584
+ if (!includeOperations) return filterFn;
1585
+ return (operation) => operation.operationId !== void 0 && includeOperations.includes(operation.operationId) && (filterFn?.(operation) ?? true);
1586
+ }
1478
1587
  async initializeGenerator() {
1479
- const refResolution = this.resolveRefResolution();
1588
+ const loadOptions = {
1589
+ ...this.options.loadOptions,
1590
+ baseUrl: this.options.baseUrl,
1591
+ validate: this.options.loadOptions?.validate ?? true,
1592
+ dereference: this.options.loadOptions?.dereference ?? true,
1593
+ // SECURITY: do not follow spec-URL redirects by default — a 3xx to an
1594
+ // internal target would otherwise be fetched. With mcp-from-openapi
1595
+ // ≥ 2.5.0 each hop is re-validated; opt in with loadOptions.followRedirects.
1596
+ followRedirects: this.options.loadOptions?.followRedirects ?? false,
1597
+ refResolution: this.resolveRefResolution()
1598
+ };
1480
1599
  if ("url" in this.options) {
1481
- return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromURL(this.options.url, {
1482
- baseUrl: this.options.baseUrl,
1483
- validate: this.options.loadOptions?.validate ?? true,
1484
- dereference: this.options.loadOptions?.dereference ?? true,
1485
- headers: this.options.loadOptions?.headers,
1486
- timeout: this.options.loadOptions?.timeout,
1487
- // SECURITY: do not follow spec-URL redirects by default — a 3xx to an
1488
- // internal target would otherwise be fetched. With mcp-from-openapi
1489
- // ≥ 2.5.0 each hop is re-validated; opt in with loadOptions.followRedirects.
1490
- followRedirects: this.options.loadOptions?.followRedirects ?? false,
1491
- refResolution
1492
- });
1600
+ return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromURL(this.options.url, loadOptions);
1493
1601
  } else if ("spec" in this.options) {
1494
- return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromJSON(this.options.spec, {
1495
- baseUrl: this.options.baseUrl,
1496
- validate: this.options.loadOptions?.validate ?? true,
1497
- dereference: this.options.loadOptions?.dereference ?? true,
1498
- refResolution
1499
- });
1602
+ return await import_mcp_from_openapi3.OpenAPIToolGenerator.fromJSON(this.options.spec, loadOptions);
1500
1603
  } else {
1501
1604
  throw new Error("Either url or spec must be provided in OpenApiAdapterOptions");
1502
1605
  }
@@ -7,6 +7,7 @@ export default class OpenapiAdapter extends DynamicAdapter<OpenApiAdapterOptions
7
7
  private poller;
8
8
  private updateCallbacks;
9
9
  private rebuildChain;
10
+ private readonly methodFilters;
10
11
  constructor(options: OpenApiAdapterOptions);
11
12
  /**
12
13
  * Receive the SDK logger. Called by the SDK before fetch().
@@ -29,6 +30,11 @@ export default class OpenapiAdapter extends DynamicAdapter<OpenApiAdapterOptions
29
30
  * @private
30
31
  */
31
32
  private resolveRefResolution;
33
+ /**
34
+ * `generateOptions.filterFn`, and with `includeOperations` set, only the operations it names: the
35
+ * generator lets an operation with no `operationId` through that list.
36
+ */
37
+ private operationFilter;
32
38
  private initializeGenerator;
33
39
  /**
34
40
  * Apply description mode to generate description from summary/description
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.adapter.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,cAAc,EAAE,KAAK,uBAAuB,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAS3G,OAAO,EAIL,KAAK,qBAAqB,EAQ3B,MAAM,iBAAiB,CAAC;AAwBzB,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc,CAAC,qBAAqB,CAAC;IAC/E,OAAO,CAAC,SAAS,CAAC,CAAuB;IACzC,OAAO,CAAC,MAAM,CAAiB;IACxB,OAAO,EAAE,qBAAqB,CAAC;IACtC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,eAAe,CAA0D;IACjF,OAAO,CAAC,YAAY,CAAoC;gBAE5C,OAAO,EAAE,qBAAqB;IAc1C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAIjC,KAAK,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAoH/C;;;OAGG;IACH;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;YAId,mBAAmB;IA4BjC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAMtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA6D7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAwBhC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAoD5B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA0D7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAkBnC;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAoBpC;;;;OAIG;YACW,wBAAwB;IAiFtC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAgBlC;;;OAGG;IACH,OAAO,CAAC,0CAA0C;IA+BlD;;;OAGG;IACH,OAAO,CAAC,2CAA2C;IAyCnD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,IAAI,GAAG,MAAM,IAAI;IAO3E;;;;OAIG;IACH,YAAY,IAAI,IAAI;IA6CpB;;OAEG;IACH,WAAW,IAAI,IAAI;CAOpB"}
1
+ {"version":3,"file":"openapi.adapter.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.adapter.ts"],"names":[],"mappings":"AAOA,OAAO,EAAW,cAAc,EAAE,KAAK,uBAAuB,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAS3G,OAAO,EAIL,KAAK,qBAAqB,EAQ3B,MAAM,iBAAiB,CAAC;AA6CzB,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc,CAAC,qBAAqB,CAAC;IAC/E,OAAO,CAAC,SAAS,CAAC,CAAuB;IACzC,OAAO,CAAC,MAAM,CAAiB;IACxB,OAAO,EAAE,qBAAqB,CAAC;IACtC,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,eAAe,CAA0D;IACjF,OAAO,CAAC,YAAY,CAAoC;IACxD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG5B;gBAEU,OAAO,EAAE,qBAAqB;IAkB1C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAIjC,KAAK,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAsH/C;;;OAGG;IACH;;;;;;;;;;OAUG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;;OAGG;IACH,OAAO,CAAC,eAAe;YAST,mBAAmB;IAuBjC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAMtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA6D7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAwBhC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAoD5B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA0D7B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAkBnC;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAoBpC;;;;OAIG;YACW,wBAAwB;IAiFtC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAgBlC;;;OAGG;IACH,OAAO,CAAC,0CAA0C;IA+BlD;;;OAGG;IACH,OAAO,CAAC,2CAA2C;IAyCnD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,IAAI,GAAG,MAAM,IAAI;IAO3E;;;;OAIG;IACH,YAAY,IAAI,IAAI;IA6CpB;;OAEG;IACH,WAAW,IAAI,IAAI;CAOpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.frontmcp-schema.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.frontmcp-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAG,KAAc,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,kBAAkB,kBAAmB,CAAC;AACnD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAMxE;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;gCAWpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAM5E;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;gCAK9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;gCAKjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;gCAOhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAgCpE;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAC9B;AAMD,MAAM,WAAW,wBAAwB;IACvC,6DAA6D;IAC7D,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,IAAI,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACxC,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,wBAAwB,CAwC1B"}
1
+ {"version":3,"file":"openapi.frontmcp-schema.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.frontmcp-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,oBAAoB,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAG,KAAc,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,kBAAkB,kBAAmB,CAAC;AACnD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAMxE;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;gCAWpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAM5E;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;gCAK9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAMhE;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;gCAKjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;gCAOhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAkCpE;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;CAC9B;AAMD,MAAM,WAAW,wBAAwB;IACvC,6DAA6D;IAC7D,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,IAAI,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACxC,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,wBAAwB,CAwC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.tool.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAK1D,OAAO,KAAK,EAIV,qBAAqB,EAEtB,MAAM,iBAAiB,CAAC;AAMzB;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,cAAc,cAwTpH"}
1
+ {"version":3,"file":"openapi.tool.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAA2B,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAK7E,OAAO,KAAK,EAIV,qBAAqB,EAEtB,MAAM,iBAAiB,CAAC;AAMzB;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,cAAc,cA2UpH"}
@@ -1,7 +1,14 @@
1
- import type { GenerateOptions, LoadOptions, McpOpenAPITool, SecurityContext, ToolMetadata } from 'mcp-from-openapi';
1
+ import type { GenerateOptions, HTTPMethod, LoadOptions, McpOpenAPITool, SecurityContext, ToolMetadata } from 'mcp-from-openapi';
2
2
  import { type OpenAPIV3, type OpenAPIV3_1 } from 'openapi-types';
3
3
  import type { FrontMcpContext, FrontMcpLogger, ToolAnnotations, ToolExample, ToolUIConfig } from '@frontmcp/sdk';
4
4
  import type { SpecPollerOptions } from './openapi-spec-poller.types';
5
+ /** An HTTP method in any of its usual cases; `includeMethods` and `excludeMethods` ignore the case. */
6
+ export type OpenApiHttpMethod = HTTPMethod | Uppercase<HTTPMethod> | Capitalize<HTTPMethod>;
7
+ /** `GenerateOptions` from mcp-from-openapi, with method filters that take any case. */
8
+ export type OpenApiGenerateOptions = Omit<GenerateOptions, 'includeMethods' | 'excludeMethods'> & {
9
+ includeMethods?: OpenApiHttpMethod[];
10
+ excludeMethods?: OpenApiHttpMethod[];
11
+ };
5
12
  /**
6
13
  * Context available when injecting values at request time
7
14
  */
@@ -682,7 +689,7 @@ interface BaseOptions {
682
689
  * Options for generating tools from the OpenAPI specification
683
690
  * @see GenerateOptions from mcp-from-openapi
684
691
  */
685
- generateOptions?: GenerateOptions;
692
+ generateOptions?: OpenApiGenerateOptions;
686
693
  /**
687
694
  * Specify which security schemes should be included in the tool's input schema.
688
695
  * Use this for per-scheme control over authentication handling.
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.types.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi.types.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.utils.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAKzE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAgDD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAC1D,OAAO,EAAE,MAAM,GACd,aAAa,CA8Gf;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAMzG;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAKD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,EAAE,EAAE,OAAO,CAAC;IACZ,0CAA0C;IAC1C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC,CAgEhH"}
1
+ {"version":3,"file":"openapi.utils.d.ts","sourceRoot":"","sources":["../../src/openapi/openapi.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAKzE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAsDD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,EAC1D,OAAO,EAAE,MAAM,GACd,aAAa,CA8Gf;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAMzG;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAKD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,EAAE,EAAE,OAAO,CAAC;IACZ,0CAA0C;IAC1C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC,CAgEhH"}