@imagekit/api-mcp 7.2.2 → 7.4.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.
Files changed (144) hide show
  1. package/auth.d.mts +6 -0
  2. package/auth.d.mts.map +1 -0
  3. package/auth.d.ts +6 -0
  4. package/auth.d.ts.map +1 -0
  5. package/{headers.mjs → auth.js} +21 -2
  6. package/auth.js.map +1 -0
  7. package/{headers.js → auth.mjs} +16 -6
  8. package/auth.mjs.map +1 -0
  9. package/code-tool-paths.cjs +8 -0
  10. package/code-tool-paths.cjs.map +1 -0
  11. package/code-tool-paths.d.cts +2 -0
  12. package/code-tool-paths.d.cts.map +1 -0
  13. package/code-tool-types.d.mts.map +1 -1
  14. package/code-tool-types.d.ts.map +1 -1
  15. package/code-tool-worker.d.mts +5 -0
  16. package/code-tool-worker.d.mts.map +1 -0
  17. package/code-tool-worker.d.ts +5 -0
  18. package/code-tool-worker.d.ts.map +1 -0
  19. package/code-tool-worker.js +314 -0
  20. package/code-tool-worker.js.map +1 -0
  21. package/code-tool-worker.mjs +276 -0
  22. package/code-tool-worker.mjs.map +1 -0
  23. package/code-tool.d.mts +11 -2
  24. package/code-tool.d.mts.map +1 -1
  25. package/code-tool.d.ts +11 -2
  26. package/code-tool.d.ts.map +1 -1
  27. package/code-tool.js +285 -42
  28. package/code-tool.js.map +1 -1
  29. package/code-tool.mjs +253 -43
  30. package/code-tool.mjs.map +1 -1
  31. package/docs-search-tool.d.mts +11 -3
  32. package/docs-search-tool.d.mts.map +1 -1
  33. package/docs-search-tool.d.ts +11 -3
  34. package/docs-search-tool.d.ts.map +1 -1
  35. package/docs-search-tool.js +58 -5
  36. package/docs-search-tool.js.map +1 -1
  37. package/docs-search-tool.mjs +57 -5
  38. package/docs-search-tool.mjs.map +1 -1
  39. package/http.d.mts +6 -3
  40. package/http.d.mts.map +1 -1
  41. package/http.d.ts +6 -3
  42. package/http.d.ts.map +1 -1
  43. package/http.js +130 -28
  44. package/http.js.map +1 -1
  45. package/http.mjs +130 -28
  46. package/http.mjs.map +1 -1
  47. package/index.js +17 -12
  48. package/index.js.map +1 -1
  49. package/index.mjs +17 -12
  50. package/index.mjs.map +1 -1
  51. package/instructions.d.mts +5 -0
  52. package/instructions.d.mts.map +1 -0
  53. package/instructions.d.ts +5 -0
  54. package/instructions.d.ts.map +1 -0
  55. package/instructions.js +61 -0
  56. package/instructions.js.map +1 -0
  57. package/instructions.mjs +55 -0
  58. package/instructions.mjs.map +1 -0
  59. package/local-docs-search.d.mts +28 -0
  60. package/local-docs-search.d.mts.map +1 -0
  61. package/local-docs-search.d.ts +28 -0
  62. package/local-docs-search.d.ts.map +1 -0
  63. package/local-docs-search.js +2807 -0
  64. package/local-docs-search.js.map +1 -0
  65. package/local-docs-search.mjs +2767 -0
  66. package/local-docs-search.mjs.map +1 -0
  67. package/logger.d.mts +7 -0
  68. package/logger.d.mts.map +1 -0
  69. package/logger.d.ts +7 -0
  70. package/logger.d.ts.map +1 -0
  71. package/logger.js +29 -0
  72. package/logger.js.map +1 -0
  73. package/logger.mjs +22 -0
  74. package/logger.mjs.map +1 -0
  75. package/methods.d.mts +10 -0
  76. package/methods.d.mts.map +1 -0
  77. package/methods.d.ts +10 -0
  78. package/methods.d.ts.map +1 -0
  79. package/methods.js +349 -0
  80. package/methods.js.map +1 -0
  81. package/methods.mjs +345 -0
  82. package/methods.mjs.map +1 -0
  83. package/options.d.mts +12 -0
  84. package/options.d.mts.map +1 -1
  85. package/options.d.ts +12 -0
  86. package/options.d.ts.map +1 -1
  87. package/options.js +81 -12
  88. package/options.js.map +1 -1
  89. package/options.mjs +81 -12
  90. package/options.mjs.map +1 -1
  91. package/package.json +89 -15
  92. package/server.d.mts +18 -11
  93. package/server.d.mts.map +1 -1
  94. package/server.d.ts +18 -11
  95. package/server.d.ts.map +1 -1
  96. package/server.js +89 -49
  97. package/server.js.map +1 -1
  98. package/server.mjs +88 -45
  99. package/server.mjs.map +1 -1
  100. package/src/{headers.ts → auth.ts} +18 -1
  101. package/src/code-tool-paths.cts +5 -0
  102. package/src/code-tool-types.ts +1 -0
  103. package/src/code-tool-worker.ts +327 -0
  104. package/src/code-tool.ts +339 -55
  105. package/src/docs-search-tool.ts +86 -7
  106. package/src/http.ts +154 -33
  107. package/src/index.ts +19 -13
  108. package/src/instructions.ts +83 -0
  109. package/src/local-docs-search.ts +3380 -0
  110. package/src/logger.ts +28 -0
  111. package/src/methods.ts +370 -0
  112. package/src/options.ts +105 -12
  113. package/src/server.ts +111 -57
  114. package/src/stdio.ts +9 -4
  115. package/src/types.ts +15 -4
  116. package/src/util.ts +25 -0
  117. package/stdio.d.mts +2 -1
  118. package/stdio.d.mts.map +1 -1
  119. package/stdio.d.ts +2 -1
  120. package/stdio.d.ts.map +1 -1
  121. package/stdio.js +8 -4
  122. package/stdio.js.map +1 -1
  123. package/stdio.mjs +8 -4
  124. package/stdio.mjs.map +1 -1
  125. package/types.d.mts +14 -1
  126. package/types.d.mts.map +1 -1
  127. package/types.d.ts +14 -1
  128. package/types.d.ts.map +1 -1
  129. package/types.js.map +1 -1
  130. package/types.mjs.map +1 -1
  131. package/util.d.mts +4 -0
  132. package/util.d.mts.map +1 -0
  133. package/util.d.ts +4 -0
  134. package/util.d.ts.map +1 -0
  135. package/util.js +30 -0
  136. package/util.js.map +1 -0
  137. package/util.mjs +24 -0
  138. package/util.mjs.map +1 -0
  139. package/headers.d.mts +0 -4
  140. package/headers.d.mts.map +0 -1
  141. package/headers.d.ts +0 -4
  142. package/headers.d.ts.map +0 -1
  143. package/headers.js.map +0 -1
  144. package/headers.mjs.map +0 -1
