You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add tool execution properties to Tool (#567)
closes#543
## How Has This Been Tested?
unit
## Breaking Changes
binary compatibility in the Tool class
## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [ ] I have added appropriate error handling
- [ ] I have added or updated documentation as needed
---------
Co-authored-by: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com>
Copy file name to clipboardExpand all lines: kotlin-sdk-core/api/kotlin-sdk-core.api
+50-5Lines changed: 50 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -4335,6 +4335,20 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/SubscribeRequestPara
4335
4335
public final fun serializer ()Lkotlinx/serialization/KSerializer;
4336
4336
}
4337
4337
4338
+
public final class io/modelcontextprotocol/kotlin/sdk/types/TaskSupport : java/lang/Enum {
4339
+
public static final field Companion Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport$Companion;
4340
+
public static final field Forbidden Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4341
+
public static final field Optional Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4342
+
public static final field Required Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4343
+
public static fun getEntries ()Lkotlin/enums/EnumEntries;
4344
+
public static fun valueOf (Ljava/lang/String;)Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4345
+
public static fun values ()[Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4346
+
}
4347
+
4348
+
public final class io/modelcontextprotocol/kotlin/sdk/types/TaskSupport$Companion {
4349
+
public final fun serializer ()Lkotlinx/serialization/KSerializer;
4350
+
}
4351
+
4338
4352
public final class io/modelcontextprotocol/kotlin/sdk/types/TextContent : io/modelcontextprotocol/kotlin/sdk/types/MediaContent {
4339
4353
public static final field Companion Lio/modelcontextprotocol/kotlin/sdk/types/TextContent$Companion;
4340
4354
public fun <init> (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/Annotations;Lkotlinx/serialization/json/JsonObject;)V
@@ -4413,21 +4427,23 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/TextResourceContents
4413
4427
4414
4428
public final class io/modelcontextprotocol/kotlin/sdk/types/Tool : io/modelcontextprotocol/kotlin/sdk/types/WithMeta {
4415
4429
public static final field Companion Lio/modelcontextprotocol/kotlin/sdk/types/Tool$Companion;
4416
-
public fun <init> (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lkotlinx/serialization/json/JsonObject;)V
4417
-
public synthetic fun <init> (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lkotlinx/serialization/json/JsonObject;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
4430
+
public fun <init> (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;)V
4431
+
public synthetic fun <init> (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
4418
4432
public final fun component1 ()Ljava/lang/String;
4419
4433
public final fun component2 ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;
4420
4434
public final fun component3 ()Ljava/lang/String;
4421
4435
public final fun component4 ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;
4422
4436
public final fun component5 ()Ljava/lang/String;
4423
4437
public final fun component6 ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;
4424
4438
public final fun component7 ()Ljava/util/List;
4425
-
public final fun component8 ()Lkotlinx/serialization/json/JsonObject;
4426
-
public final fun copy (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lkotlinx/serialization/json/JsonObject;)Lio/modelcontextprotocol/kotlin/sdk/types/Tool;
4427
-
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/Tool;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lkotlinx/serialization/json/JsonObject;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/Tool;
4439
+
public final fun component8 ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;
4440
+
public final fun component9 ()Lkotlinx/serialization/json/JsonObject;
4441
+
public final fun copy (Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;)Lio/modelcontextprotocol/kotlin/sdk/types/Tool;
4442
+
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/Tool;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Ljava/util/List;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/Tool;
4428
4443
public fun equals (Ljava/lang/Object;)Z
4429
4444
public final fun getAnnotations ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;
4430
4445
public final fun getDescription ()Ljava/lang/String;
4446
+
public final fun getExecution ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;
4431
4447
public final fun getIcons ()Ljava/util/List;
4432
4448
public final fun getInputSchema ()Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;
4433
4449
public fun getMeta ()Lkotlinx/serialization/json/JsonObject;
@@ -4491,6 +4507,35 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations$Comp
4491
4507
public final fun serializer ()Lkotlinx/serialization/KSerializer;
4492
4508
}
4493
4509
4510
+
public final class io/modelcontextprotocol/kotlin/sdk/types/ToolExecution {
4511
+
public static final field Companion Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution$Companion;
4512
+
public fun <init> ()V
4513
+
public fun <init> (Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;)V
4514
+
public synthetic fun <init> (Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
4515
+
public final fun component1 ()Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4516
+
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;)Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;
4517
+
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;
4518
+
public fun equals (Ljava/lang/Object;)Z
4519
+
public final fun getTaskSupport ()Lio/modelcontextprotocol/kotlin/sdk/types/TaskSupport;
4520
+
public fun hashCode ()I
4521
+
public fun toString ()Ljava/lang/String;
4522
+
}
4523
+
4524
+
public final synthetic class io/modelcontextprotocol/kotlin/sdk/types/ToolExecution$$serializer : kotlinx/serialization/internal/GeneratedSerializer {
4525
+
public static final field INSTANCE Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution$$serializer;
4526
+
public final fun childSerializers ()[Lkotlinx/serialization/KSerializer;
4527
+
public final fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;
4528
+
public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object;
4529
+
public final fun getDescriptor ()Lkotlinx/serialization/descriptors/SerialDescriptor;
4530
+
public final fun serialize (Lkotlinx/serialization/encoding/Encoder;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;)V
4531
+
public synthetic fun serialize (Lkotlinx/serialization/encoding/Encoder;Ljava/lang/Object;)V
4532
+
public fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
4533
+
}
4534
+
4535
+
public final class io/modelcontextprotocol/kotlin/sdk/types/ToolExecution$Companion {
4536
+
public final fun serializer ()Lkotlinx/serialization/KSerializer;
4537
+
}
4538
+
4494
4539
public final class io/modelcontextprotocol/kotlin/sdk/types/ToolListChangedNotification : io/modelcontextprotocol/kotlin/sdk/types/ServerNotification {
4495
4540
public static final field Companion Lio/modelcontextprotocol/kotlin/sdk/types/ToolListChangedNotification$Companion;
Copy file name to clipboardExpand all lines: kotlin-sdk-server/api/kotlin-sdk-server.api
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -99,8 +99,8 @@ public class io/modelcontextprotocol/kotlin/sdk/server/Server {
99
99
public static synthetic fun addResource$default (Lio/modelcontextprotocol/kotlin/sdk/server/Server;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lkotlin/jvm/functions/Function3;ILjava/lang/Object;)V
100
100
public final fun addResources (Ljava/util/List;)V
101
101
public final fun addTool (Lio/modelcontextprotocol/kotlin/sdk/types/Tool;Lkotlin/jvm/functions/Function3;)V
102
-
public final fun addTool (Ljava/lang/String;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Lkotlinx/serialization/json/JsonObject;Lkotlin/jvm/functions/Function3;)V
103
-
public static synthetic fun addTool$default (Lio/modelcontextprotocol/kotlin/sdk/server/Server;Ljava/lang/String;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Lkotlinx/serialization/json/JsonObject;Lkotlin/jvm/functions/Function3;ILjava/lang/Object;)V
102
+
public final fun addTool (Ljava/lang/String;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;Lkotlin/jvm/functions/Function3;)V
103
+
public static synthetic fun addTool$default (Lio/modelcontextprotocol/kotlin/sdk/server/Server;Ljava/lang/String;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Ljava/lang/String;Lio/modelcontextprotocol/kotlin/sdk/types/ToolSchema;Lio/modelcontextprotocol/kotlin/sdk/types/ToolAnnotations;Lio/modelcontextprotocol/kotlin/sdk/types/ToolExecution;Lkotlinx/serialization/json/JsonObject;Lkotlin/jvm/functions/Function3;ILjava/lang/Object;)V
104
104
public final fun addTools (Ljava/util/List;)V
105
105
public final fun clientConnection (Ljava/lang/String;)Lio/modelcontextprotocol/kotlin/sdk/server/ClientConnection;
106
106
public final fun close (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
0 commit comments