Skip to content

Commit 13f858d

Browse files
authored
Add new helper properties to request and notification types (#388)
Add properties for types of new schema ## Motivation and Context Added getters to simplify access to properties in request and notification types. ## How Has This Been Tested? All tests pass ## Breaking Changes None ## 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 - [x] I have added appropriate error handling - [x] I have added or updated documentation as needed
1 parent 0e6a41d commit 13f858d

File tree

12 files changed

+320
-51
lines changed

12 files changed

+320
-51
lines changed

kotlin-sdk-core/api/kotlin-sdk-core.api

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,9 +773,12 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/CancelledNotificatio
773773
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotificationParams;)Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotification;
774774
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotification;Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotificationParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotification;
775775
public fun equals (Ljava/lang/Object;)Z
776+
public final fun getMeta ()Lkotlinx/serialization/json/JsonObject;
776777
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
777778
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/CancelledNotificationParams;
778779
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/NotificationParams;
780+
public final fun getReason ()Ljava/lang/String;
781+
public final fun getRequestId ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestId;
779782
public fun hashCode ()I
780783
public fun toString ()Ljava/lang/String;
781784
}
@@ -931,9 +934,13 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/CompleteRequest : io
931934
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequest;
932935
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequest;Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequest;
933936
public fun equals (Ljava/lang/Object;)Z
937+
public final fun getArgument ()Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequestParams$Argument;
938+
public final fun getContext ()Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequestParams$Context;
939+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
934940
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
935941
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/CompleteRequestParams;
936942
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
943+
public final fun getRef ()Lio/modelcontextprotocol/kotlin/sdk/types/Reference;
937944
public fun hashCode ()I
938945
public fun toString ()Ljava/lang/String;
939946
}
@@ -1140,9 +1147,18 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequest
11401147
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequest;
11411148
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequest;Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequest;
11421149
public fun equals (Ljava/lang/Object;)Z
1150+
public final fun getIncludeContext ()Lio/modelcontextprotocol/kotlin/sdk/types/IncludeContext;
1151+
public final fun getMaxTokens ()I
1152+
public final fun getMessages ()Ljava/util/List;
1153+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
1154+
public final fun getMetadata ()Lkotlinx/serialization/json/JsonObject;
11431155
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
1156+
public final fun getModelPreferences ()Lio/modelcontextprotocol/kotlin/sdk/types/ModelPreferences;
11441157
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/CreateMessageRequestParams;
11451158
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
1159+
public final fun getStopSequences ()Ljava/util/List;
1160+
public final fun getSystemPrompt ()Ljava/lang/String;
1161+
public final fun getTemperature ()Ljava/lang/Double;
11461162
public fun hashCode ()I
11471163
public fun toString ()Ljava/lang/String;
11481164
}
@@ -1251,6 +1267,7 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/CustomNotification :
12511267
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/Method;Lio/modelcontextprotocol/kotlin/sdk/types/BaseNotificationParams;)Lio/modelcontextprotocol/kotlin/sdk/types/CustomNotification;
12521268
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/CustomNotification;Lio/modelcontextprotocol/kotlin/sdk/types/Method;Lio/modelcontextprotocol/kotlin/sdk/types/BaseNotificationParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/CustomNotification;
12531269
public fun equals (Ljava/lang/Object;)Z
1270+
public final fun getMeta ()Lkotlinx/serialization/json/JsonObject;
12541271
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
12551272
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/BaseNotificationParams;
12561273
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/NotificationParams;
@@ -1305,9 +1322,12 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ElicitRequest : io/m
13051322
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequest;
13061323
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequest;Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequest;
13071324
public fun equals (Ljava/lang/Object;)Z
1325+
public final fun getMessage ()Ljava/lang/String;
1326+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
13081327
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
13091328
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequestParams;
13101329
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
1330+
public final fun getRequestedSchema ()Lio/modelcontextprotocol/kotlin/sdk/types/ElicitRequestParams$RequestedSchema;
13111331
public fun hashCode ()I
13121332
public fun toString ()Ljava/lang/String;
13131333
}
@@ -1733,9 +1753,13 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/InitializeRequest :
17331753
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequest;
17341754
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequest;Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequest;
17351755
public fun equals (Ljava/lang/Object;)Z
1756+
public final fun getCapabilities ()Lio/modelcontextprotocol/kotlin/sdk/types/ClientCapabilities;
1757+
public final fun getClientInfo ()Lio/modelcontextprotocol/kotlin/sdk/types/Implementation;
1758+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
17361759
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
17371760
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/InitializeRequestParams;
17381761
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
1762+
public final fun getProtocolVersion ()Ljava/lang/String;
17391763
public fun hashCode ()I
17401764
public fun toString ()Ljava/lang/String;
17411765
}
@@ -2014,6 +2038,8 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ListPromptsRequest :
20142038
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ListPromptsRequest;
20152039
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ListPromptsRequest;Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ListPromptsRequest;
20162040
public fun equals (Ljava/lang/Object;)Z
2041+
public final fun getCursor ()Ljava/lang/String;
2042+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
20172043
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
20182044
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;
20192045
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -2077,6 +2103,8 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ListResourceTemplate
20772103
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ListResourceTemplatesRequest;
20782104
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ListResourceTemplatesRequest;Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ListResourceTemplatesRequest;
20792105
public fun equals (Ljava/lang/Object;)Z
2106+
public final fun getCursor ()Ljava/lang/String;
2107+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
20802108
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
20812109
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;
20822110
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -2140,6 +2168,8 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ListResourcesRequest
21402168
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ListResourcesRequest;
21412169
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ListResourcesRequest;Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ListResourcesRequest;
21422170
public fun equals (Ljava/lang/Object;)Z
2171+
public final fun getCursor ()Ljava/lang/String;
2172+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
21432173
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
21442174
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;
21452175
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -2203,6 +2233,7 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ListRootsRequest : i
22032233
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ListRootsRequest;
22042234
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ListRootsRequest;Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ListRootsRequest;
22052235
public fun equals (Ljava/lang/Object;)Z
2236+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
22062237
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
22072238
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;
22082239
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -2264,6 +2295,8 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/ListToolsRequest : i
22642295
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/ListToolsRequest;
22652296
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/ListToolsRequest;Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/ListToolsRequest;
22662297
public fun equals (Ljava/lang/Object;)Z
2298+
public final fun getCursor ()Ljava/lang/String;
2299+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
22672300
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
22682301
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/PaginatedRequestParams;
22692302
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -2626,6 +2659,7 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/PingRequest : io/mod
26262659
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/PingRequest;
26272660
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/PingRequest;Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/PingRequest;
26282661
public fun equals (Ljava/lang/Object;)Z
2662+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
26292663
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
26302664
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/BaseRequestParams;
26312665
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
@@ -3717,6 +3751,8 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/SetLevelRequest : io
37173751
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequest;
37183752
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequest;Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequest;
37193753
public fun equals (Ljava/lang/Object;)Z
3754+
public final fun getLevel ()Lio/modelcontextprotocol/kotlin/sdk/types/LoggingLevel;
3755+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
37203756
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
37213757
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
37223758
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/SetLevelRequestParams;
@@ -3809,9 +3845,11 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/SubscribeRequest : i
38093845
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequest;
38103846
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequest;Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequest;
38113847
public fun equals (Ljava/lang/Object;)Z
3848+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
38123849
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
38133850
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
38143851
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/SubscribeRequestParams;
3852+
public final fun getUri ()Ljava/lang/String;
38153853
public fun hashCode ()I
38163854
public fun toString ()Ljava/lang/String;
38173855
}
@@ -4116,9 +4154,11 @@ public final class io/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequest :
41164154
public final fun copy (Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequestParams;)Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequest;
41174155
public static synthetic fun copy$default (Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequest;Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequestParams;ILjava/lang/Object;)Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequest;
41184156
public fun equals (Ljava/lang/Object;)Z
4157+
public final fun getMeta-VI-3G7E ()Lkotlinx/serialization/json/JsonObject;
41194158
public fun getMethod ()Lio/modelcontextprotocol/kotlin/sdk/types/Method;
41204159
public synthetic fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/RequestParams;
41214160
public fun getParams ()Lio/modelcontextprotocol/kotlin/sdk/types/UnsubscribeRequestParams;
4161+
public final fun getUri ()Ljava/lang/String;
41224162
public fun hashCode ()I
41234163
public fun toString ()Ljava/lang/String;
41244164
}

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/PingRequest.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,7 @@ public data class PingRequest(override val params: BaseRequestParams? = null) :
1111
@OptIn(ExperimentalSerializationApi::class)
1212
@EncodeDefault
1313
override val method: Method = Method.Defined.Ping
14+
15+
public val meta: RequestMeta?
16+
get() = params?.meta
1417
}

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,27 @@ public data class CompleteRequest(override val params: CompleteRequestParams) :
1616
@OptIn(ExperimentalSerializationApi::class)
1717
@EncodeDefault
1818
public override val method: Method = Method.Defined.CompletionComplete
19+
20+
/**
21+
* The argument's information for which completion options are requested.
22+
*/
23+
public val argument: CompleteRequestParams.Argument
24+
get() = params.argument
25+
26+
/**
27+
* A reference to either a prompt or resource template to complete within.
28+
*/
29+
public val ref: Reference
30+
get() = params.ref
31+
32+
/**
33+
* Additional, context for generating completions.
34+
*/
35+
public val context: CompleteRequestParams.Context?
36+
get() = params.context
37+
38+
public val meta: RequestMeta?
39+
get() = params.meta
1940
}
2041