package/methods.mjs ADDED
@@ -0,0 +1,345 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ export const sdkMethods = [
3
+ {
4
+ clientCallName: 'client.customMetadataFields.create',
5
+ fullyQualifiedName: 'customMetadataFields.create',
6
+ httpMethod: 'post',
7
+ httpPath: '/v1/customMetadataFields',
8
+ },
9
+ {
10
+ clientCallName: 'client.customMetadataFields.update',
11
+ fullyQualifiedName: 'customMetadataFields.update',
12
+ httpMethod: 'patch',
13
+ httpPath: '/v1/customMetadataFields/{id}',
14
+ },
15
+ {
16
+ clientCallName: 'client.customMetadataFields.list',
17
+ fullyQualifiedName: 'customMetadataFields.list',
18
+ httpMethod: 'get',
19
+ httpPath: '/v1/customMetadataFields',
20
+ },
21
+ {
22
+ clientCallName: 'client.customMetadataFields.delete',
23
+ fullyQualifiedName: 'customMetadataFields.delete',
24
+ httpMethod: 'delete',
25
+ httpPath: '/v1/customMetadataFields/{id}',
26
+ },
27
+ {
28
+ clientCallName: 'client.files.update',
29
+ fullyQualifiedName: 'files.update',
30
+ httpMethod: 'patch',
31
+ httpPath: '/v1/files/{fileId}/details',
32
+ },
33
+ {
34
+ clientCallName: 'client.files.delete',
35
+ fullyQualifiedName: 'files.delete',
36
+ httpMethod: 'delete',
37
+ httpPath: '/v1/files/{fileId}',
38
+ },
39
+ {
40
+ clientCallName: 'client.files.copy',
41
+ fullyQualifiedName: 'files.copy',
42
+ httpMethod: 'post',
43
+ httpPath: '/v1/files/copy',
44
+ },
45
+ {
46
+ clientCallName: 'client.files.get',
47
+ fullyQualifiedName: 'files.get',
48
+ httpMethod: 'get',
49
+ httpPath: '/v1/files/{fileId}/details',
50
+ },
51
+ {
52
+ clientCallName: 'client.files.move',
53
+ fullyQualifiedName: 'files.move',
54
+ httpMethod: 'post',
55
+ httpPath: '/v1/files/move',
56
+ },
57
+ {
58
+ clientCallName: 'client.files.rename',
59
+ fullyQualifiedName: 'files.rename',
60
+ httpMethod: 'put',
61
+ httpPath: '/v1/files/rename',
62
+ },
63
+ {
64
+ clientCallName: 'client.files.upload',
65
+ fullyQualifiedName: 'files.upload',
66
+ httpMethod: 'post',
67
+ httpPath: '/api/v1/files/upload',
68
+ },
69
+ {
70
+ clientCallName: 'client.files.bulk.delete',
71
+ fullyQualifiedName: 'files.bulk.delete',
72
+ httpMethod: 'post',
73
+ httpPath: '/v1/files/batch/deleteByFileIds',
74
+ },
75
+ {
76
+ clientCallName: 'client.files.bulk.addTags',
77
+ fullyQualifiedName: 'files.bulk.addTags',
78
+ httpMethod: 'post',
79
+ httpPath: '/v1/files/addTags',
80
+ },
81
+ {
82
+ clientCallName: 'client.files.bulk.removeAITags',
83
+ fullyQualifiedName: 'files.bulk.removeAITags',
84
+ httpMethod: 'post',
85
+ httpPath: '/v1/files/removeAITags',
86
+ },
87
+ {
88
+ clientCallName: 'client.files.bulk.removeTags',
89
+ fullyQualifiedName: 'files.bulk.removeTags',
90
+ httpMethod: 'post',
91
+ httpPath: '/v1/files/removeTags',
92
+ },
93
+ {
94
+ clientCallName: 'client.files.versions.list',
95
+ fullyQualifiedName: 'files.versions.list',
96
+ httpMethod: 'get',
97
+ httpPath: '/v1/files/{fileId}/versions',
98
+ },
99
+ {
100
+ clientCallName: 'client.files.versions.delete',
101
+ fullyQualifiedName: 'files.versions.delete',
102
+ httpMethod: 'delete',
103
+ httpPath: '/v1/files/{fileId}/versions/{versionId}',
104
+ },
105
+ {
106
+ clientCallName: 'client.files.versions.get',
107
+ fullyQualifiedName: 'files.versions.get',
108
+ httpMethod: 'get',
109
+ httpPath: '/v1/files/{fileId}/versions/{versionId}',
110
+ },
111
+ {
112
+ clientCallName: 'client.files.versions.restore',
113
+ fullyQualifiedName: 'files.versions.restore',
114
+ httpMethod: 'put',
115
+ httpPath: '/v1/files/{fileId}/versions/{versionId}/restore',
116
+ },
117
+ {
118
+ clientCallName: 'client.files.metadata.get',
119
+ fullyQualifiedName: 'files.metadata.get',
120
+ httpMethod: 'get',
121
+ httpPath: '/v1/files/{fileId}/metadata',
122
+ },
123
+ {
124
+ clientCallName: 'client.files.metadata.getFromURL',
125
+ fullyQualifiedName: 'files.metadata.getFromURL',
126
+ httpMethod: 'get',
127
+ httpPath: '/v1/metadata',
128
+ },
129
+ {
130
+ clientCallName: 'client.savedExtensions.create',
131
+ fullyQualifiedName: 'savedExtensions.create',
132
+ httpMethod: 'post',
133
+ httpPath: '/v1/saved-extensions',
134
+ },
135
+ {
136
+ clientCallName: 'client.savedExtensions.update',
137
+ fullyQualifiedName: 'savedExtensions.update',
138
+ httpMethod: 'patch',
139
+ httpPath: '/v1/saved-extensions/{id}',
140
+ },
141
+ {
142
+ clientCallName: 'client.savedExtensions.list',
143
+ fullyQualifiedName: 'savedExtensions.list',
144
+ httpMethod: 'get',
145
+ httpPath: '/v1/saved-extensions',
146
+ },
147
+ {
148
+ clientCallName: 'client.savedExtensions.delete',
149
+ fullyQualifiedName: 'savedExtensions.delete',
150
+ httpMethod: 'delete',
151
+ httpPath: '/v1/saved-extensions/{id}',
152
+ },
153
+ {
154
+ clientCallName: 'client.savedExtensions.get',
155
+ fullyQualifiedName: 'savedExtensions.get',
156
+ httpMethod: 'get',
157
+ httpPath: '/v1/saved-extensions/{id}',
158
+ },
159
+ {
160
+ clientCallName: 'client.assets.list',
161
+ fullyQualifiedName: 'assets.list',
162
+ httpMethod: 'get',
163
+ httpPath: '/v1/files',
164
+ },
165
+ {
166
+ clientCallName: 'client.cache.invalidation.create',
167
+ fullyQualifiedName: 'cache.invalidation.create',
168
+ httpMethod: 'post',
169
+ httpPath: '/v1/files/purge',
170
+ },
171
+ {
172
+ clientCallName: 'client.cache.invalidation.get',
173
+ fullyQualifiedName: 'cache.invalidation.get',
174
+ httpMethod: 'get',
175
+ httpPath: '/v1/files/purge/{requestId}',
176
+ },
177
+ {
178
+ clientCallName: 'client.folders.create',
179
+ fullyQualifiedName: 'folders.create',
180
+ httpMethod: 'post',
181
+ httpPath: '/v1/folder',
182
+ },
183
+ {
184
+ clientCallName: 'client.folders.delete',
185
+ fullyQualifiedName: 'folders.delete',
186
+ httpMethod: 'delete',
187
+ httpPath: '/v1/folder',
188
+ },
189
+ {
190
+ clientCallName: 'client.folders.copy',
191
+ fullyQualifiedName: 'folders.copy',
192
+ httpMethod: 'post',
193
+ httpPath: '/v1/bulkJobs/copyFolder',
194
+ },
195
+ {
196
+ clientCallName: 'client.folders.move',
197
+ fullyQualifiedName: 'folders.move',
198
+ httpMethod: 'post',
199
+ httpPath: '/v1/bulkJobs/moveFolder',
200
+ },
201
+ {
202
+ clientCallName: 'client.folders.rename',
203
+ fullyQualifiedName: 'folders.rename',
204
+ httpMethod: 'post',
205
+ httpPath: '/v1/bulkJobs/renameFolder',
206
+ },
207
+ {
208
+ clientCallName: 'client.folders.job.get',
209
+ fullyQualifiedName: 'folders.job.get',
210
+ httpMethod: 'get',
211
+ httpPath: '/v1/bulkJobs/{jobId}',
212
+ },
213
+ {
214
+ clientCallName: 'client.accounts.usage.get',
215
+ fullyQualifiedName: 'accounts.usage.get',
216
+ httpMethod: 'get',
217
+ httpPath: '/v1/accounts/usage',
218
+ },
219
+ {
220
+ clientCallName: 'client.accounts.origins.create',
221
+ fullyQualifiedName: 'accounts.origins.create',
222
+ httpMethod: 'post',
223
+ httpPath: '/v1/accounts/origins',
224
+ },
225
+ {
226
+ clientCallName: 'client.accounts.origins.update',
227
+ fullyQualifiedName: 'accounts.origins.update',
228
+ httpMethod: 'put',
229
+ httpPath: '/v1/accounts/origins/{id}',
230
+ },
231
+ {
232
+ clientCallName: 'client.accounts.origins.list',
233
+ fullyQualifiedName: 'accounts.origins.list',
234
+ httpMethod: 'get',
235
+ httpPath: '/v1/accounts/origins',
236
+ },
237
+ {
238
+ clientCallName: 'client.accounts.origins.delete',
239
+ fullyQualifiedName: 'accounts.origins.delete',
240
+ httpMethod: 'delete',
241
+ httpPath: '/v1/accounts/origins/{id}',
242
+ },
243
+ {
244
+ clientCallName: 'client.accounts.origins.get',
245
+ fullyQualifiedName: 'accounts.origins.get',
246
+ httpMethod: 'get',
247
+ httpPath: '/v1/accounts/origins/{id}',
248
+ },
249
+ {
250
+ clientCallName: 'client.accounts.urlEndpoints.create',
251
+ fullyQualifiedName: 'accounts.urlEndpoints.create',
252
+ httpMethod: 'post',
253
+ httpPath: '/v1/accounts/url-endpoints',
254
+ },
255
+ {
256
+ clientCallName: 'client.accounts.urlEndpoints.update',
257
+ fullyQualifiedName: 'accounts.urlEndpoints.update',
258
+ httpMethod: 'put',
259
+ httpPath: '/v1/accounts/url-endpoints/{id}',
260
+ },
261
+ {
262
+ clientCallName: 'client.accounts.urlEndpoints.list',
263
+ fullyQualifiedName: 'accounts.urlEndpoints.list',
264
+ httpMethod: 'get',
265
+ httpPath: '/v1/accounts/url-endpoints',
266
+ },
267
+ {
268
+ clientCallName: 'client.accounts.urlEndpoints.delete',
269
+ fullyQualifiedName: 'accounts.urlEndpoints.delete',
270
+ httpMethod: 'delete',
271
+ httpPath: '/v1/accounts/url-endpoints/{id}',
272
+ },
273
+ {
274
+ clientCallName: 'client.accounts.urlEndpoints.get',
275
+ fullyQualifiedName: 'accounts.urlEndpoints.get',
276
+ httpMethod: 'get',
277
+ httpPath: '/v1/accounts/url-endpoints/{id}',
278
+ },
279
+ {
280
+ clientCallName: 'client.beta.v2.files.upload',
281
+ fullyQualifiedName: 'beta.v2.files.upload',
282
+ httpMethod: 'post',
283
+ httpPath: '/api/v2/files/upload',
284
+ },
285
+ { clientCallName: 'client.webhooks.unsafeUnwrap', fullyQualifiedName: 'webhooks.unsafeUnwrap' },
286
+ { clientCallName: 'client.webhooks.unwrap', fullyQualifiedName: 'webhooks.unwrap' },
287
+ ];
288
+ function allowedMethodsForCodeTool(options) {
289
+ if (!options) {
290
+ return undefined;
291
+ }
292
+ let allowedMethods;
293
+ if (options.codeAllowHttpGets || options.codeAllowedMethods) {
294
+ // Start with nothing allowed and then add into it from options
295
+ let allowedMethodsSet = new Set();
296
+ if (options.codeAllowHttpGets) {
297
+ // Add all methods that map to an HTTP GET
298
+ sdkMethods
299
+ .filter((method) => method.httpMethod === 'get')
300
+ .forEach((method) => allowedMethodsSet.add(method));
301
+ }
302
+ if (options.codeAllowedMethods) {
303
+ // Add all methods that match any of the allowed regexps
304
+ const allowedRegexps = options.codeAllowedMethods.map((pattern) => {
305
+ try {
306
+ return new RegExp(pattern);
307
+ }
308
+ catch (e) {
309
+ throw new Error(`Invalid regex pattern for allowed method: "${pattern}": ${e instanceof Error ? e.message : e}`);
310
+ }
311
+ });
312
+ sdkMethods
313
+ .filter((method) => allowedRegexps.some((regexp) => regexp.test(method.fullyQualifiedName)))
314
+ .forEach((method) => allowedMethodsSet.add(method));
315
+ }
316
+ allowedMethods = Array.from(allowedMethodsSet);
317
+ }
318
+ else {
319
+ // Start with everything allowed
320
+ allowedMethods = [...sdkMethods];
321
+ }
322
+ if (options.codeBlockedMethods) {
323
+ // Filter down based on blocked regexps
324
+ const blockedRegexps = options.codeBlockedMethods.map((pattern) => {
325
+ try {
326
+ return new RegExp(pattern);
327
+ }
328
+ catch (e) {
329
+ throw new Error(`Invalid regex pattern for blocked method: "${pattern}": ${e instanceof Error ? e.message : e}`);
330
+ }
331
+ });
332
+ allowedMethods = allowedMethods.filter((method) => !blockedRegexps.some((regexp) => regexp.test(method.fullyQualifiedName)));
333
+ }
334
+ return allowedMethods;
335
+ }
336
+ export function blockedMethodsForCodeTool(options) {
337
+ const allowedMethods = allowedMethodsForCodeTool(options);
338
+ if (!allowedMethods) {
339
+ return undefined;
340
+ }
341
+ const allowedSet = new Set(allowedMethods.map((method) => method.fullyQualifiedName));
342
+ // Return any methods that are not explicitly allowed
343
+ return sdkMethods.filter((method) => !allowedSet.has(method.fullyQualifiedName));
344
+ }
345
+ //# sourceMappingURL=methods.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.mjs","sourceRoot":"","sources":["src/methods.ts"],"names":[],"mappings":"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"}
package/options.d.mts CHANGED
@@ -1,11 +1,23 @@
1
1
  export type CLIOptions = McpOptions & {
2
+ debug: boolean;
3
+ logFormat: 'json' | 'pretty';
2
4
  transport: 'stdio' | 'http';
3
5
  port: number | undefined;
4
6
  socket: string | undefined;
5
7
  };
