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