@meterapp/car-image-sdk 1.4.0 → 1.6.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.
@@ -14,7 +14,7 @@ import { type Format, type RequestFormat } from "../types.js";
14
14
  export declare const MCP_SERVER_INFO: {
15
15
  readonly name: "car-image-api";
16
16
  readonly title: "Car Image API";
17
- readonly version: "1.4.0";
17
+ readonly version: "1.6.0";
18
18
  readonly websiteUrl: "https://carimage.dev";
19
19
  };
20
20
  /**
@@ -25,8 +25,8 @@ export declare const MCP_SERVER_INFO: {
25
25
  * context and make the right one easier to pick.
26
26
  */
27
27
  export declare const MCP_TOOLSETS: {
28
- readonly core: readonly ["get_car_image", "create_car_image_urls", "search_vehicles", "resolve_vehicle", "list_image_options", "get_account", "rate_image", "describe_api"];
29
- readonly all: readonly ["get_car_image", "create_car_image_urls", "search_vehicles", "resolve_vehicle", "list_image_options", "get_account", "rate_image", "describe_api", "list_requests", "request_vehicle", "request_feature", "get_request", "upvote_request", "comment_on_request", "share_building", "share_referral"];
28
+ readonly core: readonly ["get_car_image", "create_car_image_urls", "search_vehicles", "resolve_vehicle", "decode_vin", "list_image_options", "get_account", "rate_image", "create_3d_model", "get_3d_model", "publish_3d_model", "describe_api"];
29
+ readonly all: readonly ["get_car_image", "create_car_image_urls", "search_vehicles", "resolve_vehicle", "decode_vin", "list_image_options", "get_account", "rate_image", "create_3d_model", "get_3d_model", "publish_3d_model", "describe_api", "list_requests", "request_vehicle", "request_feature", "get_request", "upvote_request", "comment_on_request", "share_building", "share_referral"];
30
30
  };
31
31
  export type McpToolset = keyof typeof MCP_TOOLSETS;
32
32
  export declare const DEFAULT_MCP_TOOLSET: McpToolset;
@@ -36,10 +36,11 @@ export declare function isMcpToolset(value: unknown): value is McpToolset;
36
36
  export declare function mcpInstructions(toolset?: McpToolset): string;
37
37
  /** Instructions for the full toolset; kept for callers that predate toolsets. */
38
38
  export declare const MCP_INSTRUCTIONS: string;
