@smithery/api 0.46.0 → 0.48.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 (94) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +5 -10
  3. package/client.d.mts +2 -2
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +2 -2
  6. package/client.d.ts.map +1 -1
  7. package/client.js.map +1 -1
  8. package/client.mjs.map +1 -1
  9. package/package.json +1 -1
  10. package/resources/index.d.mts +1 -1
  11. package/resources/index.d.mts.map +1 -1
  12. package/resources/index.d.ts +1 -1
  13. package/resources/index.d.ts.map +1 -1
  14. package/resources/index.js.map +1 -1
  15. package/resources/index.mjs.map +1 -1
  16. package/resources/servers/domains.d.mts +176 -0
  17. package/resources/servers/domains.d.mts.map +1 -0
  18. package/resources/servers/domains.d.ts +176 -0
  19. package/resources/servers/domains.d.ts.map +1 -0
  20. package/resources/servers/domains.js +67 -0
  21. package/resources/servers/domains.js.map +1 -0
  22. package/resources/servers/domains.mjs +63 -0
  23. package/resources/servers/domains.mjs.map +1 -0
  24. package/resources/servers/index.d.mts +6 -5
  25. package/resources/servers/index.d.mts.map +1 -1
  26. package/resources/servers/index.d.ts +6 -5
  27. package/resources/servers/index.d.ts.map +1 -1
  28. package/resources/servers/index.js +5 -3
  29. package/resources/servers/index.js.map +1 -1
  30. package/resources/servers/index.mjs +3 -2
  31. package/resources/servers/index.mjs.map +1 -1
  32. package/resources/servers/logs.d.mts +5 -79
  33. package/resources/servers/logs.d.mts.map +1 -1
  34. package/resources/servers/logs.d.ts +5 -79
  35. package/resources/servers/logs.d.ts.map +1 -1
  36. package/resources/servers/logs.js +5 -21
  37. package/resources/servers/logs.js.map +1 -1
  38. package/resources/servers/logs.mjs +5 -21
  39. package/resources/servers/logs.mjs.map +1 -1
  40. package/resources/servers/releases.d.mts +437 -0
  41. package/resources/servers/releases.d.mts.map +1 -0
  42. package/resources/servers/releases.d.ts +437 -0
  43. package/resources/servers/releases.d.ts.map +1 -0
  44. package/resources/servers/releases.js +91 -0
  45. package/resources/servers/releases.js.map +1 -0
  46. package/resources/servers/releases.mjs +87 -0
  47. package/resources/servers/releases.mjs.map +1 -0
  48. package/resources/servers/repo.d.mts +13 -103
  49. package/resources/servers/repo.d.mts.map +1 -1
  50. package/resources/servers/repo.d.ts +13 -103
  51. package/resources/servers/repo.d.ts.map +1 -1
  52. package/resources/servers/repo.js +15 -61
  53. package/resources/servers/repo.js.map +1 -1
  54. package/resources/servers/repo.mjs +15 -61
  55. package/resources/servers/repo.mjs.map +1 -1
  56. package/resources/servers/secrets.d.mts +14 -85
  57. package/resources/servers/secrets.d.mts.map +1 -1
  58. package/resources/servers/secrets.d.ts +14 -85
  59. package/resources/servers/secrets.d.ts.map +1 -1
  60. package/resources/servers/secrets.js +13 -63
  61. package/resources/servers/secrets.js.map +1 -1
  62. package/resources/servers/secrets.mjs +13 -63
  63. package/resources/servers/secrets.mjs.map +1 -1
  64. package/resources/servers/servers.d.mts +32 -184
  65. package/resources/servers/servers.d.mts.map +1 -1
  66. package/resources/servers/servers.d.ts +32 -184
  67. package/resources/servers/servers.d.ts.map +1 -1
  68. package/resources/servers/servers.js +30 -83
  69. package/resources/servers/servers.js.map +1 -1
  70. package/resources/servers/servers.mjs +32 -85
  71. package/resources/servers/servers.mjs.map +1 -1
  72. package/src/client.ts +0 -16
  73. package/src/resources/index.ts +0 -8
  74. package/src/resources/servers/domains.ts +270 -0
  75. package/src/resources/servers/index.ts +22 -48
  76. package/src/resources/servers/logs.ts +9 -118
  77. package/src/resources/servers/releases.ts +621 -0
  78. package/src/resources/servers/repo.ts +15 -150
  79. package/src/resources/servers/secrets.ts +17 -126
  80. package/src/resources/servers/servers.ts +76 -344
  81. package/src/version.ts +1 -1
  82. package/version.d.mts +1 -1
  83. package/version.d.ts +1 -1
  84. package/version.js +1 -1
  85. package/version.mjs +1 -1
  86. package/resources/servers/deployments.d.mts +0 -686
  87. package/resources/servers/deployments.d.mts.map +0 -1
  88. package/resources/servers/deployments.d.ts +0 -686
  89. package/resources/servers/deployments.d.ts.map +0 -1
  90. package/resources/servers/deployments.js +0 -179
  91. package/resources/servers/deployments.js.map +0 -1
  92. package/resources/servers/deployments.mjs +0 -175
  93. package/resources/servers/deployments.mjs.map +0 -1
  94. package/src/resources/servers/deployments.ts +0 -978