2142
/**

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,24 @@ public data class ElicitRequest(override val params: ElicitRequestParams) : Serv
2020
@OptIn(ExperimentalSerializationApi::class)
2121
@EncodeDefault
2222
public override val method: Method = Method.Defined.ElicitationCreate
23+
24+
/**
25+
* The message to present to the user. This should clearly explain what information is being requested and why.
26+
*/
27+
public val message: String
28+
get() = params.message
29+
30+
/**
31+
* A restricted subset of JSON Schema defining the structure of the requested data.
32+
*/
33+
public val requestedSchema: ElicitRequestParams.RequestedSchema
34+
get() = params.requestedSchema
35+
36+
/**
37+
* Metadata for this request. May include a progressToken for out-of-band progress notifications.
38+
*/
39+
public val meta: RequestMeta?
40+
get() = params.meta
2341
}
2442

2543
/**

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.kt

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,30 @@ public data class InitializeRequest(override val params: InitializeRequestParams
2121
@OptIn(ExperimentalSerializationApi::class)
2222
@EncodeDefault
2323
override val method: Method = Method.Defined.Initialize
24+
25+
/**
26+
* The latest version of the Model Context Protocol that the client supports.
27+
*/
28+
public val protocolVersion: String
29+
get() = params.protocolVersion
30+
31+
/**
32+
* The capabilities that this client supports. Describes which optional features the client has implemented.
33+
*/
34+
public val capabilities: ClientCapabilities
35+
get() = params.capabilities
36+
37+
/**
38+
* Information about the client implementation, including name, version, and branding.
39+
*/
40+
public val clientInfo: Implementation
41+
get() = params.clientInfo
42+
43+
/**
44+
* Metadata for this request. May include a progressToken for out-of-band progress notifications.
45+
*/
46+
public val meta: RequestMeta?
47+
get() = params.meta
2448
}
2549