6
8
  export type McpOptions = {
9
+ includeCodeTool?: boolean | undefined;
7
10
  includeDocsTools?: boolean | undefined;
11
+ stainlessApiKey?: string | undefined;
12
+ docsSearchMode?: 'stainless-api' | 'local' | undefined;
13
+ docsDir?: string | undefined;
14
+ codeAllowHttpGets?: boolean | undefined;
15
+ codeAllowedMethods?: string[] | undefined;
16
+ codeBlockedMethods?: string[] | undefined;
17
+ codeExecutionMode: McpCodeExecutionMode;
18
+ customInstructionsPath?: string | undefined;
8
19
  };
20
+ export type McpCodeExecutionMode = 'stainless-sandbox' | 'local';
9
21
  export declare function parseCLIOptions(): CLIOptions;
10
22
  export declare function parseQueryOptions(defaultOptions: McpOptions, query: unknown): McpOptions;
11
23
  //# sourceMappingURL=options.d.mts.map
package/options.d.mts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.mts","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,wBAAgB,eAAe,IAAI,UAAU,CA+C5C;AAiBD,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,UAAU,CAYxF"}
1
+ {"version":3,"file":"options.d.mts","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC7B,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,cAAc,CAAC,EAAE,eAAe,GAAG,OAAO,GAAG,SAAS,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,OAAO,CAAC;AAEjE,wBAAgB,eAAe,IAAI,UAAU,CAmH5C;AAiBD,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,UAAU,CAqBxF"}
package/options.d.ts CHANGED
@@ -1,11 +1,23 @@
1
1
  export type CLIOptions = McpOptions & {
2
+ debug: boolean;
3
+ logFormat: 'json' | 'pretty';
2
4
  transport: 'stdio' | 'http';
3
5
  port: number | undefined;
4
6
  socket: string | undefined;
5
7
  };
