@emcy/openapi-to-mcp 0.3.0 → 0.5.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/README.md CHANGED
@@ -1,13 +1,18 @@
1
1
  # @emcy/openapi-to-mcp
2
2
 
3
- Convert OpenAPI specifications into MCP runtimes.
3
+ Convert OpenAPI specifications into MCP servers.
4
+
5
+ Use this package when you want a quick way to turn an OpenAPI spec into a TypeScript MCP server.
6
+ If you want Emcy Gateway in front of that server, add `--use-emcy-gateway`.
4
7
 
5
8
  [![npm version](https://badge.fury.io/js/%40emcy%2Fopenapi-to-mcp.svg)](https://www.npmjs.com/package/@emcy/openapi-to-mcp)
6
9
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
7
10
 
8
11
  ## What it generates
9
12
 
10
- This package now supports three runtime shapes only:
13
+ This package generates TypeScript MCP servers.
14
+
15
+ Most users only need two shapes:
11
16
 
12
17
  1. `standalone_no_auth`
13
18
  - Public MCP server
@@ -19,10 +24,13 @@ This package now supports three runtime shapes only:
19
24
  - Injects static/custom headers into every upstream API request
20
25
  - Good for API keys, static bearer tokens, tenant headers, and similar patterns
21
26
 
22
- 3. `emcy_hosted_worker`
23
- - Private worker runtime behind Emcy
24
- - Emcy hosts the public MCP and OAuth surface
25
- - Good for OAuth-protected APIs where Emcy brokers user auth and forwards short-lived downstream access per execution
27
+ If you want Emcy Gateway in front of the generated server, opt into the Gateway integration:
28
+
29
+ - the generated server stays a TypeScript MCP server
30
+ - Emcy Gateway owns the public MCP and OAuth edge
31
+ - Emcy Host can run the server for you if you want managed hosting
32
+
33
+ FastMCP and other MCP runtimes can use Emcy Gateway too. This package is only for OpenAPI generation.
26
34
 
27
35
  The generator no longer produces standalone public OAuth resource servers and no longer supports bearer-token passthrough.
28
36
 
@@ -41,16 +49,16 @@ npx @emcy/openapi-to-mcp generate \
41
49
  --mode standalone-headers \
42
50
  --header X-API-Key=UPSTREAM_API_KEY
43
51
 
44
- # Emcy-hosted worker for an OAuth-protected app
52
+ # Generate a server and configure it for Emcy Gateway on an OAuth-protected app
45
53
  npx @emcy/openapi-to-mcp generate \
46
54
  --url ./openapi.yaml \
47
55
  --name my-app \
48
- --mode emcy-hosted-worker \
49
- --hosted-provider sqlos \
50
- --hosted-auth-server-url https://auth.example.com/sqlos/auth \
51
- --hosted-client-id todo-mcp-local \
52
- --hosted-resource https://api.example.com/todos \
53
- --hosted-scopes "openid profile email offline_access todos.read todos.write"
56
+ --use-emcy-gateway \
57
+ --gateway-provider sqlos \
58
+ --gateway-auth-server-url https://auth.example.com/sqlos/auth \
59
+ --gateway-client-id todo-mcp-local \
60
+ --gateway-resource https://api.example.com/todos \
61
+ --gateway-scopes "openid profile email offline_access todos.read todos.write"
54
62
  ```
55
63
 
56
64
  ## Installation
@@ -72,7 +80,7 @@ npx @emcy/openapi-to-mcp generate [options]
72
80
  | Option | Short | Description |
73
81
  | --- | --- | --- |
74
82
  | `--url` | `-u` | URL or file path to OpenAPI spec |
75
- | `--name` | `-n` | Name for the generated runtime |
83
+ | `--name` | `-n` | Name for the generated server |
76
84
  | `--output` | `-o` | Output directory |
77
85
  | `--base-url` | `-b` | Override the upstream API base URL |
78
86
  | `--version` | | Runtime version string |
@@ -80,13 +88,14 @@ npx @emcy/openapi-to-mcp generate [options]
80
88
  | `--local-sdk` | | Use a local `@emcy/sdk` path |
81
89
  | `--prompts-json` | | JSON array of MCP prompt definitions |
82
90
  | `--tool-instructions-json` | | JSON object keyed by tool key for tool-specific AI guidance |
83
- | `--mode` | | `standalone-no-auth`, `standalone-headers`, or `emcy-hosted-worker` |
91
+ | `--mode` | | Low-level runtime mode. Most users should only pass `standalone-no-auth` or `standalone-headers` directly |
92
+ | `--use-emcy-gateway` | | Generate a server preconfigured to use Emcy Gateway as the public MCP/OAuth edge |
84
93
  | `--header` | | Repeatable `Header-Name=ENV_VAR` mapping for upstream requests |
85
- | `--hosted-provider` | | Hosted OAuth provider recipe label for `emcy-hosted-worker` |
86
- | `--hosted-auth-server-url` | | Downstream authorization server issuer or metadata base URL |
87
- | `--hosted-client-id` | | Downstream client ID Emcy should use |
88
- | `--hosted-resource` | | Downstream API resource / audience |
89
- | `--hosted-scopes` | | Comma or space separated downstream scopes |
94
+ | `--gateway-provider` | | Emcy Gateway OAuth provider recipe label |
95
+ | `--gateway-auth-server-url` | | Downstream authorization server issuer or metadata base URL |
96
+ | `--gateway-client-id` | | Downstream client ID Emcy should use |
97
+ | `--gateway-resource` | | Downstream API resource / audience |
98
+ | `--gateway-scopes` | | Comma or space separated downstream scopes |
90
99
  | `--force` | `-f` | Overwrite the output directory |
91
100
 
92
101
  ### `validate`
@@ -95,7 +104,7 @@ npx @emcy/openapi-to-mcp generate [options]
95
104
  npx @emcy/openapi-to-mcp validate --url https://api.example.com/openapi.json
96
105
  ```
97
106
 
98
- ## Runtime Modes
107
+ ## Server Modes
99
108
 
100
109
  ### `standalone_no_auth`
101
110
 
@@ -137,26 +146,19 @@ Then set:
137
146
  UPSTREAM_AUTHORIZATION=Bearer eyJ...
138
147
  ```
139
148
 
140
- ### `emcy_hosted_worker`
141
-
142
- Use this when the upstream API is protected by OAuth and you want Emcy to host the MCP and OAuth surface.
143
-
144
- The generated runtime is not the public MCP server. It is the private worker Emcy calls after it has already:
149
+ ## Using Emcy Gateway
145
150
 
146
- - authenticated the MCP client
147
- - completed the downstream app OAuth flow
148
- - stored the downstream grant server-side
149
- - minted or loaded the short-lived downstream access token for the execution
151
+ Use this when the upstream API is protected by OAuth and you want Emcy Gateway to own the public MCP URL, OAuth flow, and client-facing discovery.
150
152
 
151
153
  ```bash
152
154
  npx @emcy/openapi-to-mcp generate \
153
155
  --url ./openapi.json \
154
- --mode emcy-hosted-worker \
155
- --hosted-provider sqlos \
156
- --hosted-auth-server-url https://auth.example.com/sqlos/auth \
157
- --hosted-client-id todo-mcp-local \
158
- --hosted-resource https://api.example.com/todos \
159
- --hosted-scopes "openid profile email offline_access todos.read todos.write"
156
+ --use-emcy-gateway \
157
+ --gateway-provider sqlos \
158
+ --gateway-auth-server-url https://auth.example.com/sqlos/auth \
159
+ --gateway-client-id todo-mcp-local \
160
+ --gateway-resource https://api.example.com/todos \
161
+ --gateway-scopes "openid profile email offline_access todos.read todos.write"
160
162
  ```
161
163
 
162
164
  This is the right mode for apps protected by systems like:
@@ -167,9 +169,18 @@ This is the right mode for apps protected by systems like:
167
169
  - Entra
168
170
  - generic OAuth/OIDC authorization servers
169
171
 
170
- ## Generated Runtime
172
+ Legacy compatibility:
171
173
 
172
- Every generated runtime includes:
174
+ - older `--mode emcy-gateway-worker` invocations still parse, but `--use-emcy-gateway` is the supported interface
175
+
176
+ Typical usage:
177
+
178
+ 1. generate a normal MCP server
179
+ 2. add `--use-emcy-gateway` when you want Emcy Gateway to become the public edge for that server
180
+
181
+ ## Generated Server
182
+
183
+ Every generated server includes:
173
184
 
174
185
  - TypeScript source
175
186
  - MCP tool bindings for the selected OpenAPI operations
@@ -202,22 +213,47 @@ const files = generateMcpServer(
202
213
  );
203
214
  ```
204
215
 
216
+ Gateway-backed generation:
217
+
218
+ ```ts
219
+ const files = generateMcpServer(
220
+ tools,
221
+ {
222
+ name: "my-api",
223
+ version: "1.0.0",
224
+ baseUrl: "https://api.example.com",
225
+ gatewayIntegration: {
226
+ provider: "emcy",
227
+ oauth: {
228
+ provider: "sqlos",
229
+ authorizationServerUrl: "https://auth.example.com/sqlos/auth",
230
+ clientId: "todo-mcp-local",
231
+ resource: "https://api.example.com/todos",
232
+ scopes: ["openid", "profile", "todos.read", "todos.write"],
233
+ },
234
+ },
235
+ },
236
+ parsed.securitySchemes
237
+ );
238
+ ```
239
+
205
240
  ## What this package does not do
206
241
 
207
242
  - It does not host a public OAuth authorization server for MCP clients.
208
243
  - It does not support forwarding end-user bearer tokens from the MCP client to the upstream API.
209
- - It does not try to replace Emcy's hosted auth/runtime layer for OAuth-protected apps.
244
+ - It does not try to replace Emcy Host or Emcy Gateway for OAuth-protected apps.
210
245
 
211
246
  ## Emcy
212
247
 
213
248
  Use Emcy when you want to turn an OAuth-protected API into:
214
249
 
215
- - a hosted MCP server
250
+ - a hosted runtime behind Emcy Host
251
+ - a gateway-managed public MCP/OAuth surface
216
252
  - an embedded agent
217
253
  - a workspace integration
218
254
  - an external client surface for tools like VS Code or Claude
219
255
 
220
- The open-source generator handles the runtime. Emcy handles the hosted auth and orchestration layer.
256
+ The open-source generator handles the runtime. Emcy Host runs it. Emcy Gateway handles the public auth and orchestration layer.
221
257
 
222
258
  ## License
223
259
 
@@ -1,18 +1,18 @@
1
1
  import { describe, expect, it } from "vitest";
2
- import { normalizeRuntimeMode, parseGeneratorCliConfig, parseHostedOauthConfig, parseToolInstructions, } from "../cli-config.js";
2
+ import { normalizeRuntimeMode, parseEmcyGatewayIntegration, parseGatewayOauthConfig, parseGeneratorCliConfig, parseToolInstructions, } from "../cli-config.js";
3
3
  describe("cli-config", () => {
4
4
  it("normalizes supported runtime modes", () => {
5
5
  expect(normalizeRuntimeMode("standalone-no-auth")).toBe("standalone_no_auth");
6
6
  expect(normalizeRuntimeMode("standalone_headers")).toBe("standalone_headers");
7
- expect(normalizeRuntimeMode("emcy-hosted-worker")).toBe("emcy_hosted_worker");
7
+ expect(normalizeRuntimeMode("emcy-gateway-worker")).toBe("emcy_gateway_worker");
8
8
  });
9
- it("parses hosted oauth config from explicit flags", () => {
10
- const config = parseHostedOauthConfig({
11
- "hosted-provider": "auth0",
12
- "hosted-auth-server-url": "https://auth.example.com",
13
- "hosted-client-id": "client_123",
14
- "hosted-resource": "https://api.example.com",
15
- "hosted-scopes": "openid profile email offline_access todos.read",
9
+ it("parses gateway oauth config from explicit flags", () => {
10
+ const config = parseGatewayOauthConfig({
11
+ "gateway-provider": "auth0",
12
+ "gateway-auth-server-url": "https://auth.example.com",
13
+ "gateway-client-id": "client_123",
14
+ "gateway-resource": "https://api.example.com",
15
+ "gateway-scopes": "openid profile email offline_access todos.read",
16
16
  });
17
17
  expect(config).toEqual({
18
18
  provider: "auth0",
@@ -33,9 +33,9 @@ describe("cli-config", () => {
33
33
  },
34
34
  });
35
35
  });
36
- it("builds generator CLI config for hosted workers", () => {
36
+ it("builds generator CLI config for gateway workers", () => {
37
37
  const parsed = parseGeneratorCliConfig({
38
- mode: "emcy-hosted-worker",
38
+ "use-emcy-gateway": true,
39
39
  "prompts-json": JSON.stringify([
40
40
  {
41
41
  name: "todo-summary",
@@ -48,26 +48,48 @@ describe("cli-config", () => {
48
48
  whenToUse: "When the user asks to list todos.",
49
49
  },
50
50
  }),
51
- "hosted-provider": "sqlos",
52
- "hosted-auth-server-url": "https://auth.example.com/sqlos/auth",
53
- "hosted-client-id": "todo-mcp-local",
54
- "hosted-resource": "https://api.example.com/todos",
55
- "hosted-scopes": "openid profile todos.read todos.write",
51
+ "gateway-provider": "sqlos",
52
+ "gateway-auth-server-url": "https://auth.example.com/sqlos/auth",
53
+ "gateway-client-id": "todo-mcp-local",
54
+ "gateway-resource": "https://api.example.com/todos",
55
+ "gateway-scopes": "openid profile todos.read todos.write",
56
56
  });
57
- expect(parsed.runtimeMode).toBe("emcy_hosted_worker");
57
+ expect(parsed.runtimeMode).toBe("emcy_gateway_worker");
58
58
  expect(parsed.prompts).toHaveLength(1);
59
59
  expect(parsed.toolInstructions).toEqual({
60
60
  get_api_todos: {
61
61
  whenToUse: "When the user asks to list todos.",
62
62
  },
63
63
  });
64
- expect(parsed.hostedOauthConfig).toEqual({
64
+ expect(parsed.gatewayOauthConfig).toEqual({
65
65
  provider: "sqlos",
66
66
  authorizationServerUrl: "https://auth.example.com/sqlos/auth",
67
67
  clientId: "todo-mcp-local",
68
68
  resource: "https://api.example.com/todos",
69
69
  scopes: ["openid", "profile", "todos.read", "todos.write"],
70
70
  });
71
+ expect(parsed.gatewayIntegration).toEqual({
72
+ provider: "emcy",
73
+ oauth: {
74
+ provider: "sqlos",
75
+ authorizationServerUrl: "https://auth.example.com/sqlos/auth",
76
+ clientId: "todo-mcp-local",
77
+ resource: "https://api.example.com/todos",
78
+ scopes: ["openid", "profile", "todos.read", "todos.write"],
79
+ },
80
+ });
81
+ });
82
+ it("parses emcy gateway integration from legacy runtime mode", () => {
83
+ const integration = parseEmcyGatewayIntegration({
84
+ mode: "emcy-gateway-worker",
85
+ "gateway-auth-server-url": "https://auth.example.com",
86
+ });
87
+ expect(integration).toEqual({
88
+ provider: "emcy",
89
+ oauth: {
90
+ authorizationServerUrl: "https://auth.example.com",
91
+ },
92
+ });
71
93
  });
72
94
  });
73
95
  //# sourceMappingURL=cli-config.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-config.test.js","sourceRoot":"","sources":["../../src/__tests__/cli-config.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-config.test.js","sourceRoot":"","sources":["../../src/__tests__/cli-config.test.ts"],"names":[],"mappings":"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"}
@@ -55,15 +55,30 @@ describe("generateMcpServer", () => {
55
55
  const envExample = files[".env.example"];
56
56
  expect(pkg.scripts.start).toBe("node build/index.js");
57
57
  expect(pkg.dependencies.jose).toBeUndefined();
58
- expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_hosted_worker";');
58
+ expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_gateway_worker";');
59
59
  expect(serverCode).toContain('const RUNTIME_MODE: RuntimeMode = "standalone_no_auth";');
60
- expect(serverCode).not.toContain("HOSTED_WORKER_CONFIG");
60
+ expect(serverCode).not.toContain("GATEWAY_WORKER_CONFIG");
61
61
  expect(transportCode).toContain('public_server: true');
62
62
  expect(transportCode).not.toContain("protected-resource-metadata");
63
63
  expect(envExample).toContain("API_BASE_URL=http://localhost:3000");
64
64
  expect(envExample).not.toContain("FORWARD_CLIENT_TOKEN");
65
65
  expect(envExample).not.toContain("OAUTH_AUTHORIZATION_SERVER");
66
66
  });
67
+ it("folds tool instructions into generated tool descriptions", () => {
68
+ const files = generateMcpServer([sampleTool], {
69
+ ...baseOptions,
70
+ toolInstructions: {
71
+ getUsers: {
72
+ whenToUse: "Use when the user asks to list users.",
73
+ whenNotToUse: "Do not use for creating users.",
74
+ },
75
+ },
76
+ });
77
+ const serverCode = files["src/index.ts"];
78
+ expect(serverCode).toContain("AI usage guidance:");
79
+ expect(serverCode).toContain("When to use: Use when the user asks to list users.");
80
+ expect(serverCode).toContain("When not to use: Do not use for creating users.");
81
+ });
67
82
  it("generates standalone header injection runtimes", () => {
68
83
  const files = generateMcpServer([
69
84
  {
@@ -93,7 +108,7 @@ describe("generateMcpServer", () => {
93
108
  const serverCode = files["src/index.ts"];
94
109
  const envExample = files[".env.example"];
95
110
  const readme = files["README.md"];
96
- expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_hosted_worker";');
111
+ expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_gateway_worker";');
97
112
  expect(serverCode).toContain('const RUNTIME_MODE: RuntimeMode = "standalone_headers";');
98
113
  expect(serverCode).toContain('"envVar": "UPSTREAM_API_KEY"');
99
114
  expect(serverCode).toContain('"envVar": "UPSTREAM_TOKEN"');
@@ -106,17 +121,19 @@ describe("generateMcpServer", () => {
106
121
  expect(readme).toContain("injects static headers");
107
122
  expect(envExample).not.toContain("FORWARD_CLIENT_TOKEN");
108
123
  });
109
- it("generates Emcy hosted workers without public OAuth behavior", () => {
124
+ it("generates Emcy gateway workers without public OAuth behavior", () => {
110
125
  const files = generateMcpServer([], {
111
126
  ...baseOptions,
112
- runtimeMode: "emcy_hosted_worker",
113
- hostedWorkerConfig: {},
114
- hostedOauthConfig: {
115
- provider: "sqlos",
116
- authorizationServerUrl: "https://auth.example.com/sqlos/auth",
117
- clientId: "todo-mcp-local",
118
- resource: "https://api.example.com/todos",
119
- scopes: ["openid", "profile", "todos.read", "todos.write"],
127
+ gatewayIntegration: {
128
+ provider: "emcy",
129
+ worker: {},
130
+ oauth: {
131
+ provider: "sqlos",
132
+ authorizationServerUrl: "https://auth.example.com/sqlos/auth",
133
+ clientId: "todo-mcp-local",
134
+ resource: "https://api.example.com/todos",
135
+ scopes: ["openid", "profile", "todos.read", "todos.write"],
136
+ },
120
137
  },
121
138
  toolInstructions: {
122
139
  get_api_todos: {
@@ -130,31 +147,33 @@ describe("generateMcpServer", () => {
130
147
  const envExample = files[".env.example"];
131
148
  const readme = files["README.md"];
132
149
  expect(pkg.scripts.start).toBe("node build/index.js --transport=streamable-http");
133
- expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_hosted_worker";');
134
- expect(serverCode).toContain('const RUNTIME_MODE: RuntimeMode = "emcy_hosted_worker";');
135
- expect(serverCode).toContain("const HOSTED_WORKER_CONFIG = {");
136
- expect(serverCode).toContain("const HOSTED_OAUTH_CONFIG: RuntimeHostedOauthConfig | null = {");
150
+ expect(serverCode).toContain('type RuntimeMode = "standalone_no_auth" | "standalone_headers" | "emcy_gateway_worker";');
151
+ expect(serverCode).toContain('const RUNTIME_MODE: RuntimeMode = "emcy_gateway_worker";');
152
+ expect(serverCode).toContain("const GATEWAY_WORKER_CONFIG = {");
153
+ expect(serverCode).toContain("const GATEWAY_OAUTH_CONFIG: RuntimeGatewayOauthConfig | null = {");
137
154
  expect(serverCode).toContain("const TOOL_INSTRUCTIONS: Record<string, RuntimeToolInstruction> = {");
138
- expect(serverCode).toContain("applyHostedWorkerAccessToken");
155
+ expect(serverCode).toContain("applyGatewayWorkerAccessToken");
139
156
  expect(transportCode).toContain('app.use("/mcp", async (c, next) => {');
140
157
  expect(transportCode).toContain("x-emcy-worker-secret");
141
158
  expect(transportCode).toContain("x-emcy-upstream-access-token");
142
159
  expect(transportCode).not.toContain("protected-resource-metadata");
143
160
  expect(envExample).toContain("EMCY_WORKER_SHARED_SECRET=change-me");
144
161
  expect(envExample).toContain("# Authorization server: https://auth.example.com/sqlos/auth");
145
- expect(readme).toContain("Hosted worker runtime");
146
- expect(readme).toContain("Emcy owns the public MCP URL and OAuth flow");
147
- expect(readme).toContain("Hosted OAuth config: sqlos");
162
+ expect(readme).toContain("Gateway-enabled MCP runtime generated from an OpenAPI specification by [Emcy](https://emcy.ai).");
163
+ expect(readme).toContain("This runtime is meant to be used with Emcy Gateway as the public MCP and OAuth edge.");
164
+ expect(readme).toContain("Gateway OAuth reference: sqlos");
148
165
  expect(readme).toContain("Tool instructions configured for: get_api_todos");
149
166
  });
150
167
  it("does not emit invalid const assertions for empty hosted config", () => {
151
168
  const files = generateMcpServer([], {
152
169
  ...baseOptions,
153
- runtimeMode: "emcy_hosted_worker",
154
- hostedWorkerConfig: {},
170
+ gatewayIntegration: {
171
+ provider: "emcy",
172
+ worker: {},
173
+ },
155
174
  });
156
175
  const serverCode = files["src/index.ts"];
157
- expect(serverCode).toContain("const HOSTED_OAUTH_CONFIG: RuntimeHostedOauthConfig | null = null;");
176
+ expect(serverCode).toContain("const GATEWAY_OAUTH_CONFIG: RuntimeGatewayOauthConfig | null = null;");
158
177
  expect(serverCode).toContain("const TOOL_INSTRUCTIONS: Record<string, RuntimeToolInstruction> = {};");
159
178
  expect(serverCode).not.toContain("null as const");
160
179
  expect(serverCode).not.toContain("{} as const");
@@ -1 +1 @@
1
- {"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../src/__tests__/generator.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../src/__tests__/generator.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,MAAM,WAAW,GAAqB;QACpC,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,uBAAuB;KACjC,CAAC;IAEF,MAAM,UAAU,GAAsB;QACpC,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;QAC/C,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,QAAQ;QACtB,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,EAAE;QACnB,cAAc,EAAE,EAAE;KACnB,CAAC;IAEF,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;YACjC,cAAc;YACd,eAAe;YACf,cAAc;YACd,kBAAkB;YAClB,cAAc;YACd,WAAW;SACZ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QAEzC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,2CAA2C,CAAC,CAAC;QAC1E,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE;YAClC,GAAG,WAAW;YACd,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAE9C,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QAEzC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACtD,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yFAAyF,CAAC,CAAC;QACxH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yDAAyD,CAAC,CAAC;QACxF,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAC1D,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QACvD,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QACnE,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAC;QACnE,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,UAAU,CAAC,EAAE;YAC5C,GAAG,WAAW;YACd,gBAAgB,EAAE;gBAChB,QAAQ,EAAE;oBACR,SAAS,EAAE,uCAAuC;oBAClD,YAAY,EAAE,gCAAgC;iBAC/C;aACF;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QAEzC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,oDAAoD,CAAC,CAAC;QACnF,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,iDAAiD,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,KAAK,GAAG,iBAAiB,CAC7B;YACE;gBACE,GAAG,UAAU;gBACb,eAAe,EAAE,CAAC,YAAY,CAAC;aAChC;SACF,EACD;YACE,GAAG,WAAW;YACd,WAAW,EAAE,oBAAoB;YACjC,eAAe,EAAE;gBACf;oBACE,IAAI,EAAE,WAAW;oBACjB,MAAM,EAAE,kBAAkB;iBAC3B;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,MAAM,EAAE,gBAAgB;oBACxB,WAAW,EAAE,QAAQ;iBACtB;aACF;SACF,EACD;YACE,UAAU,EAAE;gBACV,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,QAAQ;aACjB;SACF,CACF,CAAC;QAEF,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;QAElC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yFAAyF,CAAC,CAAC;QACxH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yDAAyD,CAAC,CAAC;QACxF,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;QAC7D,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAC3D,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,4CAA4C,CAAC,CAAC;QAC3E,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACxE,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAClD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE;YAClC,GAAG,WAAW;YACd,kBAAkB,EAAE;gBAClB,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE;oBACL,QAAQ,EAAE,OAAO;oBACjB,sBAAsB,EAAE,qCAAqC;oBAC7D,QAAQ,EAAE,gBAAgB;oBAC1B,QAAQ,EAAE,+BAA+B;oBACzC,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,CAAC;iBAC3D;aACF;YACD,gBAAgB,EAAE;gBAChB,aAAa,EAAE;oBACb,SAAS,EAAE,uCAAuC;iBACnD;aACF;SACF,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;QAElC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAClF,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,yFAAyF,CAAC,CAAC;QACxH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,0DAA0D,CAAC,CAAC;QACzF,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;QAChE,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,kEAAkE,CAAC,CAAC;QACjG,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,qEAAqE,CAAC,CAAC;QACpG,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;QAC9D,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACxE,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACxD,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;QAChE,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QACnE,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;QACpE,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,6DAA6D,CAAC,CAAC;QAC5F,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,iGAAiG,CAAC,CAAC;QAC5H,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,sFAAsF,CAAC,CAAC;QACjH,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,iDAAiD,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE;YAClC,GAAG,WAAW;YACd,kBAAkB,EAAE;gBAClB,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,EAAE;aACX;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QAEzC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAC1B,sEAAsE,CACvE,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAC1B,uEAAuE,CACxE,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAClD,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,KAAK,GAAG,iBAAiB,CAC7B;YACE,UAAU;YACV;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC/C,QAAQ,EAAE,CAAC,aAAa,CAAC;iBAC1B;gBACD,UAAU,EAAE,MAAM;gBAClB,YAAY,EAAE,QAAQ;gBACtB,UAAU,EAAE,EAAE;gBACd,sBAAsB,EAAE,kBAAkB;gBAC1C,eAAe,EAAE,EAAE;gBACnB,cAAc,EAAE,EAAE;aACnB;SACF,EACD,WAAW,CACZ,CAAC;QAEF,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAC9C,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,4CAA4C,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,EAAE;YAClC,GAAG,WAAW;YACd,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EAAE,iBAAiB;oBAC9B,OAAO,EAAE,qBAAqB;oBAC9B,SAAS,EAAE;wBACT;4BACE,IAAI,EAAE,OAAO;4BACb,WAAW,EAAE,oBAAoB;4BACjC,QAAQ,EAAE,IAAI;yBACf;qBACF;iBACF;aACF;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;QACvD,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -109,6 +109,7 @@ describe('mapToMcpTools', () => {
109
109
  requestBody: {
110
110
  required: true,
111
111
  contentType: 'application/json',
112
+ description: 'Desired fields for the new user.',
112
113
  schema: {
113
114
  type: 'object',
114
115
  properties: {
@@ -127,6 +128,15 @@ describe('mapToMcpTools', () => {
127
128
  expect(tools[0].inputSchema.properties?.requestBody).toBeDefined();
128
129
  expect(tools[0].inputSchema.required).toContain('requestBody');
129
130
  expect(tools[0].requestBodyContentType).toBe('application/json');
131
+ expect(tools[0].inputSchema.properties?.requestBody).toEqual({
132
+ type: 'object',
133
+ properties: {
134
+ name: { type: 'string' },
135
+ email: { type: 'string' },
136
+ },
137
+ required: ['name', 'email'],
138
+ description: 'Desired fields for the new user.',
139
+ });
130
140
  });
131
141
  it('should include description from endpoint', () => {
132
142
  const endpoints = [
@@ -1 +1 @@
1
- {"version":3,"file":"mapper.test.js","sourceRoot":"","sources":["../../src/__tests__/mapper.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapper.test.js","sourceRoot":"","sources":["../../src/__tests__/mapper.test.ts"],"names":[],"mappings":"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"}
@@ -161,6 +161,7 @@ describe('parseOpenAPI', () => {
161
161
  '/users': {
162
162
  post: {
163
163
  requestBody: {
164
+ description: 'Fields used to create a user.',
164
165
  required: true,
165
166
  content: {
166
167
  'application/json': {
@@ -183,6 +184,7 @@ describe('parseOpenAPI', () => {
183
184
  expect(result.endpoints[0].requestBody).toBeDefined();
184
185
  expect(result.endpoints[0].requestBody?.required).toBe(true);
185
186
  expect(result.endpoints[0].requestBody?.contentType).toBe('application/json');
187
+ expect(result.endpoints[0].requestBody?.description).toBe('Fields used to create a user.');
186
188
  expect(result.endpoints[0].requestBody?.schema.type).toBe('object');
187
189
  });
188
190
  it('should parse security schemes', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.test.js","sourceRoot":"","sources":["../../src/__tests__/parser.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAElF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9D,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACnF,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC5F,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAC3H,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC1F,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9D,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE;gBACJ,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,OAAO;aACjB;YACD,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,QAAQ,EAAE;oBACR,GAAG,EAAE;wBACH,OAAO,EAAE,eAAe;wBACxB,WAAW,EAAE,UAAU;qBACxB;oBACD,IAAI,EAAE;wBACJ,OAAO,EAAE,aAAa;wBACtB,WAAW,EAAE,YAAY;qBAC1B;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC;QAC1E,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEhD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,YAAY,CAAC,CAAC;QAC9E,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QACjC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,gBAAgB,EAAE;oBAChB,GAAG,EAAE;wBACH,OAAO,EAAE,aAAa;qBACvB;oBACD,MAAM,EAAE,EAAE;iBACX;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEzC,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;QAClE,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAExD,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QACxE,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,iBAAiB,EAAE;oBACjB,GAAG,EAAE;wBACH,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,QAAQ;gCACd,EAAE,EAAE,MAAM;gCACV,QAAQ,EAAE,IAAI;gCACd,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gCAC3B,WAAW,EAAE,SAAS;6BACvB;yBACF;qBACF;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAChD,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,MAAM;YACV,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3B,WAAW,EAAE,SAAS;SACvB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,QAAQ,EAAE;oBACR,GAAG,EAAE;wBACH,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,OAAO;gCACb,EAAE,EAAE,OAAO;gCACX,QAAQ,EAAE,KAAK;gCACf,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;6BACzC;4BACD;gCACE,IAAI,EAAE,QAAQ;gCACd,EAAE,EAAE,OAAO;gCACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;6BAC5B;yBACF;qBACF;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,QAAQ,EAAE;oBACR,IAAI,EAAE;wBACJ,WAAW,EAAE;4BACX,QAAQ,EAAE,IAAI;4BACd,OAAO,EAAE;gCACP,kBAAkB,EAAE;oCAClB,MAAM,EAAE;wCACN,IAAI,EAAE,QAAQ;wCACd,UAAU,EAAE;4CACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4CACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC1B;wCACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;qCAC5B;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC9E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE;gBACL,SAAS,EAAE;oBACT,GAAG,EAAE;wBACH,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;qBAC3B;iBACF;aACF;YACD,UAAU,EAAE;gBACV,eAAe,EAAE;oBACf,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,WAAW;wBACjB,EAAE,EAAE,QAAQ;qBACb;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YAC5C,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,WAAW;YACjB,EAAE,EAAE,QAAQ;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,4BAA4B,EAAE,CAAC;YAChD,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAExC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE;YAC7C,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,IAAI,GAAG;YACX,mCAAmC;YACnC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;YAC3B,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"parser.test.js","sourceRoot":"","sources":["../../src/__tests__/parser.test.ts"],"names":[],"mappings":"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"}