2650
/**

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/logging.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,18 @@ public data class SetLevelRequest(override val params: SetLevelRequestParams) :
6363
@OptIn(ExperimentalSerializationApi::class)
6464
@EncodeDefault
6565
override val method: Method = Method.Defined.LoggingSetLevel
66+
67+
/**
68+
* The minimum severity level of logging that the client wants to receive from the server.
69+
*/
70+
public val level: LoggingLevel
71+
get() = params.level
72+
73+
/**
74+
* Metadata for this request. May include a progressToken for out-of-band progress notifications.
75+
*/
76+
public val meta: RequestMeta?
77+
get() = params.meta
6678
}
6779

6880
/**

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,11 @@ public class Progress(
7777
@Serializable
7878
public data class CustomNotification(override val method: Method, override val params: BaseNotificationParams? = null) :
7979
ClientNotification,
80-
ServerNotification
80+
ServerNotification {
81+
82+
public val meta: JsonObject?
83+
get() = params?.meta
84+
}
8185

8286
// ============================================================================
8387
// Cancelled Notification
@@ -101,6 +105,24 @@ public data class CancelledNotification(override val params: CancelledNotificati
101105
ServerNotification {
102106
@EncodeDefault
103107
override val method: Method = Method.Defined.NotificationsCancelled
108+
109+
/**
110+
* The ID of the request to cancel.
111+
*/
112+
public val requestId: RequestId
113+
get() = params.requestId
114+
115+
/**
116+
* A string describing the reason for the cancellation.
117+
*/
118+
public val reason: String?
119+
get() = params.reason
120+
121+
/**
122+
* Metadata for this notification.
123+
*/
124+
public val meta: JsonObject?
125+
get() = params.meta
104126
}
105127

106128
/**

0 commit comments

Comments
 (0)