39
+ /** A paint color: a preset name, or a hex such as `#1a2b3c` (`1a2b3c` and `#rgb` are accepted too). */
40
+ export declare const colorSchema: z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>;
41
+ /** A stable catalog vehicle id, as every catalog tool returns it. */
42
+ export declare const vehicleIdSchema: z.ZodString;
39
43
  export declare const imageInputSchema: z.ZodObject<{
40
- make: z.ZodString;
41
- model: z.ZodString;
42
- year: z.ZodCoercedNumber<unknown>;
43
44
  view: z.ZodDefault<z.ZodEnum<{
44
45
  front: "front";
45
46
  "front-3-4": "front-3-4";
@@ -48,23 +49,7 @@ export declare const imageInputSchema: z.ZodObject<{
48
49
  rear: "rear";
49
50
  "rear-3-4": "rear-3-4";
50
51
  }>>;
51
- color: z.ZodDefault<z.ZodEnum<{
52
- white: "white";
53
- black: "black";
54
- gray: "gray";
55
- silver: "silver";
56
- blue: "blue";
57
- red: "red";
58
- green: "green";
59
- brown: "brown";
60
- beige: "beige";
61
- tan: "tan";
62
- orange: "orange";
63
- yellow: "yellow";
64
- gold: "gold";
65
- burgundy: "burgundy";
66
- purple: "purple";
67
- }>>;
52
+ color: z.ZodDefault<z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>>;
68
53
  size: z.ZodOptional<z.ZodEnum<{
69
54
  thumb: "thumb";
70
55
  small: "small";
@@ -87,6 +72,10 @@ export declare const imageInputSchema: z.ZodObject<{
87
72
  jpg: "jpg";
88
73
  auto: "auto";
89
74
  }>>;
75
+ vehicle: z.ZodOptional<z.ZodString>;
76
+ make: z.ZodOptional<z.ZodString>;
77
+ model: z.ZodOptional<z.ZodString>;
78
+ year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
90
79
  }, z.core.$strip>;
91
80
  export type ImageInput = z.infer<typeof imageInputSchema>;
92
81
  /**
@@ -99,9 +88,6 @@ export type ImageInput = z.infer<typeof imageInputSchema>;
99
88
  export declare function inlineImageFormat(format: RequestFormat): Format;
100
89
  export declare const MCP_TOOL_SCHEMAS: {
101
90
  readonly get_car_image: z.ZodObject<{
102
- make: z.ZodString;
103
- model: z.ZodString;
104
- year: z.ZodCoercedNumber<unknown>;
105
91
  view: z.ZodDefault<z.ZodEnum<{
106
92
  front: "front";
107
93
  "front-3-4": "front-3-4";
@@ -110,23 +96,7 @@ export declare const MCP_TOOL_SCHEMAS: {
110
96
  rear: "rear";
111
97
  "rear-3-4": "rear-3-4";
112
98
  }>>;
113
- color: z.ZodDefault<z.ZodEnum<{
114
- white: "white";
115
- black: "black";
116
- gray: "gray";
117
- silver: "silver";
118
- blue: "blue";
119
- red: "red";
120
- green: "green";
121
- brown: "brown";
122
- beige: "beige";
123
- tan: "tan";
124
- orange: "orange";
125
- yellow: "yellow";
126
- gold: "gold";
127
- burgundy: "burgundy";
128
- purple: "purple";
129
- }>>;
99
+ color: z.ZodDefault<z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>>;
130
100
  size: z.ZodOptional<z.ZodEnum<{
131
101
  thumb: "thumb";
132
102
  small: "small";
@@ -149,12 +119,13 @@ export declare const MCP_TOOL_SCHEMAS: {
149
119
  jpg: "jpg";
150
120
  auto: "auto";
151
121
  }>>;
122
+ vehicle: z.ZodOptional<z.ZodString>;
123
+ make: z.ZodOptional<z.ZodString>;
124
+ model: z.ZodOptional<z.ZodString>;
125
+ year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
152
126
  }, z.core.$strip>;
153
127
  readonly create_car_image_urls: z.ZodObject<{
154
128
  images: z.ZodArray<z.ZodObject<{
155
- make: z.ZodString;
156
- model: z.ZodString;
157
- year: z.ZodCoercedNumber<unknown>;
158
129
  view: z.ZodDefault<z.ZodEnum<{
159
130
  front: "front";
160
131
  "front-3-4": "front-3-4";
@@ -163,23 +134,7 @@ export declare const MCP_TOOL_SCHEMAS: {
163
134
  rear: "rear";
164
135
  "rear-3-4": "rear-3-4";
165
136
  }>>;
166
- color: z.ZodDefault<z.ZodEnum<{
167
- white: "white";
168
- black: "black";
169
- gray: "gray";
170
- silver: "silver";
171
- blue: "blue";
172
- red: "red";
173
- green: "green";
174
- brown: "brown";
175
- beige: "beige";
176
- tan: "tan";
177
- orange: "orange";
178
- yellow: "yellow";
179
- gold: "gold";
180
- burgundy: "burgundy";
181
- purple: "purple";
182
- }>>;
137
+ color: z.ZodDefault<z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>>;
183
138
  size: z.ZodOptional<z.ZodEnum<{
184
139
  thumb: "thumb";
185
140
  small: "small";
@@ -202,6 +157,10 @@ export declare const MCP_TOOL_SCHEMAS: {
202
157
  jpg: "jpg";
203
158
  auto: "auto";
204
159
  }>>;
160
+ vehicle: z.ZodOptional<z.ZodString>;
161
+ make: z.ZodOptional<z.ZodString>;
162
+ model: z.ZodOptional<z.ZodString>;
163
+ year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
205
164
  }, z.core.$strip>>;
206
165
  ttl_seconds: z.ZodOptional<z.ZodNumber>;
207
166
  max_uses: z.ZodOptional<z.ZodNumber>;
@@ -221,6 +180,7 @@ export declare const MCP_TOOL_SCHEMAS: {
221
180
  readonly get_account: z.ZodObject<{}, z.core.$strip>;
222
181
  readonly rate_image: z.ZodObject<{
223
182
  request_id: z.ZodOptional<z.ZodString>;
183
+ vehicle: z.ZodOptional<z.ZodString>;
224
184
  make: z.ZodOptional<z.ZodString>;
225
185
  model: z.ZodOptional<z.ZodString>;
226
186
  year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
@@ -232,23 +192,7 @@ export declare const MCP_TOOL_SCHEMAS: {
232
192
  rear: "rear";
233
193
  "rear-3-4": "rear-3-4";
234
194
  }>>;
235
- color: z.ZodOptional<z.ZodEnum<{
236
- white: "white";
237
- black: "black";
238
- gray: "gray";
239
- silver: "silver";
240
- blue: "blue";
241
- red: "red";
242
- green: "green";
243
- brown: "brown";
244
- beige: "beige";
245
- tan: "tan";
246
- orange: "orange";
247
- yellow: "yellow";
248
- gold: "gold";
249
- burgundy: "burgundy";
250
- purple: "purple";
251
- }>>;
195
+ color: z.ZodOptional<z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>>;
252
196
  rating: z.ZodOptional<z.ZodNumber>;
253
197
  verdict: z.ZodOptional<z.ZodEnum<{
254
198
  good: "good";
@@ -259,6 +203,28 @@ export declare const MCP_TOOL_SCHEMAS: {
259
203
  readonly describe_api: z.ZodObject<{
260
204
  endpoint: z.ZodOptional<z.ZodString>;
261
205
  }, z.core.$strip>;
206
+ readonly decode_vin: z.ZodObject<{
207
+ vin: z.ZodString;
208
+ year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
209
+ }, z.core.$strip>;
210
+ readonly create_3d_model: z.ZodObject<{
211
+ color: z.ZodDefault<z.ZodString & z.ZodType<import("../types.js").Color, string, z.core.$ZodTypeInternals<import("../types.js").Color, string>>>;
212
+ webhook_url: z.ZodOptional<z.ZodString>;
213
+ webhook_secret: z.ZodOptional<z.ZodString>;
214
+ publish: z.ZodOptional<z.ZodBoolean>;
215
+ idempotency_key: z.ZodOptional<z.ZodString>;
216
+ vehicle: z.ZodOptional<z.ZodString>;
217
+ make: z.ZodOptional<z.ZodString>;
218
+ model: z.ZodOptional<z.ZodString>;
219
+ year: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
220
+ }, z.core.$strip>;
221
+ readonly get_3d_model: z.ZodObject<{
222
+ id: z.ZodString;
223
+ }, z.core.$strip>;
224
+ readonly publish_3d_model: z.ZodObject<{
225
+ id: z.ZodString;
226
+ unpublish: z.ZodOptional<z.ZodBoolean>;
227
+ }, z.core.$strip>;
262
228
  readonly list_requests: z.ZodObject<{
263
229
  kind: z.ZodOptional<z.ZodEnum<{
264
230
  vehicle: "vehicle";
@@ -335,6 +301,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
335
301
  etag: z.ZodNullable<z.ZodString>;
336
302
  request_id: z.ZodNullable<z.ZodString>;
337
303
  vehicle: z.ZodObject<{
304
+ vehicle_id: z.ZodNullable<z.ZodString>;
338
305
  make: z.ZodString;
339
306
  model: z.ZodString;
340
307
  year: z.ZodNumber;
@@ -346,23 +313,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
346
313
  rear: "rear";
347
314
  "rear-3-4": "rear-3-4";
348
315
  }>;
349
- color: z.ZodEnum<{
350
- white: "white";
351
- black: "black";
352
- gray: "gray";
353
- silver: "silver";
354
- blue: "blue";
355
- red: "red";
356
- green: "green";
357
- brown: "brown";
358
- beige: "beige";
359
- tan: "tan";
360
- orange: "orange";
361
- yellow: "yellow";
362
- gold: "gold";
363
- burgundy: "burgundy";
364
- purple: "purple";
365
- }>;
316
+ color: z.ZodString;
366
317
  width: z.ZodOptional<z.ZodNumber>;
367
318
  height: z.ZodOptional<z.ZodNumber>;
368
319
  fit: z.ZodOptional<z.ZodEnum<{
@@ -389,6 +340,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
389
340
  max_uses: z.ZodNumber;
390
341
  renews_until: z.ZodOptional<z.ZodNullable<z.ZodString>>;
391
342
  vehicle: z.ZodObject<{
343
+ vehicle_id: z.ZodNullable<z.ZodString>;
392
344
  make: z.ZodString;
393
345
  model: z.ZodString;
394
346
  year: z.ZodNumber;
@@ -400,23 +352,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
400
352
  rear: "rear";
401
353
  "rear-3-4": "rear-3-4";
402
354
  }>;
403
- color: z.ZodEnum<{
404
- white: "white";
405
- black: "black";
406
- gray: "gray";
407
- silver: "silver";
408
- blue: "blue";
409
- red: "red";
410
- green: "green";
411
- brown: "brown";
412
- beige: "beige";
413
- tan: "tan";
414
- orange: "orange";
415
- yellow: "yellow";
416
- gold: "gold";
417
- burgundy: "burgundy";
418
- purple: "purple";
419
- }>;
355
+ color: z.ZodString;
420
356
  width: z.ZodOptional<z.ZodNumber>;
421
357
  height: z.ZodOptional<z.ZodNumber>;
422
358
  fit: z.ZodOptional<z.ZodEnum<{
@@ -469,6 +405,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
469
405
  readonly resolve_vehicle: z.ZodObject<{
470
406
  data: z.ZodObject<{
471
407
  params: z.ZodObject<{
408
+ vehicle_id: z.ZodNullable<z.ZodString>;
472
409
  make: z.ZodString;
473
410
  model: z.ZodString;
474
411
  year: z.ZodNumber;
@@ -480,23 +417,7 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
480
417
  rear: "rear";
481
418
  "rear-3-4": "rear-3-4";
482
419
  }>;
483
- color: z.ZodEnum<{
484
- white: "white";
485
- black: "black";
486
- gray: "gray";
487
- silver: "silver";
488
- blue: "blue";
489
- red: "red";
490
- green: "green";
491
- brown: "brown";
492
- beige: "beige";
493
- tan: "tan";
494
- orange: "orange";
495
- yellow: "yellow";
496
- gold: "gold";
497
- burgundy: "burgundy";
498
- purple: "purple";
499
- }>;
420
+ color: z.ZodString;
500
421
  }, z.core.$loose>;
501
422
  display: z.ZodOptional<z.ZodObject<{
502
423
  make_name: z.ZodString;
@@ -619,6 +540,339 @@ export declare const MCP_TOOL_OUTPUT_SCHEMAS: {
619
540
  }, z.core.$loose>;
620
541
  request_id: z.ZodString;
621
542
  }, z.core.$loose>;
543
+ readonly decode_vin: z.ZodObject<{
544
+ data: z.ZodObject<{
545
+ vin: z.ZodString;
546
+ valid: z.ZodBoolean;
547
+ errors: z.ZodArray<z.ZodObject<{
548
+ code: z.ZodNumber;
549
+ text: z.ZodString;
550
+ }, z.core.$loose>>;
551
+ suggested_vin: z.ZodNullable<z.ZodString>;
552
+ year: z.ZodNullable<z.ZodNumber>;
553
+ make: z.ZodNullable<z.ZodString>;
554
+ model: z.ZodNullable<z.ZodString>;
555
+ trim: z.ZodNullable<z.ZodString>;
556
+ series: z.ZodNullable<z.ZodString>;
557
+ body_class: z.ZodNullable<z.ZodString>;
558
+ vehicle_type: z.ZodNullable<z.ZodString>;
559
+ doors: z.ZodNullable<z.ZodNumber>;
560
+ drive_type: z.ZodNullable<z.ZodString>;
561
+ fuel_type: z.ZodNullable<z.ZodString>;
562
+ engine: z.ZodObject<{
563
+ cylinders: z.ZodNullable<z.ZodNumber>;
564
+ displacement_l: z.ZodNullable<z.ZodNumber>;
565
+ hp: z.ZodNullable<z.ZodNumber>;
566
+ model: z.ZodNullable<z.ZodString>;
567
+ }, z.core.$loose>;
568
+ transmission: z.ZodObject<{
569
+ style: z.ZodNullable<z.ZodString>;
570
+ speeds: z.ZodNullable<z.ZodNumber>;
571
+ }, z.core.$loose>;
572
+ manufacturer: z.ZodNullable<z.ZodString>;
573
+ plant: z.ZodObject<{
574
+ city: z.ZodNullable<z.ZodString>;
575
+ state: z.ZodNullable<z.ZodString>;
576
+ country: z.ZodNullable<z.ZodString>;
577
+ }, z.core.$loose>;
578
+ gvwr: z.ZodNullable<z.ZodString>;
579
+ attributes: z.ZodRecord<z.ZodString, z.ZodString>;
580
+ vehicle: z.ZodNullable<z.ZodObject<{
581
+ id: z.ZodString;
582
+ make: z.ZodString;
583
+ model: z.ZodString;
584
+ year: z.ZodNumber;
585
+ image_path: z.ZodString;
586
+ }, z.core.$loose>>;
587
+ source: z.ZodEnum<{
588
+ "vpic-db": "vpic-db";
589
+ "vpic-api": "vpic-api";
590
+ }>;
591
+ }, z.core.$loose>;
592
+ request_id: z.ZodString;
593
+ }, z.core.$loose>;
594
+ readonly create_3d_model: z.ZodObject<{
595
+ data: z.ZodObject<{
596
+ id: z.ZodString;
597
+ object: z.ZodLiteral<"3d_model">;
598
+ status: z.ZodEnum<{
599
+ queued: "queued";
600
+ processing: "processing";
601
+ ready: "ready";
602
+ failed: "failed";
603
+ }>;
604
+ progress: z.ZodNumber;
605
+ stage: z.ZodNullable<z.ZodString>;
606
+ vehicle: z.ZodObject<{
607
+ id: z.ZodNullable<z.ZodString>;
608
+ make: z.ZodString;
609
+ model: z.ZodString;
610
+ year: z.ZodNumber;
611
+ }, z.core.$loose>;
612
+ color: z.ZodString;
613
+ generator: z.ZodString;
614
+ files: z.ZodNullable<z.ZodObject<{
615
+ glb: z.ZodOptional<z.ZodObject<{
616
+ url: z.ZodString;
617
+ bytes: z.ZodNumber;
618
+ content_type: z.ZodString;
619
+ }, z.core.$loose>>;
620
+ glb_web: z.ZodOptional<z.ZodObject<{
621
+ url: z.ZodString;
622
+ bytes: z.ZodNumber;
623
+ content_type: z.ZodString;
624
+ }, z.core.$loose>>;
625
+ usdz: z.ZodOptional<z.ZodObject<{
626
+ url: z.ZodString;
627
+ bytes: z.ZodNumber;
628
+ content_type: z.ZodString;
629
+ }, z.core.$loose>>;
630
+ fbx: z.ZodOptional<z.ZodObject<{
631
+ url: z.ZodString;
632
+ bytes: z.ZodNumber;
633
+ content_type: z.ZodString;
634
+ }, z.core.$loose>>;
635
+ thumbnail: z.ZodOptional<z.ZodObject<{
636
+ url: z.ZodString;
637
+ bytes: z.ZodNumber;
638
+ content_type: z.ZodString;
639
+ }, z.core.$loose>>;
640
+ }, z.core.$loose>>;
641
+ polycount: z.ZodNullable<z.ZodNumber>;
642
+ error: z.ZodNullable<z.ZodObject<{
643
+ code: z.ZodString;
644
+ message: z.ZodString;
645
+ }, z.core.$loose>>;
646
+ estimated_seconds_remaining: z.ZodNullable<z.ZodNumber>;
647
+ webhook: z.ZodNullable<z.ZodObject<{
648
+ url: z.ZodString;
649
+ status: z.ZodNullable<z.ZodString>;
650
+ attempts: z.ZodNumber;
651
+ last_status: z.ZodNullable<z.ZodNumber>;
652
+ delivered_at: z.ZodNullable<z.ZodString>;
653
+ }, z.core.$loose>>;
654
+ public: z.ZodNullable<z.ZodObject<{
655
+ id: z.ZodString;
656
+ url: z.ZodString;
657
+ files: z.ZodNullable<z.ZodObject<{
658
+ glb: z.ZodObject<{
659
+ url: z.ZodString;
660
+ bytes: z.ZodNumber;
661
+ content_type: z.ZodString;
662
+ }, z.core.$loose>;
663
+ usdz: z.ZodOptional<z.ZodObject<{
664
+ url: z.ZodString;
665
+ bytes: z.ZodNumber;
666
+ content_type: z.ZodString;
667
+ }, z.core.$loose>>;
668
+ poster: z.ZodOptional<z.ZodObject<{
669
+ url: z.ZodString;
670
+ bytes: z.ZodNumber;
671
+ content_type: z.ZodString;
672
+ }, z.core.$loose>>;
673
+ }, z.core.$loose>>;
674
+ embed: z.ZodObject<{
675
+ script: z.ZodString;
676
+ html: z.ZodString;
677
+ }, z.core.$loose>;
678
+ published_at: z.ZodString;
679
+ }, z.core.$loose>>;
680
+ created_at: z.ZodString;
681
+ updated_at: z.ZodString;
682
+ ready_at: z.ZodNullable<z.ZodString>;
683
+ }, z.core.$loose>;
684
+ billing: z.ZodObject<{
685
+ charged_on: z.ZodLiteral<"creation">;
686
+ credits_charged: z.ZodNumber;
687
+ credits_remaining: z.ZodNumber;
688
+ already_owned: z.ZodBoolean;
689
+ }, z.core.$loose>;
690
+ request_id: z.ZodString;
691
+ }, z.core.$loose>;
692
+ readonly get_3d_model: z.ZodObject<{
693
+ data: z.ZodObject<{
694
+ id: z.ZodString;
695
+ object: z.ZodLiteral<"3d_model">;
696
+ status: z.ZodEnum<{
697
+ queued: "queued";
698
+ processing: "processing";
699
+ ready: "ready";
700
+ failed: "failed";
701
+ }>;
702
+ progress: z.ZodNumber;
703
+ stage: z.ZodNullable<z.ZodString>;
704
+ vehicle: z.ZodObject<{
705
+ id: z.ZodNullable<z.ZodString>;
706
+ make: z.ZodString;
707
+ model: z.ZodString;
708
+ year: z.ZodNumber;
709
+ }, z.core.$loose>;
710
+ color: z.ZodString;
711
+ generator: z.ZodString;
712
+ files: z.ZodNullable<z.ZodObject<{
713
+ glb: z.ZodOptional<z.ZodObject<{
714
+ url: z.ZodString;
715
+ bytes: z.ZodNumber;
716
+ content_type: z.ZodString;
717
+ }, z.core.$loose>>;
718
+ glb_web: z.ZodOptional<z.ZodObject<{
719
+ url: z.ZodString;
720
+ bytes: z.ZodNumber;
721
+ content_type: z.ZodString;
722
+ }, z.core.$loose>>;
723
+ usdz: z.ZodOptional<z.ZodObject<{
724
+ url: z.ZodString;
725
+ bytes: z.ZodNumber;
726
+ content_type: z.ZodString;
727
+ }, z.core.$loose>>;
728
+ fbx: z.ZodOptional<z.ZodObject<{
729
+ url: z.ZodString;
730
+ bytes: z.ZodNumber;
731
+ content_type: z.ZodString;
732
+ }, z.core.$loose>>;
733
+ thumbnail: z.ZodOptional<z.ZodObject<{
734
+ url: z.ZodString;
735
+ bytes: z.ZodNumber;
736
+ content_type: z.ZodString;
737
+ }, z.core.$loose>>;
738
+ }, z.core.$loose>>;
739
+ polycount: z.ZodNullable<z.ZodNumber>;
740
+ error: z.ZodNullable<z.ZodObject<{
741
+ code: z.ZodString;
742
+ message: z.ZodString;
743
+ }, z.core.$loose>>;
744
+ estimated_seconds_remaining: z.ZodNullable<z.ZodNumber>;
745
+ webhook: z.ZodNullable<z.ZodObject<{
746
+ url: z.ZodString;
747
+ status: z.ZodNullable<z.ZodString>;
748
+ attempts: z.ZodNumber;
749
+ last_status: z.ZodNullable<z.ZodNumber>;
750
+ delivered_at: z.ZodNullable<z.ZodString>;
751
+ }, z.core.$loose>>;
752
+ public: z.ZodNullable<z.ZodObject<{
753
+ id: z.ZodString;
754
+ url: z.ZodString;
755
+ files: z.ZodNullable<z.ZodObject<{
756
+ glb: z.ZodObject<{
757
+ url: z.ZodString;
758
+ bytes: z.ZodNumber;
759
+ content_type: z.ZodString;
760
+ }, z.core.$loose>;
761
+ usdz: z.ZodOptional<z.ZodObject<{
762
+ url: z.ZodString;
763
+ bytes: z.ZodNumber;
764
+ content_type: z.ZodString;
765
+ }, z.core.$loose>>;
766
+ poster: z.ZodOptional<z.ZodObject<{
767
+ url: z.ZodString;
768
+ bytes: z.ZodNumber;
769
+ content_type: z.ZodString;
770
+ }, z.core.$loose>>;
771
+ }, z.core.$loose>>;
772
+ embed: z.ZodObject<{
773
+ script: z.ZodString;
774
+ html: z.ZodString;
775
+ }, z.core.$loose>;
776
+ published_at: z.ZodString;
777
+ }, z.core.$loose>>;
778
+ created_at: z.ZodString;
779
+ updated_at: z.ZodString;
780
+ ready_at: z.ZodNullable<z.ZodString>;
781
+ }, z.core.$loose>;
782
+ request_id: z.ZodString;
783
+ }, z.core.$loose>;
784
+ readonly publish_3d_model: z.ZodObject<{
785
+ data: z.ZodObject<{
786
+ id: z.ZodString;
787
+ object: z.ZodLiteral<"3d_model">;
788
+ status: z.ZodEnum<{
789
+ queued: "queued";
790
+ processing: "processing";
791
+ ready: "ready";
792
+ failed: "failed";
793
+ }>;
794
+ progress: z.ZodNumber;
795
+ stage: z.ZodNullable<z.ZodString>;
796
+ vehicle: z.ZodObject<{
797
+ id: z.ZodNullable<z.ZodString>;
798
+ make: z.ZodString;
799
+ model: z.ZodString;
800
+ year: z.ZodNumber;
801
+ }, z.core.$loose>;
802
+ color: z.ZodString;
803
+ generator: z.ZodString;
804
+ files: z.ZodNullable<z.ZodObject<{
805
+ glb: z.ZodOptional<z.ZodObject<{
806
+ url: z.ZodString;
807
+ bytes: z.ZodNumber;
808
+ content_type: z.ZodString;
809
+ }, z.core.$loose>>;
810
+ glb_web: z.ZodOptional<z.ZodObject<{
811
+ url: z.ZodString;
812
+ bytes: z.ZodNumber;
813
+ content_type: z.ZodString;
814
+ }, z.core.$loose>>;
815
+ usdz: z.ZodOptional<z.ZodObject<{
816
+ url: z.ZodString;
817
+ bytes: z.ZodNumber;
818
+ content_type: z.ZodString;
819
+ }, z.core.$loose>>;
820
+ fbx: z.ZodOptional<z.ZodObject<{
821
+ url: z.ZodString;
822
+ bytes: z.ZodNumber;
823
+ content_type: z.ZodString;
824
+ }, z.core.$loose>>;
825
+ thumbnail: z.ZodOptional<z.ZodObject<{
826
+ url: z.ZodString;
827
+ bytes: z.ZodNumber;
828
+ content_type: z.ZodString;
829
+ }, z.core.$loose>>;
830
+ }, z.core.$loose>>;
831
+ polycount: z.ZodNullable<z.ZodNumber>;
832
+ error: z.ZodNullable<z.ZodObject<{
833
+ code: z.ZodString;
834
+ message: z.ZodString;
835
+ }, z.core.$loose>>;
836
+ estimated_seconds_remaining: z.ZodNullable<z.ZodNumber>;
837
+ webhook: z.ZodNullable<z.ZodObject<{
838
+ url: z.ZodString;
839
+ status: z.ZodNullable<z.ZodString>;
840
+ attempts: z.ZodNumber;
841
+ last_status: z.ZodNullable<z.ZodNumber>;
842
+ delivered_at: z.ZodNullable<z.ZodString>;
843
+ }, z.core.$loose>>;
844
+ public: z.ZodNullable<z.ZodObject<{
845
+ id: z.ZodString;
846
+ url: z.ZodString;
847
+ files: z.ZodNullable<z.ZodObject<{
848
+ glb: z.ZodObject<{
849
+ url: z.ZodString;
850
+ bytes: z.ZodNumber;
851
+ content_type: z.ZodString;
852
+ }, z.core.$loose>;
853
+ usdz: z.ZodOptional<z.ZodObject<{
854
+ url: z.ZodString;
855
+ bytes: z.ZodNumber;
856
+ content_type: z.ZodString;
857
+ }, z.core.$loose>>;
858
+ poster: z.ZodOptional<z.ZodObject<{
859
+ url: z.ZodString;
860
+ bytes: z.ZodNumber;
861
+ content_type: z.ZodString;
862
+ }, z.core.$loose>>;
863
+ }, z.core.$loose>>;
864
+ embed: z.ZodObject<{
865
+ script: z.ZodString;
866
+ html: z.ZodString;
867
+ }, z.core.$loose>;
868
+ published_at: z.ZodString;
869
+ }, z.core.$loose>>;
870
+ created_at: z.ZodString;
871
+ updated_at: z.ZodString;
872
+ ready_at: z.ZodNullable<z.ZodString>;
873
+ }, z.core.$loose>;
874
+ request_id: z.ZodString;
875
+ }, z.core.$loose>;
622
876
  readonly list_requests: z.ZodObject<{
623
877
  data: z.ZodArray<z.ZodObject<{
624
878
  comments: z.ZodNumber;
@@ -870,6 +1124,60 @@ export declare function toVehicleMatch(source: VehicleMatchSource): McpToolOutpu
870
1124
  * Anything else in the payload (`limits`, `sizes.source`) rides along untouched.
871
1125
  */
872
1126
  export declare function toImageOptions(data: unknown): McpToolOutput<"list_image_options">["data"];
1127
+ /** What {@link vinSummary} reads: the part of a decoded VIN both servers hold in the same shape. */
1128
+ export interface VinSummaryInput {
1129
+ vin: string;
1130
+ year: number | null;
1131
+ make: string | null;
1132
+ model: string | null;
1133
+ trim: string | null;
1134
+ errors: ReadonlyArray<{
1135
+ text: string;
1136
+ }>;
1137
+ vehicle: {
1138
+ id: string;
1139
+ make: string;
1140
+ model: string;
1141
+ year: number;
1142
+ } | null;
1143
+ }
1144
+ /** The one-line summary both servers put above a decoded VIN. */
1145
+ export declare function vinSummary(result: VinSummaryInput): string;
1146
+ /** What {@link model3dSummary} reads: the part of a 3D model both servers hold in the same shape. */
1147
+ export interface Model3dSummaryInput {
1148
+ id: string;
1149
+ status: "queued" | "processing" | "ready" | "failed";
1150
+ progress: number;
1151
+ stage: string | null;
1152
+ vehicle: {
1153
+ make: string;
1154
+ model: string;
1155
+ year: number;
1156
+ };
1157
+ color: string;
1158
+ files: Readonly<Partial<Record<string, {
1159
+ bytes: number;
1160
+ }>>> | null;
1161
+ error: {
1162
+ message: string;
1163
+ } | null;
1164
+ estimated_seconds_remaining: number | null;
1165
+ /** The hosted side once published: the summary points the agent at the embed. */
1166
+ public?: {
1167
+ id: string;
1168
+ url: string;
1169
+ files: unknown;
1170
+ embed: {
1171
+ html: string;
1172
+ };
1173
+ } | null;
1174
+ }
1175
+ /** The one-line summary both servers put above a 3D model, with the charge when it was just created. */
1176
+ export declare function model3dSummary(model: Model3dSummaryInput, billing?: {
1177
+ credits_charged: number;
1178
+ credits_remaining: number;
1179
+ already_owned?: boolean;
1180
+ }): string;
873
1181
  export interface McpToolAnnotations {
874
1182
  title?: string;
875
1183
  readOnlyHint?: boolean;