@mcpdesc/validator 0.9.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2820 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "https://mcpdesc.org/schema/mcp-description/0.8.0-draft.4.json",
4
- "title": "MCP Description",
5
- "description": "MCP Description 0.8.0 Community Working Draft 4 (v0.8.0-draft.4; unreleased).",
6
- "type": "object",
7
- "required": [
8
- "mcpdesc",
9
- "info",
10
- "protocolVersions"
11
- ],
12
- "properties": {
13
- "$schema": {
14
- "type": "string"
15
- },
16
- "mcpdesc": {
17
- "type": "string",
18
- "const": "0.8.0"
19
- },
20
- "info": {
21
- "$ref": "#/$defs/info"
22
- },
23
- "protocolVersions": {
24
- "$ref": "#/$defs/protocolVersionScope"
25
- },
26
- "instructions": {
27
- "type": "string"
28
- },
29
- "transports": {
30
- "type": "array",
31
- "minItems": 1,
32
- "items": {
33
- "$ref": "#/$defs/transport"
34
- }
35
- },
36
- "securitySchemes": {
37
- "$ref": "#/$defs/securitySchemeMap"
38
- },
39
- "security": {
40
- "$ref": "#/$defs/securityRequirementArray"
41
- },
42
- "components": {
43
- "$ref": "#/$defs/components"
44
- },
45
- "capabilities": {
46
- "type": "array",
47
- "minItems": 1,
48
- "items": {
49
- "$ref": "#/$defs/capabilities"
50
- }
51
- },
52
- "tools": {
53
- "type": "array",
54
- "minItems": 1,
55
- "items": {
56
- "$ref": "#/$defs/tool"
57
- }
58
- },
59
- "resources": {
60
- "type": "array",
61
- "minItems": 1,
62
- "items": {
63
- "$ref": "#/$defs/resource"
64
- }
65
- },
66
- "resourceTemplates": {
67
- "type": "array",
68
- "minItems": 1,
69
- "items": {
70
- "$ref": "#/$defs/resourceTemplate"
71
- }
72
- },
73
- "prompts": {
74
- "type": "array",
75
- "minItems": 1,
76
- "items": {
77
- "$ref": "#/$defs/prompt"
78
- }
79
- },
80
- "tags": {
81
- "type": "array",
82
- "minItems": 1,
83
- "items": {
84
- "$ref": "#/$defs/tag"
85
- }
86
- }
87
- },
88
- "patternProperties": {
89
- "^x-": {
90
- "$ref": "#/$defs/jsonValue"
91
- }
92
- },
93
- "additionalProperties": false,
94
- "$defs": {
95
- "supportedProtocolVersion": {
96
- "type": "string",
97
- "enum": [
98
- "2024-11-05",
99
- "2025-03-26",
100
- "2025-06-18",
101
- "2025-11-25",
102
- "2026-07-28"
103
- ]
104
- },
105
- "protocolVersionScope": {
106
- "type": "array",
107
- "minItems": 1,
108
- "uniqueItems": true,
109
- "items": {
110
- "$ref": "#/$defs/supportedProtocolVersion"
111
- }
112
- },
113
- "jsonValue": {
114
- "oneOf": [
115
- {
116
- "type": "object",
117
- "additionalProperties": {
118
- "$ref": "#/$defs/jsonValue"
119
- }
120
- },
121
- {
122
- "type": "array",
123
- "items": {
124
- "$ref": "#/$defs/jsonValue"
125
- }
126
- },
127
- {
128
- "type": "string"
129
- },
130
- {
131
- "type": "number"
132
- },
133
- {
134
- "type": "boolean"
135
- },
136
- {
137
- "type": "null"
138
- }
139
- ]
140
- },
141
- "specificationExtensionValue": {
142
- "$ref": "#/$defs/jsonValue"
143
- },
144
- "clientCapabilityValue": {
145
- "type": "object",
146
- "additionalProperties": {
147
- "$ref": "#/$defs/jsonValue"
148
- }
149
- },
150
- "clientCapabilityRequirements": {
151
- "type": "object",
152
- "minProperties": 1,
153
- "properties": {
154
- "roots": {
155
- "$ref": "#/$defs/clientCapabilityValue"
156
- },
157
- "sampling": {
158
- "$ref": "#/$defs/clientCapabilityValue"
159
- },
160
- "elicitation": {
161
- "$ref": "#/$defs/clientCapabilityValue"
162
- },
163
- "tasks": {
164
- "$ref": "#/$defs/clientCapabilityValue"
165
- },
166
- "extensions": {
167
- "$ref": "#/$defs/extensionCapabilities"
168
- },
169
- "experimental": {
170
- "type": "object",
171
- "additionalProperties": {
172
- "$ref": "#/$defs/clientCapabilityValue"
173
- }
174
- }
175
- },
176
- "patternProperties": {
177
- "^x-": {
178
- "$ref": "#/$defs/specificationExtensionValue"
179
- }
180
- },
181
- "additionalProperties": {
182
- "$ref": "#/$defs/clientCapabilityValue"
183
- }
184
- },
185
- "jsonSchemaObject": {
186
- "type": "object",
187
- "additionalProperties": true
188
- },
189
- "referenceObject": {
190
- "type": "object",
191
- "required": [
192
- "$componentRef"
193
- ],
194
- "properties": {
195
- "$componentRef": {
196
- "type": "string",
197
- "pattern": "^#/components/(schemas|toolExamples|resourceExamples|resourceTemplateExamples|promptExamples)/[A-Za-z0-9._-]+$"
198
- }
199
- },
200
- "additionalProperties": false
201
- },
202
- "schemaComponentValue": {
203
- "oneOf": [
204
- {
205
- "$ref": "#/$defs/referenceObject"
206
- },
207
- {
208
- "allOf": [
209
- {
210
- "$ref": "#/$defs/jsonSchemaObject"
211
- },
212
- {
213
- "not": {
214
- "required": [
215
- "$componentRef"
216
- ]
217
- }
218
- }
219
- ]
220
- }
221
- ]
222
- },
223
- "elicitationFormOption": {
224
- "type": "object",
225
- "required": [
226
- "const",
227
- "title"
228
- ],
229
- "properties": {
230
- "const": {
231
- "type": "string"
232
- },
233
- "title": {
234
- "type": "string"
235
- }
236
- },
237
- "additionalProperties": false
238
- },
239
- "elicitationFormProperty": {
240
- "oneOf": [
241
- {
242
- "type": "object",
243
- "required": [
244
- "type"
245
- ],
246
- "properties": {
247
- "type": {
248
- "const": "string"
249
- },
250
- "title": {
251
- "type": "string"
252
- },
253
- "description": {
254
- "type": "string"
255
- },
256
- "minLength": {
257
- "type": "integer",
258
- "minimum": 0
259
- },
260
- "maxLength": {
261
- "type": "integer",
262
- "minimum": 0
263
- },
264
- "format": {
265
- "enum": [
266
- "email",
267
- "uri",
268
- "date",
269
- "date-time"
270
- ]
271
- },
272
- "default": {
273
- "type": "string"
274
- }
275
- },
276
- "additionalProperties": false
277
- },
278
- {
279
- "type": "object",
280
- "required": [
281
- "type"
282
- ],
283
- "properties": {
284
- "type": {
285
- "enum": [
286
- "number",
287
- "integer"
288
- ]
289
- },
290
- "title": {
291
- "type": "string"
292
- },
293
- "description": {
294
- "type": "string"
295
- },
296
- "minimum": {
297
- "type": "number"
298
- },
299
- "maximum": {
300
- "type": "number"
301
- },
302
- "default": {
303
- "type": "number"
304
- }
305
- },
306
- "additionalProperties": false
307
- },
308
- {
309
- "type": "object",
310
- "required": [
311
- "type"
312
- ],
313
- "properties": {
314
- "type": {
315
- "const": "boolean"
316
- },
317
- "title": {
318
- "type": "string"
319
- },
320
- "description": {
321
- "type": "string"
322
- },
323
- "default": {
324
- "type": "boolean"
325
- }
326
- },
327
- "additionalProperties": false
328
- },
329
- {
330
- "type": "object",
331
- "required": [
332
- "type",
333
- "enum"
334
- ],
335
- "properties": {
336
- "type": {
337
- "const": "string"
338
- },
339
- "title": {
340
- "type": "string"
341
- },
342
- "description": {
343
- "type": "string"
344
- },
345
- "enum": {
346
- "type": "array",
347
- "items": {
348
- "type": "string"
349
- }
350
- },
351
- "enumNames": {
352
- "type": "array",
353
- "items": {
354
- "type": "string"
355
- }
356
- },
357
- "default": {
358
- "type": "string"
359
- }
360
- },
361
- "additionalProperties": false
362
- },
363
- {
364
- "type": "object",
365
- "required": [
366
- "type",
367
- "oneOf"
368
- ],
369
- "properties": {
370
- "type": {
371
- "const": "string"
372
- },
373
- "title": {
374
- "type": "string"
375
- },
376
- "description": {
377
- "type": "string"
378
- },
379
- "oneOf": {
380
- "type": "array",
381
- "items": {
382
- "$ref": "#/$defs/elicitationFormOption"
383
- }
384
- },
385
- "default": {
386
- "type": "string"
387
- }
388
- },
389
- "additionalProperties": false
390
- },
391
- {
392
- "type": "object",
393
- "required": [
394
- "type",
395
- "items"
396
- ],
397
- "properties": {
398
- "type": {
399
- "const": "array"
400
- },
401
- "title": {
402
- "type": "string"
403
- },
404
- "description": {
405
- "type": "string"
406
- },
407
- "minItems": {
408
- "type": "integer",
409
- "minimum": 0
410
- },
411
- "maxItems": {
412
- "type": "integer",
413
- "minimum": 0
414
- },
415
- "items": {
416
- "oneOf": [
417
- {
418
- "type": "object",
419
- "required": [
420
- "type",
421
- "enum"
422
- ],
423
- "properties": {
424
- "type": {
425
- "const": "string"
426
- },
427
- "enum": {
428
- "type": "array",
429
- "items": {
430
- "type": "string"
431
- }
432
- }
433
- },
434
- "additionalProperties": false
435
- },
436
- {
437
- "type": "object",
438
- "required": [
439
- "anyOf"
440
- ],
441
- "properties": {
442
- "anyOf": {
443
- "type": "array",
444
- "items": {
445
- "$ref": "#/$defs/elicitationFormOption"
446
- }
447
- }
448
- },
449
- "additionalProperties": false
450
- }
451
- ]
452
- },
453
- "default": {
454
- "type": "array",
455
- "items": {
456
- "type": "string"
457
- }
458
- }
459
- },
460
- "additionalProperties": false
461
- }
462
- ]
463
- },
464
- "elicitationFormSchema": {
465
- "type": "object",
466
- "required": [
467
- "type",
468
- "properties"
469
- ],
470
- "properties": {
471
- "$schema": {
472
- "type": "string",
473
- "format": "uri"
474
- },
475
- "type": {
476
- "const": "object"
477
- },
478
- "properties": {
479
- "type": "object",
480
- "additionalProperties": {
481
- "$ref": "#/$defs/elicitationFormProperty"
482
- }
483
- },
484
- "required": {
485
- "type": "array",
486
- "uniqueItems": true,
487
- "items": {
488
- "type": "string"
489
- }
490
- }
491
- },
492
- "additionalProperties": false
493
- },
494
- "elicitationDeclaration": {
495
- "type": "object",
496
- "required": [
497
- "name",
498
- "mode",
499
- "message"
500
- ],
501
- "properties": {
502
- "name": {
503
- "type": "string",
504
- "pattern": "^[A-Za-z0-9._-]+$"
505
- },
506
- "mode": {
507
- "enum": [
508
- "form",
509
- "url"
510
- ]
511
- },
512
- "message": {
513
- "type": "string",
514
- "minLength": 1
515
- },
516
- "when": {
517
- "type": "string",
518
- "minLength": 1
519
- },
520
- "requestedSchema": {
521
- "oneOf": [
522
- {
523
- "$ref": "#/$defs/referenceObject"
524
- },
525
- {
526
- "$ref": "#/$defs/elicitationFormSchema"
527
- }
528
- ]
529
- },
530
- "url": {
531
- "type": "string",
532
- "format": "uri"
533
- },
534
- "onDecline": {
535
- "type": "string",
536
- "minLength": 1
537
- },
538
- "onCancel": {
539
- "type": "string",
540
- "minLength": 1
541
- },
542
- "protocolVersions": {
543
- "$ref": "#/$defs/protocolVersionScope"
544
- }
545
- },
546
- "oneOf": [
547
- {
548
- "properties": {
549
- "mode": {
550
- "const": "form"
551
- }
552
- },
553
- "required": [
554
- "requestedSchema"
555
- ],
556
- "not": {
557
- "required": [
558
- "url"
559
- ]
560
- }
561
- },
562
- {
563
- "properties": {
564
- "mode": {
565
- "const": "url"
566
- }
567
- },
568
- "not": {
569
- "required": [
570
- "requestedSchema"
571
- ]
572
- }
573
- }
574
- ],
575
- "patternProperties": {
576
- "^x-": {
577
- "$ref": "#/$defs/specificationExtensionValue"
578
- }
579
- },
580
- "additionalProperties": false
581
- },
582
- "tag": {
583
- "type": "object",
584
- "required": [
585
- "name"
586
- ],
587
- "properties": {
588
- "name": {
589
- "type": "string",
590
- "minLength": 1
591
- },
592
- "description": {
593
- "type": "string"
594
- }
595
- },
596
- "patternProperties": {
597
- "^x-": {
598
- "$ref": "#/$defs/specificationExtensionValue"
599
- }
600
- },
601
- "additionalProperties": false
602
- },
603
- "icon": {
604
- "type": "object",
605
- "required": [
606
- "src"
607
- ],
608
- "properties": {
609
- "src": {
610
- "type": "string",
611
- "format": "uri"
612
- },
613
- "mimeType": {
614
- "type": "string"
615
- },
616
- "sizes": {
617
- "type": "array",
618
- "items": {
619
- "type": "string"
620
- }
621
- },
622
- "theme": {
623
- "type": "string",
624
- "enum": [
625
- "light",
626
- "dark"
627
- ]
628
- }
629
- },
630
- "patternProperties": {
631
- "^x-": {
632
- "$ref": "#/$defs/specificationExtensionValue"
633
- }
634
- },
635
- "additionalProperties": false
636
- },
637
- "icons": {
638
- "type": "array",
639
- "minItems": 1,
640
- "items": {
641
- "$ref": "#/$defs/icon"
642
- }
643
- },
644
- "contact": {
645
- "type": "object",
646
- "properties": {
647
- "name": {
648
- "type": "string"
649
- },
650
- "url": {
651
- "type": "string",
652
- "format": "uri"
653
- },
654
- "email": {
655
- "type": "string",
656
- "format": "email"
657
- }
658
- },
659
- "patternProperties": {
660
- "^x-": {
661
- "$ref": "#/$defs/specificationExtensionValue"
662
- }
663
- },
664
- "additionalProperties": false
665
- },
666
- "license": {
667
- "type": "object",
668
- "required": [
669
- "name"
670
- ],
671
- "properties": {
672
- "name": {
673
- "type": "string"
674
- },
675
- "url": {
676
- "type": "string",
677
- "format": "uri"
678
- }
679
- },
680
- "patternProperties": {
681
- "^x-": {
682
- "$ref": "#/$defs/specificationExtensionValue"
683
- }
684
- },
685
- "additionalProperties": false
686
- },
687
- "info": {
688
- "type": "object",
689
- "required": [
690
- "name",
691
- "version"
692
- ],
693
- "properties": {
694
- "name": {
695
- "type": "string",
696
- "minLength": 1
697
- },
698
- "title": {
699
- "type": "string"
700
- },
701
- "description": {
702
- "type": "string"
703
- },
704
- "version": {
705
- "type": "string",
706
- "minLength": 1
707
- },
708
- "id": {
709
- "type": "string"
710
- },
711
- "icons": {
712
- "$ref": "#/$defs/icons"
713
- },
714
- "websiteUrl": {
715
- "type": "string",
716
- "format": "uri"
717
- },
718
- "contact": {
719
- "$ref": "#/$defs/contact"
720
- },
721
- "license": {
722
- "$ref": "#/$defs/license"
723
- }
724
- },
725
- "patternProperties": {
726
- "^x-": {
727
- "$ref": "#/$defs/specificationExtensionValue"
728
- }
729
- },
730
- "additionalProperties": false
731
- },
732
- "oauthFlow": {
733
- "type": "object",
734
- "properties": {
735
- "authorizationUrl": {
736
- "type": "string",
737
- "format": "uri"
738
- },
739
- "tokenUrl": {
740
- "type": "string",
741
- "format": "uri"
742
- },
743
- "refreshUrl": {
744
- "type": "string",
745
- "format": "uri"
746
- },
747
- "scopes": {
748
- "type": "object",
749
- "additionalProperties": {
750
- "type": "string"
751
- }
752
- }
753
- },
754
- "required": [
755
- "scopes"
756
- ],
757
- "patternProperties": {
758
- "^x-": {
759
- "$ref": "#/$defs/specificationExtensionValue"
760
- }
761
- },
762
- "additionalProperties": false
763
- },
764
- "oauthFlows": {
765
- "type": "object",
766
- "properties": {
767
- "implicit": {
768
- "allOf": [
769
- {
770
- "$ref": "#/$defs/oauthFlow"
771
- },
772
- {
773
- "required": [
774
- "authorizationUrl"
775
- ]
776
- }
777
- ]
778
- },
779
- "password": {
780
- "allOf": [
781
- {
782
- "$ref": "#/$defs/oauthFlow"
783
- },
784
- {
785
- "required": [
786
- "tokenUrl"
787
- ]
788
- }
789
- ]
790
- },
791
- "clientCredentials": {
792
- "allOf": [
793
- {
794
- "$ref": "#/$defs/oauthFlow"
795
- },
796
- {
797
- "required": [
798
- "tokenUrl"
799
- ]
800
- }
801
- ]
802
- },
803
- "authorizationCode": {
804
- "allOf": [
805
- {
806
- "$ref": "#/$defs/oauthFlow"
807
- },
808
- {
809
- "required": [
810
- "authorizationUrl",
811
- "tokenUrl"
812
- ]
813
- }
814
- ]
815
- }
816
- },
817
- "patternProperties": {
818
- "^x-": {
819
- "$ref": "#/$defs/specificationExtensionValue"
820
- }
821
- },
822
- "additionalProperties": false,
823
- "anyOf": [
824
- {
825
- "required": [
826
- "implicit"
827
- ]
828
- },
829
- {
830
- "required": [
831
- "password"
832
- ]
833
- },
834
- {
835
- "required": [
836
- "clientCredentials"
837
- ]
838
- },
839
- {
840
- "required": [
841
- "authorizationCode"
842
- ]
843
- }
844
- ]
845
- },
846
- "securityScheme": {
847
- "oneOf": [
848
- {
849
- "type": "object",
850
- "required": [
851
- "type",
852
- "scheme"
853
- ],
854
- "properties": {
855
- "type": {
856
- "const": "http"
857
- },
858
- "scheme": {
859
- "type": "string"
860
- },
861
- "bearerFormat": {
862
- "type": "string"
863
- },
864
- "description": {
865
- "type": "string"
866
- }
867
- },
868
- "patternProperties": {
869
- "^x-": {
870
- "$ref": "#/$defs/specificationExtensionValue"
871
- }
872
- },
873
- "additionalProperties": false
874
- },
875
- {
876
- "type": "object",
877
- "required": [
878
- "type",
879
- "name",
880
- "in"
881
- ],
882
- "properties": {
883
- "type": {
884
- "const": "apiKey"
885
- },
886
- "name": {
887
- "type": "string"
888
- },
889
- "in": {
890
- "type": "string",
891
- "enum": [
892
- "header",
893
- "query",
894
- "cookie"
895
- ]
896
- },
897
- "description": {
898
- "type": "string"
899
- }
900
- },
901
- "patternProperties": {
902
- "^x-": {
903
- "$ref": "#/$defs/specificationExtensionValue"
904
- }
905
- },
906
- "additionalProperties": false
907
- },
908
- {
909
- "type": "object",
910
- "required": [
911
- "type",
912
- "flows"
913
- ],
914
- "properties": {
915
- "type": {
916
- "const": "oauth2"
917
- },
918
- "flows": {
919
- "$ref": "#/$defs/oauthFlows"
920
- },
921
- "description": {
922
- "type": "string"
923
- }
924
- },
925
- "patternProperties": {
926
- "^x-": {
927
- "$ref": "#/$defs/specificationExtensionValue"
928
- }
929
- },
930
- "additionalProperties": false
931
- },
932
- {
933
- "type": "object",
934
- "required": [
935
- "type",
936
- "openIdConnectUrl"
937
- ],
938
- "properties": {
939
- "type": {
940
- "const": "openIdConnect"
941
- },
942
- "openIdConnectUrl": {
943
- "type": "string",
944
- "format": "uri"
945
- },
946
- "description": {
947
- "type": "string"
948
- }
949
- },
950
- "patternProperties": {
951
- "^x-": {
952
- "$ref": "#/$defs/specificationExtensionValue"
953
- }
954
- },
955
- "additionalProperties": false
956
- }
957
- ]
958
- },
959
- "securitySchemeMap": {
960
- "type": "object",
961
- "minProperties": 1,
962
- "propertyNames": {
963
- "pattern": "^[A-Za-z0-9._-]+$"
964
- },
965
- "additionalProperties": {
966
- "$ref": "#/$defs/securityScheme"
967
- }
968
- },
969
- "securityRequirement": {
970
- "type": "object",
971
- "propertyNames": {
972
- "pattern": "^[A-Za-z0-9._-]+$"
973
- },
974
- "additionalProperties": {
975
- "type": "array",
976
- "items": {
977
- "type": "string"
978
- },
979
- "uniqueItems": true
980
- }
981
- },
982
- "securityRequirementArray": {
983
- "type": "array",
984
- "items": {
985
- "$ref": "#/$defs/securityRequirement"
986
- }
987
- },
988
- "toolAnnotations": {
989
- "type": "object",
990
- "properties": {
991
- "title": {
992
- "type": "string"
993
- },
994
- "readOnlyHint": {
995
- "type": "boolean"
996
- },
997
- "destructiveHint": {
998
- "type": "boolean"
999
- },
1000
- "idempotentHint": {
1001
- "type": "boolean"
1002
- },
1003
- "openWorldHint": {
1004
- "type": "boolean"
1005
- }
1006
- },
1007
- "additionalProperties": true
1008
- },
1009
- "execution": {
1010
- "type": "object",
1011
- "properties": {
1012
- "taskSupport": {
1013
- "type": "string",
1014
- "enum": [
1015
- "forbidden",
1016
- "optional",
1017
- "required"
1018
- ]
1019
- }
1020
- },
1021
- "additionalProperties": false
1022
- },
1023
- "metaObject": {
1024
- "type": "object",
1025
- "propertyNames": {
1026
- "pattern": "^(?:(?:[A-Za-z](?:[A-Za-z0-9-]*[A-Za-z0-9])?)(?:\\.[A-Za-z](?:[A-Za-z0-9-]*[A-Za-z0-9])?)*\\/)?(?:[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?)?$"
1027
- },
1028
- "additionalProperties": true
1029
- },
1030
- "resourceAnnotations": {
1031
- "type": "object",
1032
- "properties": {
1033
- "audience": {
1034
- "type": "array",
1035
- "items": {
1036
- "type": "string",
1037
- "enum": [
1038
- "user",
1039
- "assistant"
1040
- ]
1041
- }
1042
- },
1043
- "priority": {
1044
- "type": "number",
1045
- "minimum": 0,
1046
- "maximum": 1
1047
- },
1048
- "lastModified": {
1049
- "type": "string"
1050
- }
1051
- },
1052
- "additionalProperties": true
1053
- },
1054
- "resourceContents": {
1055
- "oneOf": [
1056
- {
1057
- "type": "object",
1058
- "required": [
1059
- "uri",
1060
- "text"
1061
- ],
1062
- "properties": {
1063
- "uri": {
1064
- "type": "string",
1065
- "format": "uri"
1066
- },
1067
- "mimeType": {
1068
- "type": "string"
1069
- },
1070
- "text": {
1071
- "type": "string"
1072
- },
1073
- "_meta": {
1074
- "$ref": "#/$defs/metaObject"
1075
- }
1076
- },
1077
- "additionalProperties": false
1078
- },
1079
- {
1080
- "type": "object",
1081
- "required": [
1082
- "uri",
1083
- "blob"
1084
- ],
1085
- "properties": {
1086
- "uri": {
1087
- "type": "string",
1088
- "format": "uri"
1089
- },
1090
- "mimeType": {
1091
- "type": "string"
1092
- },
1093
- "blob": {
1094
- "type": "string"
1095
- },
1096
- "_meta": {
1097
- "$ref": "#/$defs/metaObject"
1098
- }
1099
- },
1100
- "additionalProperties": false
1101
- }
1102
- ]
1103
- },
1104
- "toolResultContent": {
1105
- "oneOf": [
1106
- {
1107
- "type": "object",
1108
- "required": [
1109
- "type",
1110
- "text"
1111
- ],
1112
- "properties": {
1113
- "type": {
1114
- "const": "text"
1115
- },
1116
- "text": {
1117
- "type": "string"
1118
- },
1119
- "annotations": {
1120
- "$ref": "#/$defs/resourceAnnotations"
1121
- },
1122
- "_meta": {
1123
- "$ref": "#/$defs/metaObject"
1124
- }
1125
- },
1126
- "additionalProperties": false
1127
- },
1128
- {
1129
- "type": "object",
1130
- "required": [
1131
- "type",
1132
- "data",
1133
- "mimeType"
1134
- ],
1135
- "properties": {
1136
- "type": {
1137
- "enum": [
1138
- "image",
1139
- "audio"
1140
- ]
1141
- },
1142
- "data": {
1143
- "type": "string"
1144
- },
1145
- "mimeType": {
1146
- "type": "string"
1147
- },
1148
- "annotations": {
1149
- "$ref": "#/$defs/resourceAnnotations"
1150
- },
1151
- "_meta": {
1152
- "$ref": "#/$defs/metaObject"
1153
- }
1154
- },
1155
- "additionalProperties": false
1156
- },
1157
- {
1158
- "type": "object",
1159
- "required": [
1160
- "type",
1161
- "resource"
1162
- ],
1163
- "properties": {
1164
- "type": {
1165
- "const": "resource"
1166
- },
1167
- "resource": {
1168
- "$ref": "#/$defs/resourceContents"
1169
- },
1170
- "annotations": {
1171
- "$ref": "#/$defs/resourceAnnotations"
1172
- },
1173
- "_meta": {
1174
- "$ref": "#/$defs/metaObject"
1175
- }
1176
- },
1177
- "additionalProperties": false
1178
- },
1179
- {
1180
- "type": "object",
1181
- "required": [
1182
- "type",
1183
- "uri",
1184
- "name"
1185
- ],
1186
- "properties": {
1187
- "type": {
1188
- "const": "resource_link"
1189
- },
1190
- "uri": {
1191
- "type": "string",
1192
- "format": "uri"
1193
- },
1194
- "name": {
1195
- "type": "string"
1196
- },
1197
- "title": {
1198
- "type": "string"
1199
- },
1200
- "description": {
1201
- "type": "string"
1202
- },
1203
- "mimeType": {
1204
- "type": "string"
1205
- },
1206
- "size": {
1207
- "type": "number"
1208
- },
1209
- "icons": {
1210
- "$ref": "#/$defs/icons"
1211
- },
1212
- "annotations": {
1213
- "$ref": "#/$defs/resourceAnnotations"
1214
- },
1215
- "_meta": {
1216
- "$ref": "#/$defs/metaObject"
1217
- }
1218
- },
1219
- "additionalProperties": false
1220
- }
1221
- ]
1222
- },
1223
- "completedToolResultExample": {
1224
- "type": "object",
1225
- "required": [
1226
- "content"
1227
- ],
1228
- "properties": {
1229
- "resultType": {
1230
- "const": "complete"
1231
- },
1232
- "content": {
1233
- "type": "array",
1234
- "items": {
1235
- "$ref": "#/$defs/toolResultContent"
1236
- }
1237
- },
1238
- "structuredContent": {
1239
- "$ref": "#/$defs/jsonValue"
1240
- },
1241
- "isError": {
1242
- "type": "boolean"
1243
- },
1244
- "_meta": {
1245
- "$ref": "#/$defs/metaObject"
1246
- }
1247
- },
1248
- "additionalProperties": true
1249
- },
1250
- "toolExample": {
1251
- "type": "object",
1252
- "required": [
1253
- "input",
1254
- "result"
1255
- ],
1256
- "properties": {
1257
- "input": {
1258
- "type": "object",
1259
- "additionalProperties": {
1260
- "$ref": "#/$defs/jsonValue"
1261
- }
1262
- },
1263
- "result": {
1264
- "$ref": "#/$defs/completedToolResultExample"
1265
- }
1266
- },
1267
- "patternProperties": {
1268
- "^x-": {
1269
- "$ref": "#/$defs/specificationExtensionValue"
1270
- }
1271
- },
1272
- "additionalProperties": false
1273
- },
1274
- "toolExamples": {
1275
- "type": "object",
1276
- "minProperties": 1,
1277
- "propertyNames": {
1278
- "pattern": "^[A-Za-z0-9._-]+$"
1279
- },
1280
- "additionalProperties": {
1281
- "oneOf": [
1282
- {
1283
- "$ref": "#/$defs/referenceObject"
1284
- },
1285
- {
1286
- "$ref": "#/$defs/toolExample"
1287
- }
1288
- ]
1289
- }
1290
- },
1291
- "elicitationInteractionFormRequest": {
1292
- "type": "object",
1293
- "required": [
1294
- "mode",
1295
- "message",
1296
- "requestedSchema"
1297
- ],
1298
- "properties": {
1299
- "mode": {
1300
- "const": "form"
1301
- },
1302
- "message": {
1303
- "type": "string",
1304
- "minLength": 1
1305
- },
1306
- "requestedSchema": {
1307
- "$ref": "#/$defs/elicitationFormSchema"
1308
- }
1309
- },
1310
- "additionalProperties": false
1311
- },
1312
- "elicitationInteractionUrlRequest": {
1313
- "type": "object",
1314
- "required": [
1315
- "mode",
1316
- "message",
1317
- "url"
1318
- ],
1319
- "properties": {
1320
- "mode": {
1321
- "const": "url"
1322
- },
1323
- "message": {
1324
- "type": "string",
1325
- "minLength": 1
1326
- },
1327
- "url": {
1328
- "type": "string",
1329
- "format": "uri"
1330
- }
1331
- },
1332
- "additionalProperties": false
1333
- },
1334
- "elicitationInteractionRequest": {
1335
- "oneOf": [
1336
- {
1337
- "$ref": "#/$defs/elicitationInteractionFormRequest"
1338
- },
1339
- {
1340
- "$ref": "#/$defs/elicitationInteractionUrlRequest"
1341
- }
1342
- ]
1343
- },
1344
- "elicitationInteractionAcceptedResponse": {
1345
- "type": "object",
1346
- "required": [
1347
- "action"
1348
- ],
1349
- "properties": {
1350
- "action": {
1351
- "const": "accept"
1352
- },
1353
- "content": {
1354
- "type": "object",
1355
- "additionalProperties": {
1356
- "$ref": "#/$defs/jsonValue"
1357
- }
1358
- }
1359
- },
1360
- "additionalProperties": false
1361
- },
1362
- "elicitationInteractionDeclinedResponse": {
1363
- "type": "object",
1364
- "required": [
1365
- "action"
1366
- ],
1367
- "properties": {
1368
- "action": {
1369
- "enum": [
1370
- "decline",
1371
- "cancel"
1372
- ]
1373
- }
1374
- },
1375
- "additionalProperties": false
1376
- },
1377
- "elicitationInteractionResponse": {
1378
- "oneOf": [
1379
- {
1380
- "$ref": "#/$defs/elicitationInteractionAcceptedResponse"
1381
- },
1382
- {
1383
- "$ref": "#/$defs/elicitationInteractionDeclinedResponse"
1384
- }
1385
- ]
1386
- },
1387
- "samplingModelHint": {
1388
- "type": "object",
1389
- "required": [
1390
- "name"
1391
- ],
1392
- "properties": {
1393
- "name": {
1394
- "type": "string",
1395
- "minLength": 1
1396
- }
1397
- },
1398
- "additionalProperties": false
1399
- },
1400
- "samplingModelPreferences": {
1401
- "type": "object",
1402
- "properties": {
1403
- "hints": {
1404
- "type": "array",
1405
- "minItems": 1,
1406
- "items": {
1407
- "$ref": "#/$defs/samplingModelHint"
1408
- }
1409
- },
1410
- "costPriority": {
1411
- "type": "number",
1412
- "minimum": 0,
1413
- "maximum": 1
1414
- },
1415
- "speedPriority": {
1416
- "type": "number",
1417
- "minimum": 0,
1418
- "maximum": 1
1419
- },
1420
- "intelligencePriority": {
1421
- "type": "number",
1422
- "minimum": 0,
1423
- "maximum": 1
1424
- }
1425
- },
1426
- "additionalProperties": false
1427
- },
1428
- "samplingToolChoice": {
1429
- "type": "object",
1430
- "required": [
1431
- "mode"
1432
- ],
1433
- "properties": {
1434
- "mode": {
1435
- "enum": [
1436
- "auto",
1437
- "required",
1438
- "none"
1439
- ]
1440
- }
1441
- },
1442
- "additionalProperties": false
1443
- },
1444
- "samplingRequestTool": {
1445
- "type": "object",
1446
- "required": [
1447
- "name",
1448
- "inputSchema"
1449
- ],
1450
- "properties": {
1451
- "name": {
1452
- "type": "string",
1453
- "minLength": 1
1454
- },
1455
- "title": {
1456
- "type": "string"
1457
- },
1458
- "description": {
1459
- "type": "string"
1460
- },
1461
- "inputSchema": {
1462
- "allOf": [
1463
- {
1464
- "$ref": "#/$defs/schemaComponentValue"
1465
- },
1466
- {
1467
- "required": [
1468
- "type"
1469
- ],
1470
- "properties": {
1471
- "type": {
1472
- "const": "object"
1473
- }
1474
- }
1475
- }
1476
- ]
1477
- },
1478
- "annotations": {
1479
- "$ref": "#/$defs/toolAnnotations"
1480
- }
1481
- },
1482
- "patternProperties": {
1483
- "^x-": {
1484
- "$ref": "#/$defs/specificationExtensionValue"
1485
- }
1486
- },
1487
- "additionalProperties": false
1488
- },
1489
- "samplingToolUseContent": {
1490
- "type": "object",
1491
- "required": [
1492
- "type",
1493
- "id",
1494
- "name",
1495
- "input"
1496
- ],
1497
- "properties": {
1498
- "type": {
1499
- "const": "tool_use"
1500
- },
1501
- "id": {
1502
- "type": "string"
1503
- },
1504
- "name": {
1505
- "type": "string"
1506
- },
1507
- "input": {
1508
- "type": "object",
1509
- "additionalProperties": {
1510
- "$ref": "#/$defs/jsonValue"
1511
- }
1512
- }
1513
- },
1514
- "additionalProperties": false
1515
- },
1516
- "samplingToolResultContent": {
1517
- "type": "object",
1518
- "required": [
1519
- "type",
1520
- "toolUseId",
1521
- "content"
1522
- ],
1523
- "properties": {
1524
- "type": {
1525
- "const": "tool_result"
1526
- },
1527
- "toolUseId": {
1528
- "type": "string"
1529
- },
1530
- "content": {
1531
- "oneOf": [
1532
- {
1533
- "$ref": "#/$defs/toolResultContent"
1534
- },
1535
- {
1536
- "type": "array",
1537
- "minItems": 1,
1538
- "items": {
1539
- "$ref": "#/$defs/toolResultContent"
1540
- }
1541
- }
1542
- ]
1543
- },
1544
- "isError": {
1545
- "type": "boolean"
1546
- }
1547
- },
1548
- "additionalProperties": false
1549
- },
1550
- "samplingContentBlock": {
1551
- "oneOf": [
1552
- {
1553
- "$ref": "#/$defs/toolResultContent"
1554
- },
1555
- {
1556
- "$ref": "#/$defs/samplingToolUseContent"
1557
- },
1558
- {
1559
- "$ref": "#/$defs/samplingToolResultContent"
1560
- }
1561
- ]
1562
- },
1563
- "samplingMessageContent": {
1564
- "oneOf": [
1565
- {
1566
- "$ref": "#/$defs/samplingContentBlock"
1567
- },
1568
- {
1569
- "type": "array",
1570
- "minItems": 1,
1571
- "items": {
1572
- "$ref": "#/$defs/samplingContentBlock"
1573
- }
1574
- }
1575
- ]
1576
- },
1577
- "samplingMessage": {
1578
- "type": "object",
1579
- "required": [
1580
- "role",
1581
- "content"
1582
- ],
1583
- "properties": {
1584
- "role": {
1585
- "enum": [
1586
- "user",
1587
- "assistant"
1588
- ]
1589
- },
1590
- "content": {
1591
- "$ref": "#/$defs/samplingMessageContent"
1592
- }
1593
- },
1594
- "additionalProperties": false
1595
- },
1596
- "samplingCreateMessageRequest": {
1597
- "type": "object",
1598
- "required": [
1599
- "messages",
1600
- "maxTokens"
1601
- ],
1602
- "properties": {
1603
- "messages": {
1604
- "type": "array",
1605
- "minItems": 1,
1606
- "items": {
1607
- "$ref": "#/$defs/samplingMessage"
1608
- }
1609
- },
1610
- "modelPreferences": {
1611
- "$ref": "#/$defs/samplingModelPreferences"
1612
- },
1613
- "systemPrompt": {
1614
- "type": "string"
1615
- },
1616
- "includeContext": {
1617
- "enum": [
1618
- "none",
1619
- "thisServer",
1620
- "allServers"
1621
- ]
1622
- },
1623
- "maxTokens": {
1624
- "type": "integer",
1625
- "minimum": 1
1626
- },
1627
- "temperature": {
1628
- "type": "number"
1629
- },
1630
- "stopSequences": {
1631
- "type": "array",
1632
- "items": {
1633
- "type": "string"
1634
- }
1635
- },
1636
- "metadata": {
1637
- "type": "object",
1638
- "additionalProperties": {
1639
- "$ref": "#/$defs/jsonValue"
1640
- }
1641
- },
1642
- "tools": {
1643
- "type": "array",
1644
- "minItems": 1,
1645
- "items": {
1646
- "$ref": "#/$defs/samplingRequestTool"
1647
- }
1648
- },
1649
- "toolChoice": {
1650
- "$ref": "#/$defs/samplingToolChoice"
1651
- }
1652
- },
1653
- "additionalProperties": false
1654
- },
1655
- "samplingCreateMessageResult": {
1656
- "type": "object",
1657
- "required": [
1658
- "role",
1659
- "content",
1660
- "model"
1661
- ],
1662
- "properties": {
1663
- "role": {
1664
- "const": "assistant"
1665
- },
1666
- "content": {
1667
- "$ref": "#/$defs/samplingMessageContent"
1668
- },
1669
- "model": {
1670
- "type": "string"
1671
- },
1672
- "stopReason": {
1673
- "type": "string"
1674
- }
1675
- },
1676
- "additionalProperties": false
1677
- },
1678
- "rootDeclaration": {
1679
- "type": "object",
1680
- "required": [
1681
- "uri"
1682
- ],
1683
- "properties": {
1684
- "uri": {
1685
- "type": "string",
1686
- "format": "uri"
1687
- },
1688
- "name": {
1689
- "type": "string"
1690
- }
1691
- },
1692
- "additionalProperties": false
1693
- },
1694
- "rootsListRequest": {
1695
- "type": "object",
1696
- "maxProperties": 0,
1697
- "additionalProperties": false
1698
- },
1699
- "rootsListResult": {
1700
- "type": "object",
1701
- "required": [
1702
- "roots"
1703
- ],
1704
- "properties": {
1705
- "roots": {
1706
- "type": "array",
1707
- "items": {
1708
- "$ref": "#/$defs/rootDeclaration"
1709
- }
1710
- }
1711
- },
1712
- "additionalProperties": false
1713
- },
1714
- "toolInteractionElicitationStep": {
1715
- "type": "object",
1716
- "required": [
1717
- "type",
1718
- "request",
1719
- "response"
1720
- ],
1721
- "properties": {
1722
- "type": {
1723
- "const": "elicitation"
1724
- },
1725
- "declaration": {
1726
- "type": "string",
1727
- "pattern": "^[A-Za-z0-9._-]+$"
1728
- },
1729
- "request": {
1730
- "$ref": "#/$defs/elicitationInteractionRequest"
1731
- },
1732
- "response": {
1733
- "$ref": "#/$defs/elicitationInteractionResponse"
1734
- }
1735
- },
1736
- "patternProperties": {
1737
- "^x-": {
1738
- "$ref": "#/$defs/specificationExtensionValue"
1739
- }
1740
- },
1741
- "additionalProperties": false
1742
- },
1743
- "toolInteractionSamplingStep": {
1744
- "type": "object",
1745
- "required": [
1746
- "type",
1747
- "request",
1748
- "response"
1749
- ],
1750
- "properties": {
1751
- "type": {
1752
- "const": "sampling"
1753
- },
1754
- "request": {
1755
- "$ref": "#/$defs/samplingCreateMessageRequest"
1756
- },
1757
- "response": {
1758
- "$ref": "#/$defs/samplingCreateMessageResult"
1759
- }
1760
- },
1761
- "patternProperties": {
1762
- "^x-": {
1763
- "$ref": "#/$defs/specificationExtensionValue"
1764
- }
1765
- },
1766
- "additionalProperties": false
1767
- },
1768
- "toolInteractionRootsStep": {
1769
- "type": "object",
1770
- "required": [
1771
- "type",
1772
- "request",
1773
- "response"
1774
- ],
1775
- "properties": {
1776
- "type": {
1777
- "const": "roots"
1778
- },
1779
- "request": {
1780
- "$ref": "#/$defs/rootsListRequest"
1781
- },
1782
- "response": {
1783
- "$ref": "#/$defs/rootsListResult"
1784
- }
1785
- },
1786
- "patternProperties": {
1787
- "^x-": {
1788
- "$ref": "#/$defs/specificationExtensionValue"
1789
- }
1790
- },
1791
- "additionalProperties": false
1792
- },
1793
- "toolInteractionStep": {
1794
- "oneOf": [
1795
- {
1796
- "$ref": "#/$defs/toolInteractionElicitationStep"
1797
- },
1798
- {
1799
- "$ref": "#/$defs/toolInteractionSamplingStep"
1800
- },
1801
- {
1802
- "$ref": "#/$defs/toolInteractionRootsStep"
1803
- }
1804
- ]
1805
- },
1806
- "toolInteractionExample": {
1807
- "type": "object",
1808
- "required": [
1809
- "input",
1810
- "steps",
1811
- "result"
1812
- ],
1813
- "properties": {
1814
- "input": {
1815
- "type": "object",
1816
- "additionalProperties": {
1817
- "$ref": "#/$defs/jsonValue"
1818
- }
1819
- },
1820
- "steps": {
1821
- "type": "array",
1822
- "minItems": 1,
1823
- "items": {
1824
- "$ref": "#/$defs/toolInteractionStep"
1825
- }
1826
- },
1827
- "result": {
1828
- "$ref": "#/$defs/completedToolResultExample"
1829
- }
1830
- },
1831
- "patternProperties": {
1832
- "^x-": {
1833
- "$ref": "#/$defs/specificationExtensionValue"
1834
- }
1835
- },
1836
- "additionalProperties": false
1837
- },
1838
- "toolInteractionExamples": {
1839
- "type": "object",
1840
- "minProperties": 1,
1841
- "propertyNames": {
1842
- "pattern": "^[A-Za-z0-9._-]+$"
1843
- },
1844
- "additionalProperties": {
1845
- "$ref": "#/$defs/toolInteractionExample"
1846
- }
1847
- },
1848
- "completedReadResourceResultExample": {
1849
- "type": "object",
1850
- "required": [
1851
- "contents"
1852
- ],
1853
- "properties": {
1854
- "resultType": {
1855
- "const": "complete"
1856
- },
1857
- "ttlMs": {
1858
- "type": "number",
1859
- "minimum": 0
1860
- },
1861
- "cacheScope": {
1862
- "enum": [
1863
- "public",
1864
- "private"
1865
- ]
1866
- },
1867
- "contents": {
1868
- "type": "array",
1869
- "minItems": 1,
1870
- "items": {
1871
- "$ref": "#/$defs/resourceContents"
1872
- }
1873
- },
1874
- "_meta": {
1875
- "$ref": "#/$defs/metaObject"
1876
- }
1877
- },
1878
- "additionalProperties": true
1879
- },
1880
- "resourceExample": {
1881
- "type": "object",
1882
- "required": [
1883
- "result"
1884
- ],
1885
- "properties": {
1886
- "result": {
1887
- "$ref": "#/$defs/completedReadResourceResultExample"
1888
- }
1889
- },
1890
- "patternProperties": {
1891
- "^x-": {
1892
- "$ref": "#/$defs/specificationExtensionValue"
1893
- }
1894
- },
1895
- "additionalProperties": false
1896
- },
1897
- "resourceExamples": {
1898
- "type": "object",
1899
- "minProperties": 1,
1900
- "propertyNames": {
1901
- "pattern": "^[A-Za-z0-9._-]+$"
1902
- },
1903
- "additionalProperties": {
1904
- "oneOf": [
1905
- {
1906
- "$ref": "#/$defs/referenceObject"
1907
- },
1908
- {
1909
- "$ref": "#/$defs/resourceExample"
1910
- }
1911
- ]
1912
- }
1913
- },
1914
- "resourceTemplateExample": {
1915
- "type": "object",
1916
- "required": [
1917
- "uri",
1918
- "result"
1919
- ],
1920
- "properties": {
1921
- "uri": {
1922
- "type": "string",
1923
- "format": "uri"
1924
- },
1925
- "result": {
1926
- "$ref": "#/$defs/completedReadResourceResultExample"
1927
- }
1928
- },
1929
- "patternProperties": {
1930
- "^x-": {
1931
- "$ref": "#/$defs/specificationExtensionValue"
1932
- }
1933
- },
1934
- "additionalProperties": false
1935
- },
1936
- "resourceTemplateExamples": {
1937
- "type": "object",
1938
- "minProperties": 1,
1939
- "propertyNames": {
1940
- "pattern": "^[A-Za-z0-9._-]+$"
1941
- },
1942
- "additionalProperties": {
1943
- "oneOf": [
1944
- {
1945
- "$ref": "#/$defs/referenceObject"
1946
- },
1947
- {
1948
- "$ref": "#/$defs/resourceTemplateExample"
1949
- }
1950
- ]
1951
- }
1952
- },
1953
- "promptMessageExample": {
1954
- "type": "object",
1955
- "required": [
1956
- "role",
1957
- "content"
1958
- ],
1959
- "properties": {
1960
- "role": {
1961
- "type": "string",
1962
- "enum": [
1963
- "user",
1964
- "assistant"
1965
- ]
1966
- },
1967
- "content": {
1968
- "$ref": "#/$defs/toolResultContent"
1969
- }
1970
- },
1971
- "additionalProperties": false
1972
- },
1973
- "completedPromptResultExample": {
1974
- "type": "object",
1975
- "required": [
1976
- "messages"
1977
- ],
1978
- "properties": {
1979
- "resultType": {
1980
- "const": "complete"
1981
- },
1982
- "description": {
1983
- "type": "string"
1984
- },
1985
- "messages": {
1986
- "type": "array",
1987
- "items": {
1988
- "$ref": "#/$defs/promptMessageExample"
1989
- }
1990
- },
1991
- "_meta": {
1992
- "$ref": "#/$defs/metaObject"
1993
- }
1994
- },
1995
- "additionalProperties": true
1996
- },
1997
- "promptExample": {
1998
- "type": "object",
1999
- "required": [
2000
- "result"
2001
- ],
2002
- "properties": {
2003
- "arguments": {
2004
- "type": "object",
2005
- "additionalProperties": {
2006
- "type": "string"
2007
- }
2008
- },
2009
- "result": {
2010
- "$ref": "#/$defs/completedPromptResultExample"
2011
- }
2012
- },
2013
- "patternProperties": {
2014
- "^x-": {
2015
- "$ref": "#/$defs/specificationExtensionValue"
2016
- }
2017
- },
2018
- "additionalProperties": false
2019
- },
2020
- "promptExamples": {
2021
- "type": "object",
2022
- "minProperties": 1,
2023
- "propertyNames": {
2024
- "pattern": "^[A-Za-z0-9._-]+$"
2025
- },
2026
- "additionalProperties": {
2027
- "oneOf": [
2028
- {
2029
- "$ref": "#/$defs/referenceObject"
2030
- },
2031
- {
2032
- "$ref": "#/$defs/promptExample"
2033
- }
2034
- ]
2035
- }
2036
- },
2037
- "completionArgument": {
2038
- "type": "object",
2039
- "required": [
2040
- "name",
2041
- "value"
2042
- ],
2043
- "properties": {
2044
- "name": {
2045
- "type": "string"
2046
- },
2047
- "value": {
2048
- "type": "string"
2049
- }
2050
- },
2051
- "patternProperties": {
2052
- "^x-": {
2053
- "$ref": "#/$defs/specificationExtensionValue"
2054
- }
2055
- },
2056
- "additionalProperties": false
2057
- },
2058
- "completionContext": {
2059
- "type": "object",
2060
- "required": [
2061
- "arguments"
2062
- ],
2063
- "properties": {
2064
- "arguments": {
2065
- "type": "object",
2066
- "minProperties": 1,
2067
- "additionalProperties": {
2068
- "type": "string"
2069
- }
2070
- }
2071
- },
2072
- "patternProperties": {
2073
- "^x-": {
2074
- "$ref": "#/$defs/specificationExtensionValue"
2075
- }
2076
- },
2077
- "additionalProperties": false
2078
- },
2079
- "completionResult": {
2080
- "type": "object",
2081
- "required": [
2082
- "values"
2083
- ],
2084
- "properties": {
2085
- "values": {
2086
- "type": "array",
2087
- "maxItems": 100,
2088
- "items": {
2089
- "type": "string"
2090
- }
2091
- },
2092
- "total": {
2093
- "type": "integer",
2094
- "minimum": 0
2095
- },
2096
- "hasMore": {
2097
- "type": "boolean"
2098
- }
2099
- },
2100
- "additionalProperties": true
2101
- },
2102
- "completedCompletionResultExample": {
2103
- "type": "object",
2104
- "required": [
2105
- "completion"
2106
- ],
2107
- "properties": {
2108
- "resultType": {
2109
- "const": "complete"
2110
- },
2111
- "completion": {
2112
- "$ref": "#/$defs/completionResult"
2113
- },
2114
- "_meta": {
2115
- "$ref": "#/$defs/metaObject"
2116
- }
2117
- },
2118
- "additionalProperties": true
2119
- },
2120
- "completionExample": {
2121
- "type": "object",
2122
- "required": [
2123
- "argument",
2124
- "result"
2125
- ],
2126
- "properties": {
2127
- "argument": {
2128
- "$ref": "#/$defs/completionArgument"
2129
- },
2130
- "context": {
2131
- "$ref": "#/$defs/completionContext"
2132
- },
2133
- "result": {
2134
- "$ref": "#/$defs/completedCompletionResultExample"
2135
- }
2136
- },
2137
- "patternProperties": {
2138
- "^x-": {
2139
- "$ref": "#/$defs/specificationExtensionValue"
2140
- }
2141
- },
2142
- "additionalProperties": false
2143
- },
2144
- "completionExamples": {
2145
- "type": "object",
2146
- "minProperties": 1,
2147
- "propertyNames": {
2148
- "pattern": "^[A-Za-z0-9._-]+$"
2149
- },
2150
- "additionalProperties": {
2151
- "$ref": "#/$defs/completionExample"
2152
- }
2153
- },
2154
- "componentMap": {
2155
- "type": "object",
2156
- "minProperties": 1,
2157
- "propertyNames": {
2158
- "pattern": "^[A-Za-z0-9._-]+$"
2159
- }
2160
- },
2161
- "components": {
2162
- "type": "object",
2163
- "minProperties": 1,
2164
- "properties": {
2165
- "schemas": {
2166
- "allOf": [
2167
- {
2168
- "$ref": "#/$defs/componentMap"
2169
- },
2170
- {
2171
- "additionalProperties": {
2172
- "$ref": "#/$defs/schemaComponentValue"
2173
- }
2174
- }
2175
- ]
2176
- },
2177
- "toolExamples": {
2178
- "allOf": [
2179
- {
2180
- "$ref": "#/$defs/componentMap"
2181
- },
2182
- {
2183
- "additionalProperties": {
2184
- "oneOf": [
2185
- {
2186
- "$ref": "#/$defs/referenceObject"
2187
- },
2188
- {
2189
- "$ref": "#/$defs/toolExample"
2190
- }
2191
- ]
2192
- }
2193
- }
2194
- ]
2195
- },
2196
- "resourceExamples": {
2197
- "allOf": [
2198
- {
2199
- "$ref": "#/$defs/componentMap"
2200
- },
2201
- {
2202
- "additionalProperties": {
2203
- "oneOf": [
2204
- {
2205
- "$ref": "#/$defs/referenceObject"
2206
- },
2207
- {
2208
- "$ref": "#/$defs/resourceExample"
2209
- }
2210
- ]
2211
- }
2212
- }
2213
- ]
2214
- },
2215
- "resourceTemplateExamples": {
2216
- "allOf": [
2217
- {
2218
- "$ref": "#/$defs/componentMap"
2219
- },
2220
- {
2221
- "additionalProperties": {
2222
- "oneOf": [
2223
- {
2224
- "$ref": "#/$defs/referenceObject"
2225
- },
2226
- {
2227
- "$ref": "#/$defs/resourceTemplateExample"
2228
- }
2229
- ]
2230
- }
2231
- }
2232
- ]
2233
- },
2234
- "promptExamples": {
2235
- "allOf": [
2236
- {
2237
- "$ref": "#/$defs/componentMap"
2238
- },
2239
- {
2240
- "additionalProperties": {
2241
- "oneOf": [
2242
- {
2243
- "$ref": "#/$defs/referenceObject"
2244
- },
2245
- {
2246
- "$ref": "#/$defs/promptExample"
2247
- }
2248
- ]
2249
- }
2250
- }
2251
- ]
2252
- }
2253
- },
2254
- "patternProperties": {
2255
- "^x-": {
2256
- "$ref": "#/$defs/specificationExtensionValue"
2257
- }
2258
- },
2259
- "additionalProperties": false
2260
- },
2261
- "promptArgument": {
2262
- "type": "object",
2263
- "required": [
2264
- "name"
2265
- ],
2266
- "properties": {
2267
- "name": {
2268
- "type": "string"
2269
- },
2270
- "title": {
2271
- "type": "string"
2272
- },
2273
- "description": {
2274
- "type": "string"
2275
- },
2276
- "required": {
2277
- "type": "boolean"
2278
- }
2279
- },
2280
- "patternProperties": {
2281
- "^x-": {
2282
- "$ref": "#/$defs/specificationExtensionValue"
2283
- }
2284
- },
2285
- "additionalProperties": false
2286
- },
2287
- "tool": {
2288
- "type": "object",
2289
- "required": [
2290
- "name",
2291
- "inputSchema"
2292
- ],
2293
- "properties": {
2294
- "protocolVersions": {
2295
- "$ref": "#/$defs/protocolVersionScope"
2296
- },
2297
- "title": {
2298
- "type": "string"
2299
- },
2300
- "description": {
2301
- "type": "string"
2302
- },
2303
- "icons": {
2304
- "$ref": "#/$defs/icons"
2305
- },
2306
- "tags": {
2307
- "type": "array",
2308
- "minItems": 1,
2309
- "items": {
2310
- "type": "string"
2311
- },
2312
- "uniqueItems": true
2313
- },
2314
- "deprecated": {
2315
- "type": "boolean"
2316
- },
2317
- "_meta": {
2318
- "$ref": "#/$defs/metaObject"
2319
- },
2320
- "security": {
2321
- "$ref": "#/$defs/securityRequirementArray"
2322
- },
2323
- "clientRequirements": {
2324
- "$ref": "#/$defs/clientCapabilityRequirements"
2325
- },
2326
- "name": {
2327
- "type": "string",
2328
- "minLength": 1
2329
- },
2330
- "inputSchema": {
2331
- "oneOf": [
2332
- {
2333
- "$ref": "#/$defs/referenceObject"
2334
- },
2335
- {
2336
- "allOf": [
2337
- {
2338
- "$ref": "#/$defs/schemaComponentValue"
2339
- },
2340
- {
2341
- "required": [
2342
- "type"
2343
- ],
2344
- "properties": {
2345
- "type": {
2346
- "const": "object"
2347
- }
2348
- }
2349
- }
2350
- ]
2351
- }
2352
- ]
2353
- },
2354
- "outputSchema": {
2355
- "$ref": "#/$defs/schemaComponentValue"
2356
- },
2357
- "annotations": {
2358
- "$ref": "#/$defs/toolAnnotations"
2359
- },
2360
- "execution": {
2361
- "$ref": "#/$defs/execution"
2362
- },
2363
- "examples": {
2364
- "$ref": "#/$defs/toolExamples"
2365
- },
2366
- "interactionExamples": {
2367
- "$ref": "#/$defs/toolInteractionExamples"
2368
- },
2369
- "elicitations": {
2370
- "type": "array",
2371
- "minItems": 1,
2372
- "items": {
2373
- "$ref": "#/$defs/elicitationDeclaration"
2374
- }
2375
- }
2376
- },
2377
- "patternProperties": {
2378
- "^x-": {
2379
- "$ref": "#/$defs/specificationExtensionValue"
2380
- }
2381
- },
2382
- "additionalProperties": false
2383
- },
2384
- "resource": {
2385
- "type": "object",
2386
- "required": [
2387
- "uri",
2388
- "name"
2389
- ],
2390
- "properties": {
2391
- "protocolVersions": {
2392
- "$ref": "#/$defs/protocolVersionScope"
2393
- },
2394
- "title": {
2395
- "type": "string"
2396
- },
2397
- "description": {
2398
- "type": "string"
2399
- },
2400
- "icons": {
2401
- "$ref": "#/$defs/icons"
2402
- },
2403
- "tags": {
2404
- "type": "array",
2405
- "minItems": 1,
2406
- "items": {
2407
- "type": "string"
2408
- },
2409
- "uniqueItems": true
2410
- },
2411
- "deprecated": {
2412
- "type": "boolean"
2413
- },
2414
- "_meta": {
2415
- "$ref": "#/$defs/metaObject"
2416
- },
2417
- "security": {
2418
- "$ref": "#/$defs/securityRequirementArray"
2419
- },
2420
- "clientRequirements": {
2421
- "$ref": "#/$defs/clientCapabilityRequirements"
2422
- },
2423
- "uri": {
2424
- "type": "string"
2425
- },
2426
- "name": {
2427
- "type": "string"
2428
- },
2429
- "mimeType": {
2430
- "type": "string"
2431
- },
2432
- "size": {
2433
- "type": "number"
2434
- },
2435
- "annotations": {
2436
- "$ref": "#/$defs/resourceAnnotations"
2437
- },
2438
- "examples": {
2439
- "$ref": "#/$defs/resourceExamples"
2440
- },
2441
- "elicitations": {
2442
- "type": "array",
2443
- "minItems": 1,
2444
- "items": {
2445
- "$ref": "#/$defs/elicitationDeclaration"
2446
- }
2447
- }
2448
- },
2449
- "patternProperties": {
2450
- "^x-": {
2451
- "$ref": "#/$defs/specificationExtensionValue"
2452
- }
2453
- },
2454
- "additionalProperties": false
2455
- },
2456
- "resourceTemplate": {
2457
- "type": "object",
2458
- "required": [
2459
- "uriTemplate",
2460
- "name"
2461
- ],
2462
- "properties": {
2463
- "protocolVersions": {
2464
- "$ref": "#/$defs/protocolVersionScope"
2465
- },
2466
- "title": {
2467
- "type": "string"
2468
- },
2469
- "description": {
2470
- "type": "string"
2471
- },
2472
- "icons": {
2473
- "$ref": "#/$defs/icons"
2474
- },
2475
- "tags": {
2476
- "type": "array",
2477
- "minItems": 1,
2478
- "items": {
2479
- "type": "string"
2480
- },
2481
- "uniqueItems": true
2482
- },
2483
- "deprecated": {
2484
- "type": "boolean"
2485
- },
2486
- "_meta": {
2487
- "$ref": "#/$defs/metaObject"
2488
- },
2489
- "security": {
2490
- "$ref": "#/$defs/securityRequirementArray"
2491
- },
2492
- "clientRequirements": {
2493
- "$ref": "#/$defs/clientCapabilityRequirements"
2494
- },
2495
- "uriTemplate": {
2496
- "type": "string"
2497
- },
2498
- "name": {
2499
- "type": "string"
2500
- },
2501
- "mimeType": {
2502
- "type": "string"
2503
- },
2504
- "annotations": {
2505
- "$ref": "#/$defs/resourceAnnotations"
2506
- },
2507
- "examples": {
2508
- "$ref": "#/$defs/resourceTemplateExamples"
2509
- },
2510
- "completionExamples": {
2511
- "$ref": "#/$defs/completionExamples"
2512
- },
2513
- "elicitations": {
2514
- "type": "array",
2515
- "minItems": 1,
2516
- "items": {
2517
- "$ref": "#/$defs/elicitationDeclaration"
2518
- }
2519
- }
2520
- },
2521
- "patternProperties": {
2522
- "^x-": {
2523
- "$ref": "#/$defs/specificationExtensionValue"
2524
- }
2525
- },
2526
- "additionalProperties": false
2527
- },
2528
- "prompt": {
2529
- "type": "object",
2530
- "required": [
2531
- "name"
2532
- ],
2533
- "properties": {
2534
- "protocolVersions": {
2535
- "$ref": "#/$defs/protocolVersionScope"
2536
- },
2537
- "title": {
2538
- "type": "string"
2539
- },
2540
- "description": {
2541
- "type": "string"
2542
- },
2543
- "icons": {
2544
- "$ref": "#/$defs/icons"
2545
- },
2546
- "tags": {
2547
- "type": "array",
2548
- "minItems": 1,
2549
- "items": {
2550
- "type": "string"
2551
- },
2552
- "uniqueItems": true
2553
- },
2554
- "deprecated": {
2555
- "type": "boolean"
2556
- },
2557
- "_meta": {
2558
- "$ref": "#/$defs/metaObject"
2559
- },
2560
- "security": {
2561
- "$ref": "#/$defs/securityRequirementArray"
2562
- },
2563
- "clientRequirements": {
2564
- "$ref": "#/$defs/clientCapabilityRequirements"
2565
- },
2566
- "name": {
2567
- "type": "string"
2568
- },
2569
- "arguments": {
2570
- "type": "array",
2571
- "minItems": 1,
2572
- "items": {
2573
- "$ref": "#/$defs/promptArgument"
2574
- }
2575
- },
2576
- "examples": {
2577
- "$ref": "#/$defs/promptExamples"
2578
- },
2579
- "completionExamples": {
2580
- "$ref": "#/$defs/completionExamples"
2581
- },
2582
- "elicitations": {
2583
- "type": "array",
2584
- "minItems": 1,
2585
- "items": {
2586
- "$ref": "#/$defs/elicitationDeclaration"
2587
- }
2588
- }
2589
- },
2590
- "patternProperties": {
2591
- "^x-": {
2592
- "$ref": "#/$defs/specificationExtensionValue"
2593
- }
2594
- },
2595
- "additionalProperties": false
2596
- },
2597
- "transport": {
2598
- "oneOf": [
2599
- {
2600
- "type": "object",
2601
- "required": [
2602
- "type",
2603
- "url"
2604
- ],
2605
- "properties": {
2606
- "protocolVersions": {
2607
- "$ref": "#/$defs/protocolVersionScope"
2608
- },
2609
- "type": {
2610
- "const": "streamable-http"
2611
- },
2612
- "url": {
2613
- "type": "string",
2614
- "format": "uri"
2615
- },
2616
- "security": {
2617
- "$ref": "#/$defs/securityRequirementArray"
2618
- }
2619
- },
2620
- "patternProperties": {
2621
- "^x-": {
2622
- "$ref": "#/$defs/specificationExtensionValue"
2623
- }
2624
- },
2625
- "additionalProperties": false
2626
- },
2627
- {
2628
- "type": "object",
2629
- "required": [
2630
- "type",
2631
- "command"
2632
- ],
2633
- "properties": {
2634
- "protocolVersions": {
2635
- "$ref": "#/$defs/protocolVersionScope"
2636
- },
2637
- "type": {
2638
- "const": "stdio"
2639
- },
2640
- "command": {
2641
- "type": "string"
2642
- },
2643
- "args": {
2644
- "type": "array",
2645
- "items": {
2646
- "type": "string"
2647
- }
2648
- },
2649
- "env": {
2650
- "type": "object",
2651
- "additionalProperties": {
2652
- "type": "string"
2653
- }
2654
- },
2655
- "security": {
2656
- "$ref": "#/$defs/securityRequirementArray"
2657
- }
2658
- },
2659
- "patternProperties": {
2660
- "^x-": {
2661
- "$ref": "#/$defs/specificationExtensionValue"
2662
- }
2663
- },
2664
- "additionalProperties": false
2665
- },
2666
- {
2667
- "type": "object",
2668
- "required": [
2669
- "type",
2670
- "url"
2671
- ],
2672
- "properties": {
2673
- "protocolVersions": {
2674
- "$ref": "#/$defs/protocolVersionScope"
2675
- },
2676
- "type": {
2677
- "const": "sse"
2678
- },
2679
- "url": {
2680
- "type": "string",
2681
- "format": "uri"
2682
- },
2683
- "security": {
2684
- "$ref": "#/$defs/securityRequirementArray"
2685
- }
2686
- },
2687
- "patternProperties": {
2688
- "^x-": {
2689
- "$ref": "#/$defs/specificationExtensionValue"
2690
- }
2691
- },
2692
- "additionalProperties": false
2693
- }
2694
- ]
2695
- },
2696
- "capabilityTools": {
2697
- "type": "object",
2698
- "properties": {
2699
- "listChanged": {
2700
- "type": "boolean"
2701
- }
2702
- },
2703
- "patternProperties": {
2704
- "^x-": {
2705
- "$ref": "#/$defs/specificationExtensionValue"
2706
- }
2707
- },
2708
- "additionalProperties": false
2709
- },
2710
- "capabilityResources": {
2711
- "type": "object",
2712
- "properties": {
2713
- "subscribe": {
2714
- "type": "boolean"
2715
- },
2716
- "listChanged": {
2717
- "type": "boolean"
2718
- }
2719
- },
2720
- "patternProperties": {
2721
- "^x-": {
2722
- "$ref": "#/$defs/specificationExtensionValue"
2723
- }
2724
- },
2725
- "additionalProperties": false
2726
- },
2727
- "capabilityPrompts": {
2728
- "type": "object",
2729
- "properties": {
2730
- "listChanged": {
2731
- "type": "boolean"
2732
- }
2733
- },
2734
- "patternProperties": {
2735
- "^x-": {
2736
- "$ref": "#/$defs/specificationExtensionValue"
2737
- }
2738
- },
2739
- "additionalProperties": false
2740
- },
2741
- "extensionCapabilities": {
2742
- "type": "object",
2743
- "minProperties": 1,
2744
- "propertyNames": {
2745
- "pattern": "^[A-Za-z](?:[A-Za-z0-9-]*[A-Za-z0-9])?(?:\\.[A-Za-z](?:[A-Za-z0-9-]*[A-Za-z0-9])?)*/[A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?$"
2746
- },
2747
- "additionalProperties": {
2748
- "type": "object"
2749
- }
2750
- },
2751
- "capabilities": {
2752
- "type": "object",
2753
- "properties": {
2754
- "protocolVersions": {
2755
- "$ref": "#/$defs/protocolVersionScope"
2756
- },
2757
- "tools": {
2758
- "$ref": "#/$defs/capabilityTools"
2759
- },
2760
- "resources": {
2761
- "$ref": "#/$defs/capabilityResources"
2762
- },
2763
- "prompts": {
2764
- "$ref": "#/$defs/capabilityPrompts"
2765
- },
2766
- "completions": {
2767
- "type": "object",
2768
- "additionalProperties": true
2769
- },
2770
- "logging": {
2771
- "type": "object",
2772
- "additionalProperties": true
2773
- },
2774
- "tasks": {
2775
- "type": "object",
2776
- "properties": {
2777
- "list": {
2778
- "type": "object",
2779
- "additionalProperties": true
2780
- },
2781
- "cancel": {
2782
- "type": "object",
2783
- "additionalProperties": true
2784
- },
2785
- "requests": {
2786
- "type": "object",
2787
- "properties": {
2788
- "tools": {
2789
- "type": "object",
2790
- "properties": {
2791
- "call": {
2792
- "type": "object",
2793
- "additionalProperties": true
2794
- }
2795
- },
2796
- "additionalProperties": false
2797
- }
2798
- },
2799
- "additionalProperties": false
2800
- }
2801
- },
2802
- "additionalProperties": false
2803
- },
2804
- "extensions": {
2805
- "$ref": "#/$defs/extensionCapabilities"
2806
- },
2807
- "experimental": {
2808
- "type": "object",
2809
- "additionalProperties": true
2810
- }
2811
- },
2812
- "patternProperties": {
2813
- "^x-": {
2814
- "$ref": "#/$defs/specificationExtensionValue"
2815
- }
2816
- },
2817
- "additionalProperties": false
2818
- }
2819
- }
2820
- }