@ivotoby/openapi-mcp-server 1.12.0 → 1.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.js CHANGED
@@ -14794,8 +14794,31 @@ var OpenAPISpecLoader = class {
14794
14794
  }
14795
14795
  }
14796
14796
  }
14797
- if (op.requestBody && "content" in op.requestBody) {
14798
- const requestBodyObj = op.requestBody;
14797
+ if (op.requestBody) {
14798
+ let requestBodyObj;
14799
+ if ("$ref" in op.requestBody && typeof op.requestBody.$ref === "string") {
14800
+ const refMatch = op.requestBody.$ref.match(/^#\/components\/requestBodies\/(.+)$/);
14801
+ if (refMatch && spec.components?.requestBodies) {
14802
+ const requestBodyName = refMatch[1];
14803
+ const resolvedRequestBody = spec.components.requestBodies[requestBodyName];
14804
+ if (resolvedRequestBody && "content" in resolvedRequestBody) {
14805
+ requestBodyObj = resolvedRequestBody;
14806
+ } else {
14807
+ console.warn(
14808
+ `Could not resolve requestBody reference or invalid structure: ${op.requestBody.$ref}`
14809
+ );
14810
+ continue;
14811
+ }
14812
+ } else {
14813
+ console.warn(`Could not parse requestBody reference: ${op.requestBody.$ref}`);
14814
+ continue;
14815
+ }
14816
+ } else if ("content" in op.requestBody) {
14817
+ requestBodyObj = op.requestBody;
14818
+ } else {
14819
+ console.warn("Skipping requestBody due to invalid structure:", op.requestBody);
14820
+ continue;
14821
+ }
14799
14822
  let mediaTypeObj;
14800
14823
  if (requestBodyObj.content["application/json"]) {
14801
14824
  mediaTypeObj = requestBodyObj.content["application/json"];
package/dist/cli.js CHANGED
@@ -14794,8 +14794,31 @@ var OpenAPISpecLoader = class {
14794
14794
  }
14795
14795
  }
14796
14796
  }
14797
- if (op.requestBody && "content" in op.requestBody) {
14798
- const requestBodyObj = op.requestBody;
14797
+ if (op.requestBody) {
14798
+ let requestBodyObj;
14799
+ if ("$ref" in op.requestBody && typeof op.requestBody.$ref === "string") {
14800
+ const refMatch = op.requestBody.$ref.match(/^#\/components\/requestBodies\/(.+)$/);
14801
+ if (refMatch && spec.components?.requestBodies) {
14802
+ const requestBodyName = refMatch[1];
14803
+ const resolvedRequestBody = spec.components.requestBodies[requestBodyName];
14804
+ if (resolvedRequestBody && "content" in resolvedRequestBody) {
14805
+ requestBodyObj = resolvedRequestBody;
14806
+ } else {
14807
+ console.warn(
14808
+ `Could not resolve requestBody reference or invalid structure: ${op.requestBody.$ref}`
14809
+ );
14810
+ continue;
14811
+ }
14812
+ } else {
14813
+ console.warn(`Could not parse requestBody reference: ${op.requestBody.$ref}`);
14814
+ continue;
14815
+ }
14816
+ } else if ("content" in op.requestBody) {
14817
+ requestBodyObj = op.requestBody;
14818
+ } else {
14819
+ console.warn("Skipping requestBody due to invalid structure:", op.requestBody);
14820
+ continue;
14821
+ }
14799
14822
  let mediaTypeObj;
14800
14823
  if (requestBodyObj.content["application/json"]) {
14801
14824
  mediaTypeObj = requestBodyObj.content["application/json"];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ivotoby/openapi-mcp-server",
3
- "version": "1.12.0",
3
+ "version": "1.12.1",
4
4
  "description": "An MCP server that exposes OpenAPI endpoints as resources",
5
5
  "license": "MIT",
6
6
  "type": "module",