6
8
  export type McpOptions = {
9
+ includeCodeTool?: boolean | undefined;
7
10
  includeDocsTools?: boolean | undefined;
11
+ stainlessApiKey?: string | undefined;
12
+ docsSearchMode?: 'stainless-api' | 'local' | undefined;
13
+ docsDir?: string | undefined;
14
+ codeAllowHttpGets?: boolean | undefined;
15
+ codeAllowedMethods?: string[] | undefined;
16
+ codeBlockedMethods?: string[] | undefined;
17
+ codeExecutionMode: McpCodeExecutionMode;
18
+ customInstructionsPath?: string | undefined;
8
19
  };
20
+ export type McpCodeExecutionMode = 'stainless-sandbox' | 'local';
9
21
  export declare function parseCLIOptions(): CLIOptions;
10
22
  export declare function parseQueryOptions(defaultOptions: McpOptions, query: unknown): McpOptions;
11
23
  //# sourceMappingURL=options.d.ts.map
package/options.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,wBAAgB,eAAe,IAAI,UAAU,CA+C5C;AAiBD,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,UAAU,CAYxF"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC7B,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,cAAc,CAAC,EAAE,eAAe,GAAG,OAAO,GAAG,SAAS,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,GAAG,OAAO,CAAC;AAEjE,wBAAgB,eAAe,IAAI,UAAU,CAmH5C;AAiBD,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,UAAU,CAqBxF"}
package/options.js CHANGED
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
5
  };