@@ -0,0 +1,621 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import { APIPromise } from '../../core/api-promise';
5
+ import { Stream } from '../../core/streaming';
6
+ import { type Uploadable } from '../../core/uploads';
7
+ import { buildHeaders } from '../../internal/headers';
8
+ import { RequestOptions } from '../../internal/request-options';
9
+ import { multipartFormRequestOptions } from '../../internal/uploads';
10
+ import { path } from '../../internal/utils/path';
11
+
12
+ export class Releases extends APIResource {
13
+ /**
14
+ * List releases ordered by most recent first. Logs are omitted — fetch a specific
15
+ * release to see logs.
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * const releases = await client.servers.releases.list(
20
+ * 'qualifiedName',
21
+ * );
22
+ * ```
23
+ */
24
+ list(qualifiedName: string, options?: RequestOptions): APIPromise<ReleaseListResponse> {
25
+ return this._client.get(path`/servers/${qualifiedName}/releases`, options);
26
+ }
27
+
28
+ /**
29
+ * Submit a release via multipart form. Supports hosted (JS module upload),
30
+ * external (URL), stdio (MCPB bundle), and repo (GitHub build) release types.
31
+ *
32
+ * @example
33
+ * ```ts
34
+ * const response = await client.servers.releases.deploy(
35
+ * 'qualifiedName',
36
+ * { payload: 'payload' },
37
+ * );
38
+ * ```
39
+ */
40
+ deploy(
41
+ qualifiedName: string,
42
+ body: ReleaseDeployParams,
43
+ options?: RequestOptions,
44
+ ): APIPromise<ReleaseDeployResponse> {
45
+ return this._client.put(
46
+ path`/servers/${qualifiedName}/releases`,
47
+ multipartFormRequestOptions({ body, ...options }, this._client),
48
+ );
49
+ }
50
+
51
+ /**
52
+ * Retrieve release details including status, git metadata, pipeline logs, and MCP
53
+ * endpoint URL.
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const release = await client.servers.releases.get('id', {
58
+ * qualifiedName: 'qualifiedName',
59
+ * });
60
+ * ```
61
+ */
62
+ get(id: string, params: ReleaseGetParams, options?: RequestOptions): APIPromise<ReleaseGetResponse> {
63
+ const { qualifiedName } = params;
64
+ return this._client.get(path`/servers/${qualifiedName}/releases/${id}`, options);
65
+ }
66
+
67
+ /**
68
+ * Resume a paused release (e.g. after OAuth authorization). Use id='latest' to
69
+ * resume the most recent one.
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * const response = await client.servers.releases.resume(
74
+ * 'id',
75
+ * { qualifiedName: 'qualifiedName' },
76
+ * );
77
+ * ```
78
+ */
79
+ resume(
80
+ id: string,
81
+ params: ReleaseResumeParams,
82
+ options?: RequestOptions,
83
+ ): APIPromise<ReleaseResumeResponse> {
84
+ const { qualifiedName } = params;
85
+ return this._client.post(path`/servers/${qualifiedName}/releases/${id}/resume`, options);
86
+ }
87
+
88
+ /**
89
+ * Real-time SSE stream of release logs and status updates.
90
+ *
91
+ * @example
92
+ * ```ts
93
+ * const response = await client.servers.releases.stream(
94
+ * 'id',
95
+ * { qualifiedName: 'qualifiedName' },
96
+ * );
97
+ * ```
98
+ */
99
+ stream(
100
+ id: string,
101
+ params: ReleaseStreamParams,
102
+ options?: RequestOptions,
103
+ ): APIPromise<Stream<ReleaseStreamResponse>> {
104
+ const { qualifiedName } = params;
105
+ return this._client.get(path`/servers/${qualifiedName}/releases/${id}/stream`, {
106
+ ...options,
107
+ headers: buildHeaders([{ Accept: 'text/event-stream' }, options?.headers]),
108
+ stream: true,
109
+ }) as APIPromise<Stream<ReleaseStreamResponse>>;
110
+ }
111
+ }
112
+
113
+ export type DeployPayload =
114
+ | HostedDeployPayload
115
+ | ExternalDeployPayload
116
+ | StdioDeployPayload
117
+ | DeployPayload.RepoDeployPayload;
118
+
119
+ export namespace DeployPayload {
120
+ export interface RepoDeployPayload {
121
+ type: 'repo';
122
+
123
+ baseDirectory?: string;
124
+
125
+ branch?: string;
126
+
127
+ repoName?: string;
128
+
129
+ repoOwner?: string;
130
+ }
131
+ }
132
+
133
+ export interface ExternalDeployPayload {
134
+ type: 'external';
135
+
136
+ upstreamUrl: string;
137
+
138
+ configSchema?: { [key: string]: unknown };
139
+
140
+ scanCredentials?: { [key: string]: string };
141
+ }
142
+
143
+ export interface HostedDeployPayload {
144
+ hasAuthAdapter: boolean;
145
+
146
+ stateful: boolean;
147
+
148
+ type: 'hosted';
149
+
150
+ configSchema?: { [key: string]: unknown };
151
+
152
+ serverCard?: ServerCard;
153
+
154
+ source?: HostedDeployPayload.Source;
155
+ }
156
+
157
+ export namespace HostedDeployPayload {
158
+ export interface Source {
159
+ branch?: string;
160
+
161
+ commit?: string;
162
+ }
163
+ }
164
+
165
+ export interface ServerCard {
166
+ serverInfo: ServerCard.ServerInfo;
167
+
168
+ authentication?: ServerCard.Authentication;
169
+
170
+ prompts?: Array<ServerCard.Prompt>;
171
+
172
+ resources?: Array<ServerCard.Resource>;
173
+
174
+ tools?: Array<ServerCard.Tool>;
175
+
176
+ [k: string]: unknown;
177
+ }
178
+
179
+ export namespace ServerCard {
180
+ export interface ServerInfo {
181
+ name: string;
182
+
183
+ version: string;
184
+
185
+ description?: string;
186
+
187
+ icons?: Array<ServerInfo.Icon>;
188
+
189
+ title?: string;
190
+
191
+ websiteUrl?: string;
192
+ }
193
+
194
+ export namespace ServerInfo {
195
+ export interface Icon {
196
+ src: string;
197
+
198
+ mimeType?: string;
199
+
200
+ sizes?: Array<string>;
201
+
202
+ theme?: 'light' | 'dark';
203
+ }
204
+ }
205
+
206
+ export interface Authentication {
207
+ required: boolean;
208
+
209
+ schemes: Array<string>;
210
+ }
211
+
212
+ export interface Prompt {
213
+ name: string;
214
+
215
+ _meta?: { [key: string]: unknown };
216
+
217
+ arguments?: Array<Prompt.Argument>;
218
+
219
+ description?: string;
220
+
221
+ icons?: Array<Prompt.Icon>;
222
+
223
+ title?: string;
224
+ }
225
+
226
+ export namespace Prompt {
227
+ export interface Argument {
228
+ name: string;
229
+
230
+ description?: string;
231
+
232
+ required?: boolean;
233
+ }
234
+
235
+ export interface Icon {
236
+ src: string;
237
+
238
+ mimeType?: string;
239
+
240
+ sizes?: Array<string>;
241
+
242
+ theme?: 'light' | 'dark';
243
+ }
244
+ }
245
+
246
+ export interface Resource {
247
+ name: string;
248
+
249
+ uri: string;
250
+
251
+ _meta?: { [key: string]: unknown };
252
+
253
+ annotations?: Resource.Annotations;
254
+
255
+ description?: string;
256
+
257
+ icons?: Array<Resource.Icon>;
258
+
259
+ mimeType?: string;
260
+
261
+ title?: string;
262
+ }
263
+
264
+ export namespace Resource {
265
+ export interface Annotations {
266
+ audience?: Array<'user' | 'assistant'>;
267
+
268
+ lastModified?: string;
269
+
270
+ priority?: number;
271
+ }
272
+
273
+ export interface Icon {
274
+ src: string;
275
+
276
+ mimeType?: string;
277
+
278
+ sizes?: Array<string>;
279
+
280
+ theme?: 'light' | 'dark';
281
+ }
282
+ }
283
+
284
+ export interface Tool {
285
+ inputSchema: Tool.InputSchema;
286
+
287
+ name: string;
288
+
289
+ _meta?: { [key: string]: unknown };
290
+
291
+ annotations?: Tool.Annotations;
292
+
293
+ description?: string;
294
+
295
+ execution?: Tool.Execution;
296
+
297
+ icons?: Array<Tool.Icon>;
298
+
299
+ outputSchema?: Tool.OutputSchema;
300
+
301
+ title?: string;
302
+ }
303
+
304
+ export namespace Tool {
305
+ export interface InputSchema {
306
+ type: 'object';
307
+
308
+ properties?: { [key: string]: unknown };
309
+
310
+ required?: Array<string>;
311
+
312
+ [k: string]: unknown;
313
+ }
314
+
315
+ export interface Annotations {
316
+ destructiveHint?: boolean;
317
+
318
+ idempotentHint?: boolean;
319
+
320
+ openWorldHint?: boolean;
321
+
322
+ readOnlyHint?: boolean;
323
+
324
+ title?: string;
325
+ }
326
+
327
+ export interface Execution {
328
+ taskSupport?: 'required' | 'optional' | 'forbidden';
329
+ }
330
+
331
+ export interface Icon {
332
+ src: string;
333
+
334
+ mimeType?: string;
335
+
336
+ sizes?: Array<string>;
337
+
338
+ theme?: 'light' | 'dark';
339
+ }
340
+
341
+ export interface OutputSchema {
342
+ type: 'object';
343
+
344
+ properties?: { [key: string]: unknown };
345
+
346
+ required?: Array<string>;
347
+
348
+ [k: string]: unknown;
349
+ }
350
+ }
351
+ }
352
+
353
+ export interface StdioDeployPayload {
354
+ hasAuthAdapter: boolean;
355
+
356
+ runtime: 'node';
357
+
358
+ type: 'stdio';
359
+
360
+ configSchema?: { [key: string]: unknown };
361
+
362
+ serverCard?: ServerCard;
363
+
364
+ source?: StdioDeployPayload.Source;
365
+ }
366
+
367
+ export namespace StdioDeployPayload {
368
+ export interface Source {
369
+ branch?: string;
370
+
371
+ commit?: string;
372
+ }
373
+ }
374
+
375
+ export type ReleaseListResponse = Array<ReleaseListResponse.ReleaseListResponseItem>;
376
+
377
+ export namespace ReleaseListResponse {
378
+ export interface ReleaseListResponseItem {
379
+ id: string;
380
+
381
+ /**
382
+ * ISO 8601 timestamp of when the release was created.
383
+ */
384
+ createdAt: string;
385
+
386
+ /**
387
+ * Current status: QUEUED, WORKING, SUCCESS, FAILURE, FAILURE_SCAN, AUTH_REQUIRED,
388
+ * CANCELLED, or INTERNAL_ERROR.
389
+ */
390
+ status: string;
391
+
392
+ /**
393
+ * Release type: hosted_shttp (Smithery-hosted), external_shttp (external URL), or
394
+ * stdio (local binary).
395
+ */
396
+ type: string;
397
+
398
+ /**
399
+ * ISO 8601 timestamp of the last status change.
400
+ */
401
+ updatedAt: string;
402
+
403
+ /**
404
+ * Git branch this release was built from.
405
+ */
406
+ branch?: string | null;
407
+
408
+ /**
409
+ * Git commit SHA that triggered this release.
410
+ */
411
+ commit?: string | null;
412
+
413
+ /**
414
+ * Git commit message associated with this release.
415
+ */
416
+ commitMessage?: string | null;
417
+
418
+ /**
419
+ * The MCP endpoint URL for connecting to this server.
420
+ */
421
+ mcpUrl?: string;
422
+
423
+ /**
424
+ * Upstream MCP server URL. Present only for external releases.
425
+ */
426
+ upstreamUrl?: string | null;
427
+ }
428
+ }
429
+
430
+ export interface ReleaseDeployResponse {
431
+ /**
432
+ * Unique identifier for this release.
433
+ */
434
+ deploymentId: string;
435
+
436
+ /**
437
+ * The MCP endpoint URL for connecting to this server once published.
438
+ */
439
+ mcpUrl: string;
440
+
441
+ /**
442
+ * Initial status. Will be WORKING while the release is in progress.
443
+ */
444
+ status: string;
445
+
446
+ /**
447
+ * Non-fatal warnings encountered during submission.
448
+ */
449
+ warnings?: Array<string>;
450
+ }
451
+
452
+ export interface ReleaseGetResponse {
453
+ id: string;
454
+
455
+ /**
456
+ * ISO 8601 timestamp of when the release was created.
457
+ */
458
+ createdAt: string;
459
+
460
+ /**
461
+ * Current status: QUEUED, WORKING, SUCCESS, FAILURE, FAILURE_SCAN, AUTH_REQUIRED,
462
+ * CANCELLED, or INTERNAL_ERROR.
463
+ */
464
+ status: string;
465
+
466
+ /**
467
+ * Release type: hosted_shttp (Smithery-hosted), external_shttp (external URL), or
468
+ * stdio (local binary).
469
+ */
470
+ type: string;
471
+
472
+ /**
473
+ * ISO 8601 timestamp of the last status change.
474
+ */
475
+ updatedAt: string;
476
+
477
+ /**
478
+ * Git branch this release was built from.
479
+ */
480
+ branch?: string | null;
481
+
482
+ /**
483
+ * Git commit SHA that triggered this release.
484
+ */
485
+ commit?: string | null;
486
+
487
+ /**
488
+ * Git commit message associated with this release.
489
+ */
490
+ commitMessage?: string | null;
491
+
492
+ /**
493
+ * Pipeline log entries. Only included when fetching a single release.
494
+ */
495
+ logs?: Array<ReleaseGetResponse.Log>;
496
+
497
+ /**
498
+ * The MCP endpoint URL for connecting to this server.
499
+ */
500
+ mcpUrl?: string;
501
+
502
+ /**
503
+ * Upstream MCP server URL. Present only for external releases.
504
+ */
505
+ upstreamUrl?: string | null;
506
+ }
507
+
508
+ export namespace ReleaseGetResponse {
509
+ export interface Log {
510
+ /**
511
+ * Log level: 'start', 'end', 'info', 'success', or 'failure'.
512
+ */
513
+ level: string;
514
+
515
+ /**
516
+ * Human-readable log message.
517
+ */
518
+ message: string;
519
+
520
+ /**
521
+ * Pipeline stage: deploy (bundle upload), scan (security/OAuth check), metadata
522
+ * (tool discovery), publish (making the server live).
523
+ */
524
+ stage: 'deploy' | 'scan' | 'metadata' | 'publish';
525
+
526
+ /**
527
+ * ISO 8601 timestamp of the log entry.
528
+ */
529
+ timestamp: string;
530
+
531
+ /**
532
+ * Error details, present only when the stage failed.
533
+ */
534
+ error?: Log.Error;
535
+ }
536
+
537
+ export namespace Log {
538
+ /**
539
+ * Error details, present only when the stage failed.
540
+ */
541
+ export interface Error {
542
+ message?: string;
543
+ }
544
+ }
545
+ }
546
+
547
+ export interface ReleaseResumeResponse {
548
+ deploymentId: string;
549
+
550
+ status: string;
551
+ }
552
+
553
+ /**
554
+ * SSE events: init (with buffered logs), log, status, complete
555
+ */
556
+ export type ReleaseStreamResponse = string;
557
+
558
+ export interface ReleaseDeployParams {
559
+ /**
560
+ * JSON-encoded release payload. See DeployPayload schema for structure.
561
+ */
562
+ payload: string;
563
+
564
+ /**
565
+ * MCPB bundle file (for stdio releases)
566
+ */
567
+ bundle?: Uploadable;
568
+
569
+ /**
570
+ * JavaScript module file (for hosted releases)
571
+ */
572
+ module?: Uploadable;
573
+
574
+ /**
575
+ * Source map file (for hosted releases)
576
+ */
577
+ sourcemap?: Uploadable;
578
+ }
579
+
580
+ export interface ReleaseGetParams {
581
+ /**
582
+ * The server's qualified name (e.g. 'namespace/server' or 'namespace' for
583
+ * namespace-only servers). Use %2F to encode the slash.
584
+ */
585
+ qualifiedName: string;
586
+ }
587
+
588
+ export interface ReleaseResumeParams {
589
+ /**
590
+ * The server's qualified name (e.g. 'namespace/server' or 'namespace' for
591
+ * namespace-only servers). Use %2F to encode the slash.
592
+ */
593
+ qualifiedName: string;
594
+ }
595
+
596
+ export interface ReleaseStreamParams {
597
+ /**
598
+ * The server's qualified name (e.g. 'namespace/server' or 'namespace' for
599
+ * namespace-only servers). Use %2F to encode the slash.
600
+ */
601
+ qualifiedName: string;
602
+ }
603
+
604
+ export declare namespace Releases {
605
+ export {
606
+ type DeployPayload as DeployPayload,
607
+ type ExternalDeployPayload as ExternalDeployPayload,
608
+ type HostedDeployPayload as HostedDeployPayload,
609
+ type ServerCard as ServerCard,
610
+ type StdioDeployPayload as StdioDeployPayload,
611
+ type ReleaseListResponse as ReleaseListResponse,
612
+ type ReleaseDeployResponse as ReleaseDeployResponse,
613
+ type ReleaseGetResponse as ReleaseGetResponse,
614
+ type ReleaseResumeResponse as ReleaseResumeResponse,
615
+ type ReleaseStreamResponse as ReleaseStreamResponse,
616
+ type ReleaseDeployParams as ReleaseDeployParams,
617
+ type ReleaseGetParams as ReleaseGetParams,
618
+ type ReleaseResumeParams as ReleaseResumeParams,
619
+ type ReleaseStreamParams as ReleaseStreamParams,
620
+ };
621
+ }