@@ -9,44 +10,105 @@ const qs_1 = __importDefault(require("qs"));
9
10
  const yargs_1 = __importDefault(require("yargs"));
10
11
  const helpers_1 = require("yargs/helpers");
11
12
  const zod_1 = __importDefault(require("zod"));
13
+ const util_1 = require("./util.js");
12
14
  function parseCLIOptions() {
13
15
  const opts = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
14
- .option('tools', {
16
+ .option('code-allow-http-gets', {
17
+ type: 'boolean',
18
+ description: 'Allow all code tool methods that map to HTTP GET operations. If all code-allow-* flags are unset, then everything is allowed.',
19
+ })
20
+ .option('code-allowed-methods', {
15
21
  type: 'string',
16
22
  array: true,
17
- choices: ['code', 'docs'],
18
- description: 'Use dynamic tools or all tools',
23
+ description: 'Methods to explicitly allow for code tool. Evaluated as regular expressions against method fully qualified names. If all code-allow-* flags are unset, then everything is allowed.',
19
24
  })
20
- .option('no-tools', {
25
+ .option('code-blocked-methods', {
21
26
  type: 'string',
22
27
  array: true,
23
- choices: ['code', 'docs'],
24
- description: 'Do not use any dynamic or all tools',
28
+ description: 'Methods to explicitly block for code tool. Evaluated as regular expressions against method fully qualified names. If all code-allow-* flags are unset, then everything is allowed.',
25
29
  })
26
- .option('transport', {
30
+ .option('code-execution-mode', {
27
31
  type: 'string',
28
- choices: ['stdio', 'http'],
29
- default: 'stdio',
30
- description: 'What transport to use; stdio for local servers or http for remote servers',
32
+ choices: ['stainless-sandbox', 'local'],
33
+ default: 'stainless-sandbox',
34
+ description: "Where to run code execution in code tool; 'stainless-sandbox' will execute code in Stainless-hosted sandboxes whereas 'local' will execute code locally on the MCP server machine.",
35
+ })
36
+ .option('custom-instructions-path', {
37
+ type: 'string',
38
+ description: 'Path to custom instructions for the MCP server',
39
+ })
40
+ .option('debug', { type: 'boolean', description: 'Enable debug logging' })
41
+ .option('docs-dir', {
42
+ type: 'string',
43
+ description: 'Path to a directory of local documentation files (markdown/JSON) to include in local docs search.',
44
+ })
45
+ .option('docs-search-mode', {
46
+ type: 'string',
47
+ choices: ['stainless-api', 'local'],
48
+ default: 'stainless-api',
49
+ description: "Where to search documentation; 'stainless-api' uses the Stainless-hosted search API whereas 'local' uses an in-memory search index built from embedded SDK method data and optional local docs files.",
50
+ })
51
+ .option('log-format', {
52
+ type: 'string',
53
+ choices: ['json', 'pretty'],
54
+ description: 'Format for log output; defaults to json unless tty is detected',
55
+ })
56
+ .option('no-tools', {
57
+ type: 'string',
58
+ array: true,
59
+ choices: ['code', 'docs'],
60
+ description: 'Tools to explicitly disable',
31
61
  })
32
62
  .option('port', {
33
63
  type: 'number',
64
+ default: 3000,
34
65
  description: 'Port to serve on if using http transport',
35
66
  })
36
- .option('socket', {
67
+ .option('socket', { type: 'string', description: 'Unix socket to serve on if using http transport' })
68
+ .option('stainless-api-key', {
69
+ type: 'string',
70
+ default: (0, util_1.readEnv)('STAINLESS_API_KEY'),
71
+ description: 'API key for Stainless. Used to authenticate requests to Stainless-hosted tools endpoints.',
72
+ })
73
+ .option('tools', {
74
+ type: 'string',
75
+ array: true,
76
+ choices: ['code', 'docs'],
77
+ description: 'Tools to explicitly enable',
78
+ })
79
+ .option('transport', {
37
80
  type: 'string',
38
- description: 'Unix socket to serve on if using http transport',
81
+ choices: ['stdio', 'http'],
82
+ default: 'stdio',
83
+ description: 'What transport to use; stdio for local servers or http for remote servers',
39
84
  })
85
+ .env('MCP_SERVER')
86
+ .version(true)
40
87
  .help();
41
88
  const argv = opts.parseSync();
42
89
  const shouldIncludeToolType = (toolType) => argv.noTools?.includes(toolType) ? false
43
90
  : argv.tools?.includes(toolType) ? true
44
91
  : undefined;
92
+ const includeCodeTool = shouldIncludeToolType('code');
45
93
  const includeDocsTools = shouldIncludeToolType('docs');
46
94
  const transport = argv.transport;
95
+ const logFormat = argv.logFormat ? argv.logFormat
96
+ : process.stderr.isTTY ? 'pretty'
97
+ : 'json';
47
98
  return {
99
+ ...(includeCodeTool !== undefined && { includeCodeTool }),
48
100
  ...(includeDocsTools !== undefined && { includeDocsTools }),
101
+ debug: !!argv.debug,
102
+ stainlessApiKey: argv.stainlessApiKey,
103
+ docsSearchMode: argv.docsSearchMode,
104
+ docsDir: argv.docsDir,
105
+ codeAllowHttpGets: argv.codeAllowHttpGets,
106
+ codeAllowedMethods: argv.codeAllowedMethods,
107
+ codeBlockedMethods: argv.codeBlockedMethods,
108
+ codeExecutionMode: argv.codeExecutionMode,
109
+ customInstructionsPath: argv.customInstructionsPath,
49
110
  transport,
111
+ logFormat,
50
112
  port: argv.port,
51
113
  socket: argv.socket,
52
114
  };
@@ -62,11 +124,18 @@ const QueryOptions = zod_1.default.object({
62
124
  function parseQueryOptions(defaultOptions, query) {
63
125
  const queryObject = typeof query === 'string' ? qs_1.default.parse(query) : query;
64
126
  const queryOptions = QueryOptions.parse(queryObject);
127
+ let codeTool = queryOptions.no_tools && queryOptions.no_tools?.includes('code') ? false
128
+ : queryOptions.tools?.includes('code') ? true
129
+ : defaultOptions.includeCodeTool;
65
130
  let docsTools = queryOptions.no_tools && queryOptions.no_tools?.includes('docs') ? false
66
131
  : queryOptions.tools?.includes('docs') ? true
67
132
  : defaultOptions.includeDocsTools;
68
133
  return {
134
+ ...(codeTool !== undefined && { includeCodeTool: codeTool }),
69
135
  ...(docsTools !== undefined && { includeDocsTools: docsTools }),
136
+ codeExecutionMode: defaultOptions.codeExecutionMode,
137
+ docsSearchMode: defaultOptions.docsSearchMode,
138
+ docsDir: defaultOptions.docsDir,
70
139
  };
71
140
  }
72
141
  //# sourceMappingURL=options.js.map
package/options.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["src/options.ts"],"names":[],"mappings":"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"}