# Table of Contents - [All modules](#all-modules) - [kotlin-sdk-client](#kotlin-sdk-client) - [ClientOptions](#clientoptions) - [mcpSse](#mcpsse) - [mcpClient](#mcpclient) - [mcpStreamableHttpTransport](#mcpstreamablehttptransport) - [mcpStreamableHttp](#mcpstreamablehttp) - [mcpWebSocket](#mcpwebsocket) - [mcpWebSocketTransport](#mcpwebsockettransport) - [mcpSseTransport](#mcpssetransport) - [io.modelcontextprotocol.kotlin.sdk.client](#io-modelcontextprotocol-kotlin-sdk-client) - [SSEClientTransport](#sseclienttransport) - [StderrSeverity](#stderrseverity) - [SseClientTransport](#sseclienttransport) - [StdioClientTransport](#stdioclienttransport) - [StreamableHttpError](#streamablehttperror) - [StreamableHttpClientTransport](#streamablehttpclienttransport) - [WebSocketClientTransport](#websocketclienttransport) - [Annotations](#annotations) - [BlobResourceContents](#blobresourcecontents) - [kotlin-sdk-core](#kotlin-sdk-core) - [AudioContent](#audiocontent) - [CallToolRequest](#calltoolrequest) - [CallToolResult](#calltoolresult) - [CallToolResult](#calltoolresult) - [CallToolResultBase](#calltoolresultbase) - [Client](#client) - [CancelledNotification](#cancellednotification) - [CancelledNotification](#cancellednotification) - [ClientCapabilities](#clientcapabilities) - [ClientCapabilities](#clientcapabilities) - [ClientRequest](#clientrequest) - [ClientNotification](#clientnotification) - [ClientResult](#clientresult) - [CompleteRequest](#completerequest) - [CompleteRequest](#completerequest) - [CreateElicitationRequest](#createelicitationrequest) - [CreateElicitationResult](#createelicitationresult) - [CompleteResult](#completeresult) - [CompleteResult](#completeresult) - [CreateElicitationRequest](#createelicitationrequest) - [CompatibilityCallToolResult](#compatibilitycalltoolresult) - [CreateElicitationResult](#createelicitationresult) - [Action](#action) - [CreateMessageRequest](#createmessagerequest) - [CreateMessageRequest](#createmessagerequest) - [CreateMessageResult](#createmessageresult) - [Cursor](#cursor) - [CustomMeta](#custommeta) - [CustomRequest](#customrequest) - [EmbeddedResource](#embeddedresource) - [EmptyJsonObject](#emptyjsonobject) - [EmptyRequestResult](#emptyrequestresult) - [error](#error) - [ErrorCode](#errorcode) - [Defined](#defined) - [io.modelcontextprotocol.kotlin.sdk](#io-modelcontextprotocol-kotlin-sdk) - [Unknown](#unknown) - [ExperimentalMcpApi](#experimentalmcpapi) - [GetPromptRequest](#getpromptrequest) - [GetPromptResult](#getpromptresult) - [ImageContent](#imagecontent) - [Implementation](#implementation) - [InitializedNotification](#initializednotification) - [InitializedNotification](#initializednotification) - [InitializeRequest](#initializerequest) - [InitializeResult](#initializeresult) - [JSONRPC_VERSION](#jsonrpc-version) - [JSONRPCError](#jsonrpcerror) - [JSONRPCMessage](#jsonrpcmessage) - [JSONRPCNotification](#jsonrpcnotification) - [JSONRPCRequest](#jsonrpcrequest) - [JSONRPCResponse](#jsonrpcresponse) - [LATEST_PROTOCOL_VERSION](#latest-protocol-version) - [LIB_VERSION](#lib-version) - [ListPromptsRequest](#listpromptsrequest) - [ListPromptsResult](#listpromptsresult) - [ListResourcesResult](#listresourcesresult) - [ListResourceTemplatesRequest](#listresourcetemplatesrequest) - [ListResourcesRequest](#listresourcesrequest) - [ListResourceTemplatesResult](#listresourcetemplatesresult) - [ListRootsRequest](#listrootsrequest) - [ListRootsResult](#listrootsresult) - [ListToolsRequest](#listtoolsrequest) - [ListToolsResult](#listtoolsresult) - [LoggingLevel](#logginglevel) - [LoggingMessageNotification](#loggingmessagenotification) - [LoggingMessageNotification](#loggingmessagenotification) - [McpError](#mcperror) - [Method](#method) - [Companion](#companion) - [Defined](#defined) - [ModelHint](#modelhint) - [ModelPreferences](#modelpreferences) - [Notification](#notification) - [NotificationParams](#notificationparams) - [ok](#ok) - [PaginatedRequest](#paginatedrequest) - [PaginatedResult](#paginatedresult) - [PingRequest](#pingrequest) - [Progress](#progress) - [ProgressBase](#progressbase) - [ProgressNotification](#progressnotification) - [ProgressNotification](#progressnotification) - [ProgressToken](#progresstoken) - [Prompt](#prompt) - [PromptArgument](#promptargument) - [PromptListChangedNotification](#promptlistchangednotification) - [PromptListChangedNotification](#promptlistchangednotification) - [PromptMessage](#promptmessage) - [PromptMessageContent](#promptmessagecontent) - [PromptMessageContentMultimodal](#promptmessagecontentmultimodal) - [PromptReference](#promptreference) - [ReadResourceRequest](#readresourcerequest) - [ReadResourceResult](#readresourceresult) - [Reference](#reference) - [Request](#request) - [RequestId](#requestid) - [RequestResult](#requestresult) - [Resource](#resource) - [ResourceContents](#resourcecontents) - [ResourceListChangedNotification](#resourcelistchangednotification) - [ResourceListChangedNotification](#resourcelistchangednotification) - [ResourceTemplate](#resourcetemplate) - [ResourceTemplateReference](#resourcetemplatereference) - [ResourceUpdatedNotification](#resourceupdatednotification) - [ResourceUpdatedNotification](#resourceupdatednotification) - [Role](#role) - [Root](#root) - [RootsListChangedNotification](#rootslistchangednotification) - [RootsListChangedNotification](#rootslistchangednotification) - [SamplingMessage](#samplingmessage) - [ServerCapabilities](#servercapabilities) - [ServerCapabilities](#servercapabilities) - [ServerNotification](#servernotification) - [ServerRequest](#serverrequest) - [ServerResult](#serverresult) - [StopReason](#stopreason) - [SubscribeRequest](#subscriberequest) - [SUPPORTED_PROTOCOL_VERSIONS](#supported-protocol-versions) - [TextContent](#textcontent) - [TextResourceContents](#textresourcecontents) - [toJSON](#tojson) - [Tool](#tool) - [Tool](#tool) - [ToolAnnotations](#toolannotations) - [ToolListChangedNotification](#toollistchangednotification) - [ToolListChangedNotification](#toollistchangednotification) - [UnknownContent](#unknowncontent) - [UnknownMethodRequestOrNotification](#unknownmethodrequestornotification) - [UnknownReference](#unknownreference) - [UnknownResourceContents](#unknownresourcecontents) - [UnsubscribeRequest](#unsubscriberequest) - [WithMeta](#withmeta) - [io.modelcontextprotocol.kotlin.sdk.internal](#io-modelcontextprotocol-kotlin-sdk-internal) - [IODispatcher](#iodispatcher) - [DEFAULT_REQUEST_TIMEOUT](#default-request-timeout) - [io.modelcontextprotocol.kotlin.sdk.shared](#io-modelcontextprotocol-kotlin-sdk-shared) - [AbstractTransport](#abstracttransport) - [IMPLEMENTATION_NAME](#implementation-name) - [MCP_SUBPROTOCOL](#mcp-subprotocol) - [McpJson](#mcpjson) - [ProgressCallback](#progresscallback) - [ProtocolOptions](#protocoloptions) - [ReadBuffer](#readbuffer) - [Protocol](#protocol) - [RequestHandlerExtra](#requesthandlerextra) - [serializeMessage](#serializemessage) - [RequestOptions](#requestoptions) - [Transport](#transport) - [TransportSendOptions](#transportsendoptions) - [Annotations](#annotations) - [WebSocketMcpTransport](#websocketmcptransport) - [assistant](#assistant) - [assistantAudio](#assistantaudio) - [assistantImage](#assistantimage) - [assistantText](#assistanttext) - [BaseRequestParams](#baserequestparams) - [BaseNotificationParams](#basenotificationparams) - [AudioContent](#audiocontent) - [buildCallToolRequest](#buildcalltoolrequest) - [AudioContentBuilder](#audiocontentbuilder) - [buildElicitRequest](#buildelicitrequest) - [buildCompleteRequest](#buildcompleterequest) - [BlobResourceContents](#blobresourcecontents) - [buildGetPromptRequest](#buildgetpromptrequest) - [buildCreateMessageRequest](#buildcreatemessagerequest) - [buildInitializeRequest](#buildinitializerequest) - [buildListResourceTemplatesRequest](#buildlistresourcetemplatesrequest) - [buildPingRequest](#buildpingrequest) - [buildListPromptsRequest](#buildlistpromptsrequest) - [buildReadResourceRequest](#buildreadresourcerequest) - [buildSubscribeRequest](#buildsubscriberequest) - [buildListResourcesRequest](#buildlistresourcesrequest) - [buildListRootsRequest](#buildlistrootsrequest) - [buildUnsubscribeRequest](#buildunsubscriberequest) - [buildListToolsRequest](#buildlisttoolsrequest) - [buildSetLevelRequest](#buildsetlevelrequest) - [Companion](#companion) - [CallToolRequestBuilder](#calltoolrequestbuilder) - [CallToolRequestParams](#calltoolrequestparams) - [Roots](#roots) - [CallToolResult](#calltoolresult) - [CancelledNotificationParams](#cancellednotificationparams) - [ClientCapabilities](#clientcapabilities) - [CallToolRequest](#calltoolrequest) - [ClientCapabilitiesBuilder](#clientcapabilitiesbuilder) - [CancelledNotification](#cancellednotification) - [ClientResult](#clientresult) - [Argument](#argument) - [Context](#context) - [CompleteRequestBuilder](#completerequestbuilder) - [Completion](#completion) - [ClientNotification](#clientnotification) - [CompleteRequestParams](#completerequestparams) - [CompleteResult](#completeresult) - [ContentBlock](#contentblock) - [TEXT](#text) - [ClientRequest](#clientrequest) - [CompleteRequest](#completerequest) - [IMAGE](#image) - [AUDIO](#audio) - [RESOURCE_LINK](#resource-link) - [ContentTypes](#contenttypes) - [EMBEDDED_RESOURCE](#embedded-resource) - [DEFAULT_NEGOTIATED_PROTOCOL_VERSION](#default-negotiated-protocol-version) - [CreateMessageResult](#createmessageresult) - [CreateMessageRequestBuilder](#createmessagerequestbuilder) - [CreateMessageRequestParams](#createmessagerequestparams) - [CreateMessageRequest](#createmessagerequest) - [CustomRequest](#customrequest) - [CustomNotification](#customnotification) - [ElicitRequestedSchemaBuilder](#elicitrequestedschemabuilder) - [RequestedSchema](#requestedschema) - [ElicitRequestBuilder](#elicitrequestbuilder) - [Action](#action) - [ElicitRequestParams](#elicitrequestparams) - [EmptyJsonObject](#emptyjsonobject) - [error](#error) - [ElicitRequest](#elicitrequest) - [fromJSON](#fromjson) - [ElicitResult](#elicitresult) - [EmptyResult](#emptyresult) - [EmbeddedResource](#embeddedresource) - [GetPromptRequestBuilder](#getpromptrequestbuilder) - [GetPromptRequestParams](#getpromptrequestparams) - [Theme](#theme) - [GetPromptResult](#getpromptresult) - [GetPromptRequest](#getpromptrequest) - [Icon](#icon) - [None](#none) - [ImageContentBuilder](#imagecontentbuilder) - [Implementation](#implementation) - [ImageContent](#imagecontent) - [ThisServer](#thisserver) - [IncludeContext](#includecontext) - [AllServers](#allservers) - [InitializedNotification](#initializednotification) - [InitializeRequest](#initializerequest) - [InitializeRequestBuilder](#initializerequestbuilder) - [io.modelcontextprotocol.kotlin.sdk.types](#io-modelcontextprotocol-kotlin-sdk-types) - [InitializeRequestParams](#initializerequestparams) - [JSONRPC_VERSION](#jsonrpc-version) - [InitializeResult](#initializeresult) - [JSONRPCEmptyMessage](#jsonrpcemptymessage) - [JSONRPCError](#jsonrpcerror) - [JSONRPCMessage](#jsonrpcmessage) - [JSONRPCNotification](#jsonrpcnotification) - [JSONRPCRequest](#jsonrpcrequest) - [JSONRPCResponse](#jsonrpcresponse) - [LATEST_PROTOCOL_VERSION](#latest-protocol-version) - [ListPromptsRequestBuilder](#listpromptsrequestbuilder) - [ListPromptsRequest](#listpromptsrequest) - [ListPromptsResult](#listpromptsresult) - [ListResourcesRequest](#listresourcesrequest) --- # All modules MCP Kotlin SDK ============== Kotlin SDK for the Model Context Protocol (MCP). This is a Kotlin Multiplatform library that helps you build MCP clients and servers that speak the same protocol and share the same types. The SDK focuses on clarity, small building blocks, and first‑class coroutine support. Use the umbrella `kotlin-sdk` artifact when you want a single dependency that brings the core types plus both client and server toolkits. If you only need one side, depend on `kotlin-sdk-client` or `kotlin-sdk-server` directly. Gradle (Kotlin DSL): dependencies { // Convenience bundle with everything you need to start implementation("io.modelcontextprotocol:kotlin-sdk:") // Or pick modules explicitly implementation("io.modelcontextprotocol:kotlin-sdk-client:") implementation("io.modelcontextprotocol:kotlin-sdk-server:") } Content copied to clipboard Module kotlin-sdk-core ---------------------- Foundational, platform‑agnostic pieces: * Protocol data model and JSON serialization (kotlinx.serialization) * Request/response and notification types used by both sides of MCP * Coroutine‑friendly protocol engine and utilities * Transport abstractions shared by client and server You typically do not use `core` directly in application code; it is pulled in by the client/server modules. Use it explicitly if you only need the protocol types or plan to implement a custom transport. Module kotlin-sdk-client ------------------------ High‑level client API for connecting to an MCP server and invoking its tools, prompts, and resources. Ships with several transports: * WebSocketClientTransport – low latency, full‑duplex * SSEClientTransport – Server‑Sent Events over HTTP * StdioClientTransport – CLI‑friendly stdio bridge * StreamableHttpClientTransport – simple HTTP streaming A minimal client: val client = Client( clientInfo = Implementation(name = "sample-client", version = "1.0.0") ) client.connect(WebSocketClientTransport("ws://localhost:8080/mcp")) val tools = client.listTools() val result = client.callTool( name = "echo", arguments = mapOf("text" to "Hello, MCP!") ) Content copied to clipboard Module kotlin-sdk-server ------------------------ Lightweight server toolkit for hosting MCP tools, prompts, and resources. It provides a small, composable API and ready‑to‑use transports: * StdioServerTransport – integrates well with CLIs and editors * SSE/WebSocket helpers for Ktor – easy HTTP deployment Register tools and run over stdio: val server = Server( serverInfo = Implementation(name = "sample-server", version = "1.0.0"), options = ServerOptions(ServerCapabilities()) ) server.addTool( name = "echo", description = "Echoes the provided text" ) { request -> // Build and return a CallToolResult from request.arguments // (see CallToolResult and related types in kotlin-sdk-core) /* ... */ } // Bridge the protocol over stdio val transport = StdioServerTransport( inputStream = kotlinx.io.files.Path("/dev/stdin").source(), outputStream = kotlinx.io.files.Path("/dev/stdout").sink() ) // Start transport and wire it with the server using provided helpers in the SDK. Content copied to clipboard For HTTP deployments, use the Ktor extensions included in the module to expose an MCP WebSocket or SSE endpoint with a few lines of code. All modules: ------------ [kotlin-sdk-client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/index.html) Link copied to clipboard The Model Context Protocol (MCP) Kotlin SDK client module provides a multiplatform implementation for connecting to and interacting with MCP servers. [kotlin-sdk-core](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/index.html) Link copied to clipboard The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. [kotlin-sdk-server](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-server/index.html) Link copied to clipboard The server module provides core server-side functionality for the Model Context Protocol (MCP) Kotlin SDK. This module includes essential parts for writing MCP server applications. --- # kotlin-sdk-client kotlin-sdk-client ================= The Model Context Protocol (MCP) Kotlin SDK client module provides a multiplatform implementation for connecting to and interacting with MCP servers. Features -------- * Cross-platform support for JVM, WASM, JS, and Native * Built-in support for multiple transport protocols (stdio, SSE, WebSocket) * Type-safe API for resource management and server interactions Packages -------- [io.modelcontextprotocol.kotlin.sdk.client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/index.html) Link copied to clipboard common --- # ClientOptions ClientOptions ============= class [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) (val capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) = ClientCapabilities(), enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = true) : [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/Client.kt#L70) ) Options for configuring the MCP client. Members Constructors ------------ [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/-client-options.html) Link copied to clipboard constructor(capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) = ClientCapabilities(), enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = true) Properties ---------- [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/capabilities.html) Link copied to clipboard val [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/capabilities.html) : [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) The capabilities this client supports. [enforceStrictCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html#-1419647146%2FProperties%2F-992846013) Link copied to clipboard var [enforceStrictCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html#-1419647146%2FProperties%2F-992846013) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html#1794050326%2FProperties%2F-992846013) Link copied to clipboard var [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html#1794050326%2FProperties%2F-992846013) : [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) --- # mcpSse mcpSse ====== suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpSse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/KtorClient.kt#L32) ) Creates and connects an MCP client over SSE using the provided HttpClient. #### Return A connected [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ready for MCP communication. #### Parameters urlString Optional URL of the MCP server. reconnectionTime Optional duration to wait before attempting to reconnect. requestBuilder Optional lambda to configure the HTTP request. --- # mcpClient mcpClient ========= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) suspend fun [mcpClient](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-client.html) (clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , clientOptions: [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) = ClientOptions(), transport: [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/Client.kt#L86) ) Initializes and connects an MCP client using the provided clientInfo [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , client options, and transport mechanism. #### Return An instance of [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) that is connected and ready for use with the specified transport. #### Parameters clientInfo The implementation details of the MCP client, including its name, version, and other metadata. clientOptions Optional client configuration settings, such as supported capabilities and strict enforcement options. Defaults to a new instance of ClientOptions. transport The transport mechanism used for communication. --- # mcpStreamableHttpTransport mcpStreamableHttpTransport ========================== fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpStreamableHttpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http-transport.html) (url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StreamableHttpMcpKtorClientExtensions.kt#L18) ) Returns a new Streamable HTTP transport for the Model Context Protocol using the provided HttpClient. #### Return A [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) configured for MCP communication. #### Parameters url URL of the MCP server. reconnectionTime Optional duration to wait before attempting to reconnect. requestBuilder Optional lambda to configure the HTTP request. --- # mcpStreamableHttp mcpStreamableHttp ================= suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpStreamableHttp](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http.html) (url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StreamableHttpMcpKtorClientExtensions.kt#L33) ) Creates and connects an MCP client over Streamable HTTP using the provided HttpClient. #### Return A connected [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ready for MCP communication. #### Parameters url URL of the MCP server. reconnectionTime Optional duration to wait before attempting to reconnect. requestBuilder Optional lambda to configure the HTTP request. --- # mcpWebSocket mcpWebSocket ============ suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpWebSocket](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/WebSocketMcpKtorClientExtensions.kt#L31) ) Creates and connects an MCP client over WebSocket using the provided HttpClient. #### Return A connected [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) ready for MCP communication. #### Parameters urlString Optional URL of the MCP server. requestBuilder Optional lambda to configure the HTTP request. --- # mcpWebSocketTransport mcpWebSocketTransport ===================== fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpWebSocketTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket-transport.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/WebSocketMcpKtorClientExtensions.kt#L19) ) Returns a new WebSocket transport for the Model Context Protocol using the provided HttpClient. #### Return A [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) configured for MCP communication. #### Parameters urlString Optional URL of the MCP server. requestBuilder Optional lambda to configure the HTTP request. --- # mcpSseTransport mcpSseTransport =============== fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpSseTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse-transport.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/KtorClient.kt#L18) ) Returns a new SSE transport for the Model Context Protocol using the provided HttpClient. #### Return A [SSEClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-s-s-e-client-transport/index.html) configured for MCP communication. #### Parameters urlString Optional URL of the MCP server. reconnectionTime Optional duration to wait before attempting to reconnect. requestBuilder Optional lambda to configure the HTTP request. --- # io.modelcontextprotocol.kotlin.sdk.client Package-level declarations ========================== TypesFunctions Types ----- [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) Link copied to clipboard open class [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) (clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , options: [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) = ClientOptions()) : [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/index.html) An MCP client on top of a pluggable transport. [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) Link copied to clipboard class [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) (val capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) = ClientCapabilities(), enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = true) : [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) Options for configuring the MCP client. [SSEClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-s-s-e-client-transport/index.html) Link copied to clipboard typealias [~SSEClientTransport~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-s-s-e-client-transport/index.html) = [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) Link copied to clipboard class [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) Client transport for SSE: this will connect to a server using Server-Sent Events for receiving messages and make separate POST requests for sending messages. [StdioClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/index.html) Link copied to clipboard class [StdioClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/index.html)  @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(input: Source, output: Sink, error: Source? = null, sendChannel: [Channel](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.channels/-channel/index.html) <[JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) \> = Channel(Channel.BUFFERED), classifyStderr: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) = { DEBUG }) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) A transport implementation for JSON-RPC communication over standard I/O streams. [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) Link copied to clipboard class [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) Client transport for Streamable HTTP: this implements the MCP Streamable HTTP transport specification. It will connect to a server using HTTP POST for sending messages and HTTP GET with Server-Sent Events for receiving messages. [StreamableHttpError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html) Link copied to clipboard class [StreamableHttpError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html) (val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) : [Exception](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-exception/index.html) Error class for Streamable HTTP transport errors. [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) Link copied to clipboard class [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) Client transport for WebSocket: this will connect to a server over the WebSocket protocol. Functions --------- [mcpClient](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-client.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) suspend fun [mcpClient](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-client.html) (clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , clientOptions: [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) = ClientOptions(), transport: [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) Initializes and connects an MCP client using the provided clientInfo [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , client options, and transport mechanism. [mcpSse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse.html) Link copied to clipboard suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpSse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) Creates and connects an MCP client over SSE using the provided HttpClient. [mcpSseTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse-transport.html) Link copied to clipboard fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpSseTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-sse-transport.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) Returns a new SSE transport for the Model Context Protocol using the provided HttpClient. [mcpStreamableHttp](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http.html) Link copied to clipboard suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpStreamableHttp](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http.html) (url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) Creates and connects an MCP client over Streamable HTTP using the provided HttpClient. [mcpStreamableHttpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http-transport.html) Link copied to clipboard fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpStreamableHttpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-streamable-http-transport.html) (url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) Returns a new Streamable HTTP transport for the Model Context Protocol using the provided HttpClient. [mcpWebSocket](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket.html) Link copied to clipboard suspend fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpWebSocket](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) Creates and connects an MCP client over WebSocket using the provided HttpClient. [mcpWebSocketTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket-transport.html) Link copied to clipboard fun [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) .[mcpWebSocketTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/mcp-web-socket-transport.html) (urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}): [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) Returns a new WebSocket transport for the Model Context Protocol using the provided HttpClient. --- # SSEClientTransport SSEClientTransport ================== typealias [~SSEClientTransport~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-s-s-e-client-transport/index.html) = [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/SSEClientTransport.kt#L38) ) ### Deprecated (with error) Use SseClientTransport instead #### Replace with SseClientTransport Content copied to clipboard --- # StderrSeverity StderrSeverity ============== enum [StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) \> ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StdioClientTransport.kt#L112) ) Severity classification for stderr messages. * [FATAL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-f-a-t-a-l/index.html) : Calls error handler and terminates transport. * [WARNING](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-w-a-r-n-i-n-g/index.html) : Logs at WARN level, transport continues. * [INFO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-n-f-o/index.html) : Logs at INFO level, transport continues. * [DEBUG](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-d-e-b-u-g/index.html) : Logs at DEBUG level, transport continues. * [IGNORE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html) : Discards message silently, transport continues. MembersEntries Entries ------- [FATAL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-f-a-t-a-l/index.html) Link copied to clipboard [FATAL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-f-a-t-a-l/index.html) [WARNING](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-w-a-r-n-i-n-g/index.html) Link copied to clipboard [WARNING](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-w-a-r-n-i-n-g/index.html) [INFO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-n-f-o/index.html) Link copied to clipboard [INFO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-n-f-o/index.html) [DEBUG](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-d-e-b-u-g/index.html) Link copied to clipboard [DEBUG](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-d-e-b-u-g/index.html) [IGNORE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html) Link copied to clipboard [IGNORE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html) Properties ---------- [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/entries.html) Link copied to clipboard val [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/entries.html) : [EnumEntries](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html) <[StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) \> Returns a representation of an immutable list of all enum entries, in the order they're declared. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html#-372974862%2FProperties%2F-992846013) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html#-372974862%2FProperties%2F-992846013) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html#-739389684%2FProperties%2F-992846013) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-i-g-n-o-r-e/index.html#-739389684%2FProperties%2F-992846013) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) Functions --------- [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/value-of.html) Link copied to clipboard fun [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/value-of.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/values.html) Link copied to clipboard fun [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/values.html) (): [Array](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html) <[StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) \> Returns an array containing the constants of this enum type, in the order they're declared. --- # SseClientTransport SseClientTransport ================== class [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/SSEClientTransport.kt#L45) ) Client transport for SSE: this will connect to a server using Server-Sent Events for receiving messages and make separate POST requests for sending messages. Members Constructors ------------ [SseClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/-sse-client-transport.html) Link copied to clipboard constructor(client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/close.html) Link copied to clipboard open suspend override fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/close.html) () [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/send.html) Link copied to clipboard open suspend override fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ?) [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/start.html) Link copied to clipboard open suspend override fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-sse-client-transport/start.html) () --- # StdioClientTransport StdioClientTransport ==================== class [StdioClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/index.html)  @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(input: Source, output: Sink, error: Source? = null, sendChannel: [Channel](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.channels/-channel/index.html) <[JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) \> = Channel(Channel.BUFFERED), classifyStderr: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) = { DEBUG }) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StdioClientTransport.kt#L85) ) A transport implementation for JSON-RPC communication over standard I/O streams. Reads JSON-RPC messages from [input](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/--root--.html) and writes messages to [output](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/--root--.html) . Optionally monitors [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/--root--.html) stream for stderr output with configurable severity handling. Usage Example ------------- val process = ProcessBuilder("mcp-server").start()val transport = StdioClientTransport( input = process.inputStream.asSource().buffered(), output = process.outputStream.asSink().buffered(), error = process.errorStream.asSource().buffered()) { stderrLine -> when { stderrLine.contains("error", ignoreCase = true) -> StderrSeverity.FATAL stderrLine.contains("warning", ignoreCase = true) -> StderrSeverity.WARNING else -> StderrSeverity.INFO }}transport.start() Content copied to clipboard #### Parameters input The input stream where messages are received. output The output stream where messages are sent. error Optional error stream for stderr monitoring. sendChannel Channel for outbound messages. Default: buffered channel (implementation-default capacity). classifyStderr Callback to classify stderr lines. Return [StderrSeverity.FATAL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/-f-a-t-a-l/index.html) to fail transport, or StderrSeverity.WARNING / StderrSeverity.INFO / StderrSeverity.DEBUG to log, or StderrSeverity.IGNORE to discard. Default value: StderrSeverity.DEBUG. #### See also [MCP Specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#stdio) [Channel.Factory.BUFFERED](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.channels/-channel/-factory/-b-u-f-f-e-r-e-d.html) Members Constructors ------------ [StdioClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stdio-client-transport.html) Link copied to clipboard @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(input: Source, output: Sink, error: Source? = null, sendChannel: [Channel](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.channels/-channel/index.html) <[JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) \> = Channel(Channel.BUFFERED), classifyStderr: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) = { DEBUG }) Types ----- [StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) Link copied to clipboard enum [StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[StdioClientTransport.StderrSeverity](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/-stderr-severity/index.html) \> Severity classification for stderr messages. Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/close.html) Link copied to clipboard open suspend override fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/close.html) () [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/send.html) Link copied to clipboard open suspend override fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ?) [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/start.html) Link copied to clipboard open suspend override fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-stdio-client-transport/start.html) () --- # StreamableHttpError StreamableHttpError =================== class [StreamableHttpError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html) (val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) : [Exception](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-exception/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StreamableHttpClientTransport.kt#L52) ) Error class for Streamable HTTP transport errors. Members Constructors ------------ [StreamableHttpError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/-streamable-http-error.html) Link copied to clipboard constructor(code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Properties ---------- [cause](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html#-654012527%2FProperties%2F-992846013) Link copied to clipboard expect open val [cause](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html#-654012527%2FProperties%2F-992846013) : [Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ? [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/code.html) Link copied to clipboard val [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/code.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html#1824300659%2FProperties%2F-992846013) Link copied to clipboard expect open val [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-error/index.html#1824300659%2FProperties%2F-992846013) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? --- # StreamableHttpClientTransport StreamableHttpClientTransport ============================= class [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/StreamableHttpClientTransport.kt#L61) ) Client transport for Streamable HTTP: this implements the MCP Streamable HTTP transport specification. It will connect to a server using HTTP POST for sending messages and HTTP GET with Server-Sent Events for receiving messages. Members Constructors ------------ [StreamableHttpClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/-streamable-http-client-transport.html) Link copied to clipboard constructor(client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , url: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , reconnectionTime: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ? = null, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) Properties ---------- [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/protocol-version.html) Link copied to clipboard var [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/protocol-version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? [sessionId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/session-id.html) Link copied to clipboard var [sessionId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/session-id.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/close.html) Link copied to clipboard open suspend override fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/close.html) () [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/send.html) Link copied to clipboard open suspend override fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ?) Sends a single message with optional resumption support suspend fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null) Sends one or more messages with optional resumption support. This is the main send method that matches the TypeScript implementation. [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/start.html) Link copied to clipboard open suspend override fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/start.html) () [terminateSession](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/terminate-session.html) Link copied to clipboard suspend fun [terminateSession](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-streamable-http-client-transport/terminate-session.html) () Terminates the current session by sending a DELETE request to the server. --- # WebSocketClientTransport WebSocketClientTransport ======================== class [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html) (client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) : [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/WebSocketClientTransport.kt#L19) ) Client transport for WebSocket: this will connect to a server over the WebSocket protocol. Members Constructors ------------ [WebSocketClientTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/-web-socket-client-transport.html) Link copied to clipboard constructor(client: [HttpClient](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client/-http-client/index.html) , urlString: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, requestBuilder: [HttpRequestBuilder](https://api.ktor.io/ktor-client/ktor-client-core/io.ktor.client.request/-http-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) = {}) Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-1421348657%2FFunctions%2F-992846013) Link copied to clipboard open suspend override fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-1421348657%2FFunctions%2F-992846013) () [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-448146647%2FFunctions%2F-992846013) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-87166409%2FFunctions%2F-992846013) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-272650756%2FFunctions%2F-992846013) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-999671680%2FFunctions%2F-992846013) Link copied to clipboard open suspend override fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-999671680%2FFunctions%2F-992846013) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ?) [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-1215416923%2FFunctions%2F-992846013) Link copied to clipboard open suspend override fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-web-socket-client-transport/index.html#-1215416923%2FFunctions%2F-992846013) () --- # Annotations Annotations =========== typealias [~Annotations~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-annotations/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1490) ) ### Deprecated Use \`Annotations\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Annotations Content copied to clipboard Annotations Content copied to clipboard Optional annotations for the client. The client can use annotations to inform how objects are used or displayed. --- # BlobResourceContents BlobResourceContents ==================== typealias [~BlobResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-blob-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1133) ) ### Deprecated Use \`BlobResourceContents\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.BlobResourceContents Content copied to clipboard BlobResourceContents Content copied to clipboard Represents the binary contents of a resource encoded as a base64 string. --- # kotlin-sdk-core kotlin-sdk-core =============== commonjsjvmnativewasmJs The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. The MCP Kotlin SDK Core module provides fundamental functionality for interacting with Model Context Protocol (MCP). This module serves as the foundation for building MCP-enabled applications in Kotlin. Packages -------- [io.modelcontextprotocol.kotlin.sdk](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/index.html) Link copied to clipboard common [io.modelcontextprotocol.kotlin.sdk.internal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/index.html) Link copied to clipboard common js jvm native wasmJs [io.modelcontextprotocol.kotlin.sdk.shared](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/index.html) Link copied to clipboard common [io.modelcontextprotocol.kotlin.sdk.types](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/index.html) Link copied to clipboard common --- # AudioContent AudioContent ============ typealias [~AudioContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-audio-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1433) ) ### Deprecated Use \`AudioContent\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.AudioContent Content copied to clipboard AudioContent Content copied to clipboard Audio provided to or from an LLM. --- # CallToolRequest CallToolRequest =============== typealias [~CallToolRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1709) ) ### Deprecated Use \`CallToolRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CallToolRequest Content copied to clipboard CallToolRequest Content copied to clipboard Used by the client to invoke a tool provided by the server. --- # CallToolResult CallToolResult ============== object [~CallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1666) ) ### Deprecated Use \`CallToolResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CallToolResult Content copied to clipboard CallToolResult Content copied to clipboard Members & Extensions Functions --------- [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) Link copied to clipboard fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~error~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) , with `isError` being true. [ok](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) Link copied to clipboard fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~ok~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) . --- # CallToolResult CallToolResult ============== fun [~CallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result.html) (content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \>, isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1676) ) ### Deprecated Use \`CallToolResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CallToolResult Content copied to clipboard CallToolResult Content copied to clipboard The server's response to a tool call. --- # CallToolResultBase CallToolResultBase ================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [~CallToolResultBase~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1655) ) ### Deprecated This interface will be removed. #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CallToolResult Content copied to clipboard CallToolResult Content copied to clipboard The server's response to a tool call. Members Properties ---------- [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/content.html) Link copied to clipboard abstract val [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/content.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) \> [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/is-error.html) Link copied to clipboard open val [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/is-error.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/structured-content.html) Link copied to clipboard abstract val [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/structured-content.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? --- # Client Client ====== open class [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html) (clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , options: [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) = ClientOptions()) : [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-client/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/client/Client.kt#L110) ) An MCP client on top of a pluggable transport. The client automatically performs the initialization handshake with the server when [connect](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/connect.html) is called. After initialization, [serverCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-capabilities.html) and [serverVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-version.html) provide details about the connected server. You can extend this class with custom request/notification/result types if needed. #### Parameters clientInfo Information about the client implementation (name, version). options Configuration options for this client. Members Constructors ------------ [Client](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/-client.html) Link copied to clipboard constructor(clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , options: [ClientOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client-options/index.html) = ClientOptions()) Properties ---------- [fallbackNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1758052378%2FProperties%2F-992846013) Link copied to clipboard var [fallbackNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1758052378%2FProperties%2F-992846013) : suspend (notification: [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? [fallbackRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1260983750%2FProperties%2F-992846013) Link copied to clipboard var [fallbackRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1260983750%2FProperties%2F-992846013) : suspend (request: [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) , extra: [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?? [notificationHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#520899939%2FProperties%2F-992846013) Link copied to clipboard val [notificationHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#520899939%2FProperties%2F-992846013) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , suspend (notification: [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \> [progressHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#2134090081%2FProperties%2F-992846013) Link copied to clipboard val [progressHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#2134090081%2FProperties%2F-992846013) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) , [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) \> [requestHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1118598965%2FProperties%2F-992846013) Link copied to clipboard val [requestHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1118598965%2FProperties%2F-992846013) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , suspend (request: [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) , extra: [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?\> [responseHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1063182797%2FProperties%2F-992846013) Link copied to clipboard val [responseHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1063182797%2FProperties%2F-992846013) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , (response: [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) ?, error: [Exception](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-exception/index.html) ?) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \> [serverCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-capabilities.html) Link copied to clipboard var [serverCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-capabilities.html) : [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) ? Retrieves the server's reported capabilities after the initialization process completes. [serverInstructions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-instructions.html) Link copied to clipboard var [serverInstructions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-instructions.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional human-readable instructions or description from the server. [serverVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-version.html) Link copied to clipboard var [serverVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/server-version.html) : [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) ? Retrieves the server's reported version information after initialization. [transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1392522586%2FProperties%2F-992846013) Link copied to clipboard var [transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1392522586%2FProperties%2F-992846013) : [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ? Functions --------- [addRoot](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/add-root.html) Link copied to clipboard fun [addRoot](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/add-root.html) (uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Registers a single root. [addRoots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/add-roots.html) Link copied to clipboard fun [addRoots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/add-roots.html) (rootsToAdd: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) \>) Registers multiple roots at once. [assertRequestHandlerCapability](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/assert-request-handler-capability.html) Link copied to clipboard open override fun [assertRequestHandlerCapability](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/assert-request-handler-capability.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) [callTool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/call-tool.html) Link copied to clipboard suspend fun [callTool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/call-tool.html) (request: [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Calls a tool on the server using a [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) object. suspend fun [callTool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/call-tool.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ?\>, meta: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ?\> = emptyMap(), options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Calls a tool on the server by name, passing the specified arguments and metadata. [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#971540587%2FFunctions%2F-992846013) Link copied to clipboard suspend fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#971540587%2FFunctions%2F-992846013) () [complete](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/complete.html) Link copied to clipboard suspend fun [complete](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/complete.html) (params: [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) Sends a completion request to the server, typically to generate or complete some content. [connect](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/connect.html) Link copied to clipboard open suspend override fun [connect](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/connect.html) (transport: [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ) Connects the client to the given [transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/connect.html) , performing the initialization handshake with the server. [getPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/get-prompt.html) Link copied to clipboard suspend fun [getPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/get-prompt.html) (request: [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) Retrieves a prompt by name from the server. [listPrompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-prompts.html) Link copied to clipboard suspend fun [listPrompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-prompts.html) (request: [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) = ListPromptsRequest(), options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) Lists all available prompts from the server. [listResources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-resources.html) Link copied to clipboard suspend fun [listResources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-resources.html) (request: [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) = ListResourcesRequest(), options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-result/index.html) Lists all available resources from the server. [listResourceTemplates](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-resource-templates.html) Link copied to clipboard suspend fun [listResourceTemplates](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-resource-templates.html) (request: [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-result/index.html) Lists resource templates available on the server. [listTools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-tools.html) Link copied to clipboard suspend fun [listTools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/list-tools.html) (request: [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) = ListToolsRequest(), options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-result/index.html) Lists all available tools on the server. [notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1784388323%2FFunctions%2F-992846013) Link copied to clipboard suspend fun [notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1784388323%2FFunctions%2F-992846013) (notification: [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) , relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ?) [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1462992726%2FFunctions%2F-992846013) Link copied to clipboard open fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1462992726%2FFunctions%2F-992846013) () [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1025172167%2FFunctions%2F-992846013) Link copied to clipboard open fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1025172167%2FFunctions%2F-992846013) (error: [Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) [ping](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/ping.html) Link copied to clipboard suspend fun [ping](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/ping.html) (options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) Sends a ping request to the server to check connectivity. [readResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/read-resource.html) Link copied to clipboard suspend fun [readResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/read-resource.html) (request: [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-result/index.html) Reads a resource from the server by its URI. [removeNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#212106987%2FFunctions%2F-992846013) Link copied to clipboard fun [removeNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#212106987%2FFunctions%2F-992846013) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) [removeRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1705846757%2FFunctions%2F-992846013) Link copied to clipboard fun [removeRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1705846757%2FFunctions%2F-992846013) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) [removeRoot](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/remove-root.html) Link copied to clipboard fun [removeRoot](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/remove-root.html) (uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) Removes a single root by URI. [removeRoots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/remove-roots.html) Link copied to clipboard fun [removeRoots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/remove-roots.html) (uris: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>): [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) Removes multiple roots at once. [request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1993231498%2FFunctions%2F-992846013) Link copied to clipboard suspend fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1993231498%2FFunctions%2F-992846013) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) \> [request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1993231498%2FFunctions%2F-992846013) (request: [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ?): [T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-1993231498%2FFunctions%2F-992846013) [sendRootsListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/send-roots-list-changed.html) Link copied to clipboard suspend fun [sendRootsListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/send-roots-list-changed.html) () Notifies the server that the list of roots has changed. Typically used if the client is managing some form of hierarchical structure. [setElicitationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/set-elicitation-handler.html) Link copied to clipboard fun [setElicitationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/set-elicitation-handler.html) (handler: ([ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) ) -> [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) ) Sets the elicitation handler. [setLoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/set-logging-level.html) Link copied to clipboard suspend fun [setLoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/set-logging-level.html) (level: [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) Sets the logging level on the server. [setNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-454061549%2FFunctions%2F-992846013) Link copied to clipboard fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-454061549%2FFunctions%2F-992846013) : [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) \> [setNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-454061549%2FFunctions%2F-992846013) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , handler: (notification: [T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#-454061549%2FFunctions%2F-992846013) ) -> [Deferred](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-deferred/index.html) <[Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \>) [setRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1709084143%2FFunctions%2F-992846013) Link copied to clipboard inline fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1709084143%2FFunctions%2F-992846013) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) \> [setRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1709084143%2FFunctions%2F-992846013) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , noinline block: suspend ([T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/index.html#1709084143%2FFunctions%2F-992846013) , [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?) [subscribeResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/subscribe-resource.html) Link copied to clipboard suspend fun [subscribeResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/subscribe-resource.html) (request: [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) Subscribes to resource changes on the server. [unsubscribeResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/unsubscribe-resource.html) Link copied to clipboard suspend fun [unsubscribeResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-client/io.modelcontextprotocol.kotlin.sdk.client/-client/unsubscribe-resource.html) (request: [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) Unsubscribes from resource changes on the server. --- # CancelledNotification CancelledNotification ===================== object [~CancelledNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L686) ) ### Deprecated Use \`CancelledNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CancelledNotification Content copied to clipboard CancelledNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification/-params.html) (requestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , reason: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) --- # CancelledNotification CancelledNotification ===================== fun [~CancelledNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification.html) (params: [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) ): [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L720) ) ### Deprecated Use \`CancelledNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CancelledNotification Content copied to clipboard CancelledNotification Content copied to clipboard This notification can be sent by either side to indicate that it is cancelling a previously issued request. The request SHOULD still be in-flight, but due to communication latency, it is always possible that this notification MAY arrive after the request has already finished. This notification indicates that the result will be unused, so any associated processing SHOULD cease. A client MUST NOT attempt to cancel its `initialize` request. --- # ClientCapabilities ClientCapabilities ================== object [~ClientCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L742) ) ### Deprecated Use \`ClientCapabilities\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ClientCapabilities Content copied to clipboard ClientCapabilities Content copied to clipboard Members Functions --------- [Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities/-roots.html) Link copied to clipboard fun [~Roots~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities/-roots.html) (listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null): [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) --- # ClientCapabilities ClientCapabilities ================== fun [~ClientCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities.html) (sampling: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, roots: [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? = null, elicitation: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L765) ) ### Deprecated Use \`ClientCapabilities\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ClientCapabilities Content copied to clipboard ClientCapabilities Content copied to clipboard Capabilities a client may support. Known capabilities are defined here, in this, but this is not a closed set: any client can define its own, additional capabilities. --- # ClientRequest ClientRequest ============= typealias [~ClientRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L781) ) ### Deprecated Use \`ClientRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ClientRequest Content copied to clipboard ClientRequest Content copied to clipboard Represents a request sent by the client. --- # ClientNotification ClientNotification ================== typealias [~ClientNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L791) ) ### Deprecated Use \`ClientNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ClientNotification Content copied to clipboard ClientNotification Content copied to clipboard Represents a notification sent by the client. --- # ClientResult ClientResult ============ typealias [~ClientResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L801) ) ### Deprecated Use \`ClientResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ClientResult Content copied to clipboard ClientResult Content copied to clipboard Represents a result returned to the client. --- # CompleteRequest CompleteRequest =============== object [~CompleteRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2005) ) ### Deprecated Use \`CompleteRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CompleteRequest Content copied to clipboard CompleteRequest Content copied to clipboard Members Functions --------- [Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request/-argument.html) Link copied to clipboard fun [~Argument~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request/-argument.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) --- # CompleteRequest CompleteRequest =============== fun [~CompleteRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request.html) (params: [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) ): [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2029) ) ### Deprecated Use \`CompleteRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CompleteRequest Content copied to clipboard CompleteRequest Content copied to clipboard A request from the client to the server to ask for completion options. --- # CreateElicitationRequest CreateElicitationRequest ======================== fun [~CreateElicitationRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request.html) (params: [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) ): [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2166) ) ### Deprecated Use \`ElicitRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ElicitRequest Content copied to clipboard ElicitRequest Content copied to clipboard Sent from the server to create an elicitation from the client. --- # CreateElicitationResult CreateElicitationResult ======================= object [~CreateElicitationResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2179) ) ### Deprecated Use \`ElicitResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ElicitResult Content copied to clipboard ElicitResult Content copied to clipboard Members Types ----- [Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/index.html) Link copied to clipboard object [~Action~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/index.html) --- # CompleteResult CompleteResult ============== object [~CompleteResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2039) ) ### Deprecated Use \`CompleteResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CompleteResult Content copied to clipboard CompleteResult Content copied to clipboard Members Functions --------- [Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result/-completion.html) Link copied to clipboard fun [~Completion~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result/-completion.html) (values: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>, total: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, hasMore: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null): [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) --- # CompleteResult CompleteResult ============== fun [~CompleteResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result.html) (completion: [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2064) ) ### Deprecated Use \`CompleteResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CompleteResult Content copied to clipboard CompleteResult Content copied to clipboard The server's response to a completion/complete request --- # CreateElicitationRequest CreateElicitationRequest ======================== object [~CreateElicitationRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2147) ) ### Deprecated Use \`ElicitRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ElicitRequest Content copied to clipboard ElicitRequest Content copied to clipboard Members Functions --------- [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request/-requested-schema.html) Link copied to clipboard fun [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request/-requested-schema.html) (properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) , required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null): [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) --- # CompatibilityCallToolResult CompatibilityCallToolResult =========================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) class [~CompatibilityCallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/index.html) (val content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) \>, val structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = false, val \_meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject, val toolResult: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1693) ) ### Deprecated This class will be removed. #### Replace with ToolCallResult Content copied to clipboard [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) extended with backwards compatibility to protocol version 2024-11-05. Members Constructors ------------ [CompatibilityCallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/-compatibility-call-tool-result.html) Link copied to clipboard constructor(content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) \>, structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = false, \_meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject, toolResult: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/_meta.html) Link copied to clipboard val [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/content.html) Link copied to clipboard val [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/content.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) \> [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/is-error.html) Link copied to clipboard val [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/is-error.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/structured-content.html) Link copied to clipboard val [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/structured-content.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? [toolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/tool-result.html) Link copied to clipboard val [toolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/tool-result.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) --- # CreateElicitationResult CreateElicitationResult ======================= fun [~CreateElicitationResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result.html) (action: [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) , content: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2235) ) ### Deprecated Use \`ElicitResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ElicitResult Content copied to clipboard ElicitResult Content copied to clipboard The client's response to an elicitation/create request from the server. --- # Action Action ====== object [~Action~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2188) ) ### Deprecated Use \`ElicitResult.Action\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ElicitResult.Action Content copied to clipboard ElicitResult.Action Content copied to clipboard Members Properties ---------- [accept](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/accept.html) Link copied to clipboard val [~accept~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/accept.html) : [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) [cancel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/cancel.html) Link copied to clipboard val [~cancel~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/cancel.html) : [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) [decline](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/decline.html) Link copied to clipboard val [~decline~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/-action/decline.html) : [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) --- # CreateMessageRequest CreateMessageRequest ==================== object [~CreateMessageRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1919) ) ### Deprecated Use \`CreateMessageRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CreateMessageRequest Content copied to clipboard CreateMessageRequest Content copied to clipboard Members Properties ---------- [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request/-include-context.html) Link copied to clipboard val [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request/-include-context.html) : ERROR CLASS: Symbol not found for io.modelcontextprotocol.kotlin.sdk.types.IncludeContext.Companion --- # CreateMessageRequest CreateMessageRequest ==================== fun [~CreateMessageRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request.html) (params: [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) ): [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1935) ) ### Deprecated Use \`CreateMessageRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CreateMessageRequest Content copied to clipboard CreateMessageRequest Content copied to clipboard A request from the server to sample an LLM via the client. The client has full discretion over which model to select. The client should also inform the user before beginning sampling to allow them to inspect the request (human in the loop) and decide whether to approve it. --- # CreateMessageResult CreateMessageResult =================== typealias [~CreateMessageResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1957) ) ### Deprecated Use \`CreateMessageResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CreateMessageResult Content copied to clipboard CreateMessageResult Content copied to clipboard The client's response to a sampling/create\_message request from the server. The client should inform the user before returning the sampled message to allow them to inspect the response (human in the loop) and decide whether to allow the server to see it. --- # Cursor Cursor ====== typealias [~Cursor~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cursor/index.html) = [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L70) ) ### Deprecated This alias will be removed. Use String directly instead. #### Replace with String Content copied to clipboard An opaque token used to represent a cursor for pagination. --- # CustomMeta CustomMeta ========== typealias [~CustomMeta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-meta/index.html) = [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L92) ) ### Deprecated This class will be removed. Use \`WithMeta\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.WithMeta Content copied to clipboard WithMeta Content copied to clipboard An implementation of [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-with-meta/index.html) containing custom metadata. #### Parameters \_meta The JSON object holding metadata. Defaults to an empty JSON object. --- # CustomRequest CustomRequest ============= typealias [~CustomRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L440) ) ### Deprecated Use \`CustomRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.CustomRequest Content copied to clipboard CustomRequest Content copied to clipboard A custom request with a specified method. #### Parameters method The method associated with the request. --- # EmbeddedResource EmbeddedResource ================ typealias [~EmbeddedResource~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-embedded-resource/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1454) ) ### Deprecated Use \`EmbeddedResource\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.EmbeddedResource Content copied to clipboard EmbeddedResource Content copied to clipboard The contents of a resource, embedded into a prompt or tool call result. --- # EmptyJsonObject EmptyJsonObject =============== val [~EmptyJsonObject~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-json-object.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.util.kt#L12) ) ### Deprecated Use \`io.modelcontextprotocol.kotlin.sdk.types.EmptyJsonObject\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.EmptyJsonObject Content copied to clipboard EmptyJsonObject Content copied to clipboard --- # EmptyRequestResult EmptyRequestResult ================== typealias [~EmptyRequestResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-request-result/index.html) = [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L496) ) ### Deprecated Use \`EmptyResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.EmptyResult Content copied to clipboard EmptyResult Content copied to clipboard An empty result for a request containing optional metadata. #### Parameters \_meta Additional metadata for the response. Defaults to an empty JSON object. --- # error error ===== fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~error~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.util.kt#L36) ) ### Deprecated Use \`CallToolResult.error\` instead #### Replace with CallToolResult.Companion.error Content copied to clipboard Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) , with `isError` being true. --- # ErrorCode ErrorCode ========= sealed interface [~ErrorCode~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L572) ) ### Deprecated Use \`RPCError\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RPCError Content copied to clipboard RPCError Content copied to clipboard An incomplete set of error codes that may appear in JSON-RPC responses. #### Inheritors [Unknown](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/index.html) Members Types ----- [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/index.html) Link copied to clipboard object [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/index.html) [Unknown](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~Unknown~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/index.html) (val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ) : [ErrorCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/index.html) Properties ---------- [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/code.html) Link copied to clipboard abstract val [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/code.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # Defined Defined ======= object [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L575) ) Members Properties ---------- [ConnectionClosed](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-connection-closed.html) Link copied to clipboard val [~ConnectionClosed~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-connection-closed.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [InternalError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-internal-error.html) Link copied to clipboard val [~InternalError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-internal-error.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [InvalidParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-invalid-params.html) Link copied to clipboard val [~InvalidParams~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-invalid-params.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [InvalidRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-invalid-request.html) Link copied to clipboard val [~InvalidRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-invalid-request.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [MethodNotFound](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-method-not-found.html) Link copied to clipboard val [~MethodNotFound~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-method-not-found.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [ParseError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-parse-error.html) Link copied to clipboard val [~ParseError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-parse-error.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [RequestTimeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-request-timeout.html) Link copied to clipboard val [~RequestTimeout~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-defined/-request-timeout.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # io.modelcontextprotocol.kotlin.sdk Package-level declarations ========================== TypesFunctionsProperties Types ----- [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-annotations/index.html) Link copied to clipboard typealias [~Annotations~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-annotations/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) Optional annotations for the client. The client can use annotations to inform how objects are used or displayed. [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-audio-content/index.html) Link copied to clipboard typealias [~AudioContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-audio-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) Audio provided to or from an LLM. [BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-blob-resource-contents/index.html) Link copied to clipboard typealias [~BlobResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-blob-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/index.html) Represents the binary contents of a resource encoded as a base64 string. [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-request/index.html) Link copied to clipboard typealias [~CallToolRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) Used by the client to invoke a tool provided by the server. [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) Link copied to clipboard object [~CallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) [CallToolResultBase](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [~CallToolResultBase~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result-base/index.html) The server's response to a tool call. [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification/index.html) Link copied to clipboard object [~CancelledNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification/index.html) [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities/index.html) Link copied to clipboard object [~ClientCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities/index.html) [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-notification/index.html) Link copied to clipboard typealias [~ClientNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) Represents a notification sent by the client. [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-request/index.html) Link copied to clipboard typealias [~ClientRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Represents a request sent by the client. [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-result/index.html) Link copied to clipboard typealias [~ClientResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) Represents a result returned to the client. [CompatibilityCallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) class [~CompatibilityCallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-compatibility-call-tool-result/index.html) (val content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) \>, val structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = false, val \_meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject, val toolResult: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject) [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) extended with backwards compatibility to protocol version 2024-11-05. [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request/index.html) Link copied to clipboard object [~CompleteRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request/index.html) [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result/index.html) Link copied to clipboard object [~CompleteResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result/index.html) [CreateElicitationRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request/index.html) Link copied to clipboard object [~CreateElicitationRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request/index.html) [CreateElicitationResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/index.html) Link copied to clipboard object [~CreateElicitationResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result/index.html) [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request/index.html) Link copied to clipboard object [~CreateMessageRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request/index.html) [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-result/index.html) Link copied to clipboard typealias [~CreateMessageResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) The client's response to a sampling/create\_message request from the server. The client should inform the user before returning the sampled message to allow them to inspect the response (human in the loop) and decide whether to allow the server to see it. [Cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cursor/index.html) Link copied to clipboard typealias [~Cursor~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cursor/index.html) = [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) An opaque token used to represent a cursor for pagination. [CustomMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-meta/index.html) Link copied to clipboard typealias [~CustomMeta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-meta/index.html) = [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) An implementation of [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-with-meta/index.html) containing custom metadata. [CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-request/index.html) Link copied to clipboard typealias [~CustomRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-custom-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/index.html) A custom request with a specified method. [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-embedded-resource/index.html) Link copied to clipboard typealias [~EmbeddedResource~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-embedded-resource/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) The contents of a resource, embedded into a prompt or tool call result. [EmptyRequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-request-result/index.html) Link copied to clipboard typealias [~EmptyRequestResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-request-result/index.html) = [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) An empty result for a request containing optional metadata. [ErrorCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/index.html) Link copied to clipboard sealed interface [~ErrorCode~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/index.html) An incomplete set of error codes that may appear in JSON-RPC responses. [ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) Link copied to clipboard @[Target](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-target/index.html) (allowedTargets = \[[AnnotationTarget.CLASS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-c-l-a-s-s/index.html)\ , [AnnotationTarget.ANNOTATION\_CLASS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-a-n-n-o-t-a-t-i-o-n_-c-l-a-s-s/index.html)\ , [AnnotationTarget.PROPERTY](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y/index.html)\ , [AnnotationTarget.FIELD](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-f-i-e-l-d/index.html)\ , [AnnotationTarget.LOCAL\_VARIABLE](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-l-o-c-a-l_-v-a-r-i-a-b-l-e/index.html)\ , [AnnotationTarget.VALUE\_PARAMETER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-v-a-l-u-e_-p-a-r-a-m-e-t-e-r/index.html)\ , [AnnotationTarget.CONSTRUCTOR](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-c-o-n-s-t-r-u-c-t-o-r/index.html)\ , [AnnotationTarget.FUNCTION](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-f-u-n-c-t-i-o-n/index.html)\ , [AnnotationTarget.PROPERTY\_GETTER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y_-g-e-t-t-e-r/index.html)\ , [AnnotationTarget.PROPERTY\_SETTER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y_-s-e-t-t-e-r/index.html)\ , [AnnotationTarget.TYPEALIAS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-t-y-p-e-a-l-i-a-s/index.html)\ \]) annotation class [ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) Annotation marking an API as experimental and subject to changes or removal in the future. [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-request/index.html) Link copied to clipboard typealias [~GetPromptRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) Used by the client to get a prompt provided by the server. [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-result/index.html) Link copied to clipboard typealias [~GetPromptResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) The server's response to a prompts/get request from the client. [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-image-content/index.html) Link copied to clipboard typealias [~ImageContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-image-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) An image provided to or from an LLM. [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-implementation/index.html) Link copied to clipboard typealias [~Implementation~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-implementation/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) Describes the name and version of an MCP implementation. [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification/index.html) Link copied to clipboard object [~InitializedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification/index.html) [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-request/index.html) Link copied to clipboard typealias [~InitializeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) This request is sent from the client to the server when it first connects, asking it to begin initialization. [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-result/index.html) Link copied to clipboard typealias [~InitializeResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) After receiving an initialized request from the client, the server sends this response. [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-error/index.html) Link copied to clipboard typealias [~JSONRPCError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-error/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) A response to a request that indicates an error occurred. [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-message/index.html) Link copied to clipboard typealias [~JSONRPCMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) Represents a JSON-RPC message in the protocol. [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) Link copied to clipboard typealias [~JSONRPCNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) A notification which does not expect a response. [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) Link copied to clipboard typealias [~JSONRPCRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) A request that expects a response. [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-response/index.html) Link copied to clipboard typealias [~JSONRPCResponse~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-response/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) A successful (non-error) response to a request. [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-request/index.html) Link copied to clipboard typealias [~ListPromptsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) Sent from the client to request a list of prompts and prompt templates the server has. [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-result/index.html) Link copied to clipboard typealias [~ListPromptsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) The server's response to a prompts/list request from the client. [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-request/index.html) Link copied to clipboard typealias [~ListResourcesRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) Sent from the client to request a list of resources the server has. [ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-result/index.html) Link copied to clipboard typealias [~ListResourcesResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-result/index.html) The server's response to a resources/list request from the client. [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-request/index.html) Link copied to clipboard typealias [~ListResourceTemplatesRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) Sent from the client to request a list of resource templates the server has. [ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-result/index.html) Link copied to clipboard typealias [~ListResourceTemplatesResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-result/index.html) The server's response to a resources/templates/list request from the client. [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-request/index.html) Link copied to clipboard typealias [~ListRootsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) Sent from the server to request a list of root URIs from the client. [ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-result/index.html) Link copied to clipboard typealias [~ListRootsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-result/index.html) The client's response to a roots/list request from the server. [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-request/index.html) Link copied to clipboard typealias [~ListToolsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) Sent from the client to request a list of tools the server has. [ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-result/index.html) Link copied to clipboard typealias [~ListToolsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-result/index.html) The server's response to a tools/list request from the client. [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/index.html) Link copied to clipboard object [~LoggingLevel~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/index.html) The severity of a log message. [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/index.html) Link copied to clipboard object [~LoggingMessageNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/index.html) [McpError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-mcp-error/index.html) Link copied to clipboard typealias [~McpError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-mcp-error/index.html) = [McpException](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-exception/index.html) Represents an error specific to the MCP protocol. [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) Link copied to clipboard sealed interface [~Method~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) Represents a method in the protocol, which can be predefined or custom. [ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-hint/index.html) Link copied to clipboard typealias [~ModelHint~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-hint/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-hint/index.html) Hints to use for model selection. [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-preferences/index.html) Link copied to clipboard typealias [~ModelPreferences~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-preferences/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) The server's preferences for model selection, requested by the client during sampling. [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) Link copied to clipboard typealias [~Notification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) Represents a notification in the protocol. [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) Link copied to clipboard typealias [~NotificationParams~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Base interface for notification parameters with optional metadata. [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-request/index.html) Link copied to clipboard typealias [~PaginatedRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Represents a request supporting pagination. [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-result/index.html) Link copied to clipboard typealias [~PaginatedResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) Represents a paginated result of a request. [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-ping-request/index.html) Link copied to clipboard typealias [~PingRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-ping-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) A ping, issued by either the server or the client, to check that the other party is still alive. The receiver must promptly respond, or else it may be disconnected. [Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress/index.html) Link copied to clipboard typealias [~Progress~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) Represents a progress notification. [ProgressBase](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [~ProgressBase~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/index.html) Represents the base interface for progress tracking. [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification/index.html) Link copied to clipboard object [~ProgressNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification/index.html) [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-token/index.html) Link copied to clipboard typealias [~ProgressToken~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-token/index.html) = [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) A progress token, used to associate progress notifications with the original request. Stores message ID. [Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt/index.html) Link copied to clipboard typealias [~Prompt~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) A prompt or prompt template that the server offers. [PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-argument/index.html) Link copied to clipboard typealias [~PromptArgument~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-argument/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-argument/index.html) Describes an argument that a prompt can accept. [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification/index.html) Link copied to clipboard object [~PromptListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification/index.html) [PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message/index.html) Link copied to clipboard typealias [~PromptMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) Describes a message returned as part of a prompt. [PromptMessageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) Link copied to clipboard typealias [~PromptMessageContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) = [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) Represents the content of a prompt message. [PromptMessageContentMultimodal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content-multimodal/index.html) Link copied to clipboard typealias [~PromptMessageContentMultimodal~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content-multimodal/index.html) = [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) Represents prompt message content that is either text, image or audio. [PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-reference/index.html) Link copied to clipboard typealias [~PromptReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-reference/index.html) Identifies a prompt. [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-request/index.html) Link copied to clipboard typealias [~ReadResourceRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) Sent from the client to the server to read a specific resource URI. [ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-result/index.html) Link copied to clipboard typealias [~ReadResourceResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-result/index.html) The server's response to a resources/read request from the client. [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-reference/index.html) Link copied to clipboard typealias [~Reference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) Link copied to clipboard typealias [~Request~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Represents a request in the protocol. [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/index.html) Link copied to clipboard object [~RequestId~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/index.html) A uniquely identifying ID for a request in JSON-RPC. [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-result/index.html) Link copied to clipboard typealias [~RequestResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) Represents the result of a request, including additional metadata. [Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource/index.html) Link copied to clipboard typealias [~Resource~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource/index.html) A known resource that the server is capable of reading. [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-contents/index.html) Link copied to clipboard typealias [~ResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) The contents of a specific resource or sub-resource. [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification/index.html) Link copied to clipboard object [~ResourceListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification/index.html) [ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template/index.html) Link copied to clipboard typealias [~ResourceTemplate~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template/index.html) A template description for resources available on the server. [ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template-reference/index.html) Link copied to clipboard typealias [~ResourceTemplateReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template-reference/index.html) A reference to a resource or resource template definition. [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification/index.html) Link copied to clipboard object [~ResourceUpdatedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification/index.html) [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/index.html) Link copied to clipboard object [~Role~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/index.html) Enum representing the role of a participant. [Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-root/index.html) Link copied to clipboard typealias [~Root~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-root/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) Represents a root directory or file that the server can operate on. [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification/index.html) Link copied to clipboard object [~RootsListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification/index.html) [SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-sampling-message/index.html) Link copied to clipboard typealias [~SamplingMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-sampling-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) Describes a message issued to or received from an LLM API. [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/index.html) Link copied to clipboard object [~ServerCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/index.html) [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-notification/index.html) Link copied to clipboard typealias [~ServerNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) Represents a notification sent by the server. [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-request/index.html) Link copied to clipboard typealias [~ServerRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) Represents a request sent by the server. [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-result/index.html) Link copied to clipboard typealias [~ServerResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) Represents a result returned by the server. [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-stop-reason/index.html) Link copied to clipboard typealias [~StopReason~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-stop-reason/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-subscribe-request/index.html) Link copied to clipboard typealias [~SubscribeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-subscribe-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) Sent from the client to request resources/updated notifications from the server whenever a particular resource changes. [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) Link copied to clipboard typealias [~TextContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) Text provided to or from an LLM. [TextResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-resource-contents/index.html) Link copied to clipboard typealias [~TextResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.TextResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-resource-contents/index.html) Represents the text contents of a resource. [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/index.html) Link copied to clipboard object [~Tool~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/index.html) [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-annotations/index.html) Link copied to clipboard typealias [~ToolAnnotations~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-annotations/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) Additional properties describing a Tool to clients. [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification/index.html) Link copied to clipboard object [~ToolListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification/index.html) [UnknownContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/index.html) (val type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Unknown content provided to or from an LLM. [UnknownMethodRequestOrNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownMethodRequestOrNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) , val params: [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) ? = null) Represents a request or notification for an unknown method. [UnknownReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/index.html) (val type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Identifies a prompt. [UnknownResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-resource-contents/index.html) Link copied to clipboard typealias [~UnknownResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.UnknownResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unknown-resource-contents/index.html) Represents resource contents with unknown or unspecified data. [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unsubscribe-request/index.html) Link copied to clipboard typealias [~UnsubscribeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unsubscribe-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) Sent from the client to request cancellation of resources/updated notifications from the server. This should follow a previous resources/subscribe request. [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-with-meta/index.html) Link copied to clipboard typealias [~WithMeta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-with-meta/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Represents an entity that includes additional metadata in its responses. Properties ---------- [EmptyJsonObject](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-json-object.html) Link copied to clipboard val [~EmptyJsonObject~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-empty-json-object.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [JSONRPC\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [~JSONRPC\_VERSION~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [LATEST\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [~LATEST\_PROTOCOL\_VERSION~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [LIB\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-i-b_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [LIB\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-i-b_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [SUPPORTED\_PROTOCOL\_VERSIONS](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-s-u-p-p-o-r-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n-s.html) Link copied to clipboard val [~SUPPORTED\_PROTOCOL\_VERSIONS~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-s-u-p-p-o-r-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n-s.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \> Functions --------- [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result.html) Link copied to clipboard fun [~CallToolResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result.html) (content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \>, isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) The server's response to a tool call. [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification.html) Link copied to clipboard fun [~CancelledNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-cancelled-notification.html) (params: [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) ): [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) This notification can be sent by either side to indicate that it is cancelling a previously issued request. [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities.html) Link copied to clipboard fun [~ClientCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-client-capabilities.html) (sampling: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, roots: [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? = null, elicitation: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) Capabilities a client may support. Known capabilities are defined here, in this, but this is not a closed set: any client can define its own, additional capabilities. [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request.html) Link copied to clipboard fun [~CompleteRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-request.html) (params: [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) ): [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) A request from the client to the server to ask for completion options. [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result.html) Link copied to clipboard fun [~CompleteResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-complete-result.html) (completion: [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) The server's response to a completion/complete request [CreateElicitationRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request.html) Link copied to clipboard fun [~CreateElicitationRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-request.html) (params: [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) ): [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) Sent from the server to create an elicitation from the client. [CreateElicitationResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result.html) Link copied to clipboard fun [~CreateElicitationResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-elicitation-result.html) (action: [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) , content: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) The client's response to an elicitation/create request from the server. [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request.html) Link copied to clipboard fun [~CreateMessageRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-create-message-request.html) (params: [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) ): [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) A request from the server to sample an LLM via the client. The client has full discretion over which model to select. The client should also inform the user before beginning sampling to allow them to inspect the request (human in the loop) and decide whether to approve it. [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) Link copied to clipboard fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~error~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/error.html) , with `isError` being true. [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification.html) Link copied to clipboard fun [~InitializedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) This notification is sent from the client to the server after initialization has finished. [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification.html) Link copied to clipboard fun [~LoggingMessageNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification.html) (params: [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) ): [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification/index.html) Notification of a log message passed from server to client. If no logging level request has been sent from the client, the server MAY decide which messages to send automatically. [ok](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) Link copied to clipboard fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~ok~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) . [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification.html) Link copied to clipboard fun [~ProgressNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification.html) (params: [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) ): [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification/index.html) An out-of-band notification used to inform the receiver of a progress update for a long-running request. [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification.html) Link copied to clipboard fun [~PromptListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ): [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-list-changed-notification/index.html) An optional notification from the server to the client, informing it that the list of prompts it offers has changed. Servers may issue this without any previous subscription from the client. [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification.html) Link copied to clipboard fun [~ResourceListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-list-changed-notification/index.html) An optional notification from the server to the client, informing it that the list of resources it can read from has changed. Servers may issue this without any previous subscription from the client. [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification.html) Link copied to clipboard fun [~ResourceUpdatedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification.html) (params: [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) ): [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification/index.html) A notification from the server to the client, informing it that a resource has changed and may need to be read again. This should only be sent if the client previously sent a resources/subscribe request. [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification.html) Link copied to clipboard fun [~RootsListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-roots-list-changed-notification/index.html) A notification from the client to the server, informing it that the list of roots has changed. [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities.html) Link copied to clipboard fun [~ServerCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities.html) (tools: [ServerCapabilities.Tools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-tools/index.html) ? = null, resources: [ServerCapabilities.Resources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-resources/index.html) ? = null, prompts: [ServerCapabilities.Prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-prompts/index.html) ? = null, logging: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, completions: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) Represents the capabilities that a server can support. [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool.html) Link copied to clipboard fun [~Tool~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , inputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) , description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, outputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) ? = null, title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, annotations: [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) ? = null, icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, \_meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool/index.html) Definition for a tool the client can call. [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification.html) Link copied to clipboard fun [~ToolListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ): [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-list-changed-notification/index.html) An optional notification from the server to the client, informing it that the list of tools it offers has changed. Servers may issue this without any previous subscription from the client. --- # Unknown Unknown ======= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~Unknown~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/index.html) (val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ) : [ErrorCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L653) ) ### Deprecated Use \`RPCError\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RPCError Content copied to clipboard RPCError Content copied to clipboard Members Constructors ------------ [Unknown](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/-unknown.html) Link copied to clipboard constructor(code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ) Properties ---------- [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/code.html) Link copied to clipboard open override val [code](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-error-code/-unknown/code.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # ExperimentalMcpApi ExperimentalMcpApi ================== @[Target](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-target/index.html) (allowedTargets = \[[AnnotationTarget.CLASS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-c-l-a-s-s/index.html)\ , [AnnotationTarget.ANNOTATION\_CLASS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-a-n-n-o-t-a-t-i-o-n_-c-l-a-s-s/index.html)\ , [AnnotationTarget.PROPERTY](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y/index.html)\ , [AnnotationTarget.FIELD](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-f-i-e-l-d/index.html)\ , [AnnotationTarget.LOCAL\_VARIABLE](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-l-o-c-a-l_-v-a-r-i-a-b-l-e/index.html)\ , [AnnotationTarget.VALUE\_PARAMETER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-v-a-l-u-e_-p-a-r-a-m-e-t-e-r/index.html)\ , [AnnotationTarget.CONSTRUCTOR](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-c-o-n-s-t-r-u-c-t-o-r/index.html)\ , [AnnotationTarget.FUNCTION](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-f-u-n-c-t-i-o-n/index.html)\ , [AnnotationTarget.PROPERTY\_GETTER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y_-g-e-t-t-e-r/index.html)\ , [AnnotationTarget.PROPERTY\_SETTER](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-p-r-o-p-e-r-t-y_-s-e-t-t-e-r/index.html)\ , [AnnotationTarget.TYPEALIAS](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.annotation/-annotation-target/-t-y-p-e-a-l-i-a-s/index.html)\ \]) annotation class [ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/ExperimentalMcpApi.kt#L57) ) Annotation marking an API as experimental and subject to changes or removal in the future. This annotation is used to signal that a particular element, such as a class, function, or property, is part of an experimental API. Such APIs may not be stable, and their usage requires opting in explicitly. Users of the annotated API must explicitly accept the opt-in requirement to ensure they are aware of the potential instability or unfinished nature of the API. Targets that can be annotated include: * Classes * Annotation classes * Properties * Fields * Local variables * Value parameters * Constructors * Functions * Property getters * Property setters * Type aliases --- # GetPromptRequest GetPromptRequest ================ typealias [~GetPromptRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1383) ) ### Deprecated Use \`GetPromptRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.GetPromptRequest Content copied to clipboard GetPromptRequest Content copied to clipboard Used by the client to get a prompt provided by the server. --- # GetPromptResult GetPromptResult =============== typealias [~GetPromptResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-get-prompt-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1510) ) ### Deprecated Use \`GetPromptResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.GetPromptResult Content copied to clipboard GetPromptResult Content copied to clipboard The server's response to a prompts/get request from the client. --- # ImageContent ImageContent ============ typealias [~ImageContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-image-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1423) ) ### Deprecated Use \`ImageContent\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ImageContent Content copied to clipboard ImageContent Content copied to clipboard An image provided to or from an LLM. --- # Implementation Implementation ============== typealias [~Implementation~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-implementation/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L735) ) ### Deprecated Use \`Implementation\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Implementation Content copied to clipboard Implementation Content copied to clipboard Describes the name and version of an MCP implementation. --- # InitializedNotification InitializedNotification ======================= object [~InitializedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L950) ) ### Deprecated Use \`InitializedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.InitializedNotification Content copied to clipboard InitializedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification/-params.html) (meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) --- # InitializedNotification InitializedNotification ======================= fun [~InitializedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialized-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L976) ) ### Deprecated Use \`InitializedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.InitializedNotification Content copied to clipboard InitializedNotification Content copied to clipboard This notification is sent from the client to the server after initialization has finished. --- # InitializeRequest InitializeRequest ================= typealias [~InitializeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L853) ) ### Deprecated Use \`InitializeRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.InitializeRequest Content copied to clipboard InitializeRequest Content copied to clipboard This request is sent from the client to the server when it first connects, asking it to begin initialization. --- # InitializeResult InitializeResult ================ typealias [~InitializeResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-initialize-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L940) ) ### Deprecated Use \`InitializeResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.InitializeResult Content copied to clipboard InitializeResult Content copied to clipboard After receiving an initialized request from the client, the server sends this response. --- # JSONRPC_VERSION JSONRPC\_VERSION ================ const val [~JSONRPC\_VERSION~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L41) ) ### Deprecated Use \`JSONRPC\_VERSION\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPC_VERSION Content copied to clipboard JSONRPC_VERSION Content copied to clipboard --- # JSONRPCError JSONRPCError ============ typealias [~JSONRPCError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-error/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L664) ) ### Deprecated Use \`JSONRPCError\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPCError Content copied to clipboard JSONRPCError Content copied to clipboard A response to a request that indicates an error occurred. --- # JSONRPCMessage JSONRPCMessage ============== typealias [~JSONRPCMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L532) ) ### Deprecated Use \`JSONRPCMessage\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPCMessage Content copied to clipboard JSONRPCMessage Content copied to clipboard Represents a JSON-RPC message in the protocol. --- # JSONRPCNotification JSONRPCNotification =================== typealias [~JSONRPCNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L552) ) ### Deprecated Use \`JSONRPCNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPCNotification Content copied to clipboard JSONRPCNotification Content copied to clipboard A notification which does not expect a response. --- # JSONRPCRequest JSONRPCRequest ============== typealias [~JSONRPCRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L542) ) ### Deprecated Use \`JSONRPCRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPCRequest Content copied to clipboard JSONRPCRequest Content copied to clipboard A request that expects a response. --- # JSONRPCResponse JSONRPCResponse =============== typealias [~JSONRPCResponse~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-response/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L562) ) ### Deprecated Use \`JSONRPCResponse\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.JSONRPCResponse Content copied to clipboard JSONRPCResponse Content copied to clipboard A successful (non-error) response to a request. --- # LATEST_PROTOCOL_VERSION LATEST\_PROTOCOL\_VERSION ========================= const val [~LATEST\_PROTOCOL\_VERSION~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L23) ) ### Deprecated Use \`LATEST\_PROTOCOL\_VERSION\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.LATEST_PROTOCOL_VERSION Content copied to clipboard LATEST_PROTOCOL_VERSION Content copied to clipboard --- # LIB_VERSION LIB\_VERSION ============ const val [LIB\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-l-i-b_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # ListPromptsRequest ListPromptsRequest ================== typealias [~ListPromptsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1363) ) ### Deprecated Use \`ListPromptsRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListPromptsRequest Content copied to clipboard ListPromptsRequest Content copied to clipboard Sent from the client to request a list of prompts and prompt templates the server has. --- # ListPromptsResult ListPromptsResult ================= typealias [~ListPromptsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-prompts-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1373) ) ### Deprecated Use \`ListPromptsResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListPromptsResult Content copied to clipboard ListPromptsResult Content copied to clipboard The server's response to a prompts/list request from the client. --- # ListResourcesResult ListResourcesResult =================== typealias [~ListResourcesResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1186) ) ### Deprecated Use \`ListResourcesResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListResourcesResult Content copied to clipboard ListResourcesResult Content copied to clipboard The server's response to a resources/list request from the client. --- # ListResourceTemplatesRequest ListResourceTemplatesRequest ============================ typealias [~ListResourceTemplatesRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1199) ) ### Deprecated Use \`ListResourceTemplatesRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesRequest Content copied to clipboard ListResourceTemplatesRequest Content copied to clipboard Sent from the client to request a list of resource templates the server has. --- # ListResourcesRequest ListResourcesRequest ==================== typealias [~ListResourcesRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resources-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1176) ) ### Deprecated Use \`ListResourcesRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListResourcesRequest Content copied to clipboard ListResourcesRequest Content copied to clipboard Sent from the client to request a list of resources the server has. --- # ListResourceTemplatesResult ListResourceTemplatesResult =========================== typealias [~ListResourceTemplatesResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-resource-templates-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1212) ) ### Deprecated Use \`ListResourceTemplatesResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListResourceTemplatesResult Content copied to clipboard ListResourceTemplatesResult Content copied to clipboard The server's response to a resources/templates/list request from the client. --- # ListRootsRequest ListRootsRequest ================ typealias [~ListRootsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2090) ) ### Deprecated Use \`ListRootsRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListRootsRequest Content copied to clipboard ListRootsRequest Content copied to clipboard Sent from the server to request a list of root URIs from the client. --- # ListRootsResult ListRootsResult =============== typealias [~ListRootsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-roots-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2100) ) ### Deprecated Use \`ListRootsResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListRootsResult Content copied to clipboard ListRootsResult Content copied to clipboard The client's response to a roots/list request from the server. --- # ListToolsRequest ListToolsRequest ================ typealias [~ListToolsRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1634) ) ### Deprecated Use \`ListToolsRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListToolsRequest Content copied to clipboard ListToolsRequest Content copied to clipboard Sent from the client to request a list of tools the server has. --- # ListToolsResult ListToolsResult =============== typealias [~ListToolsResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-list-tools-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1644) ) ### Deprecated Use \`ListToolsResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ListToolsResult Content copied to clipboard ListToolsResult Content copied to clipboard The server's response to a tools/list request from the client. --- # LoggingLevel LoggingLevel ============ object [~LoggingLevel~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1759) ) ### Deprecated Use \`LoggingLevel\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.LoggingLevel Content copied to clipboard LoggingLevel Content copied to clipboard The severity of a log message. Members Properties ---------- [alert](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/alert.html) Link copied to clipboard val [~alert~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/alert.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [critical](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/critical.html) Link copied to clipboard val [~critical~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/critical.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [debug](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/debug.html) Link copied to clipboard val [~debug~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/debug.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [emergency](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/emergency.html) Link copied to clipboard val [~emergency~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/emergency.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/error.html) Link copied to clipboard val [~error~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/error.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/info.html) Link copied to clipboard val [~info~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/info.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [notice](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/notice.html) Link copied to clipboard val [~notice~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/notice.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) [warning](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/warning.html) Link copied to clipboard val [~warning~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-level/warning.html) : [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) --- # LoggingMessageNotification LoggingMessageNotification ========================== object [~LoggingMessageNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1833) ) ### Deprecated Use \`LoggingMessageNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.LoggingMessageNotification Content copied to clipboard LoggingMessageNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/-params.html) (level: [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) , data: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) , logger: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/-set-level-request.html) Link copied to clipboard fun [~SetLevelRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification/-set-level-request.html) (params: [SetLevelRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-params/index.html) ): [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) --- # LoggingMessageNotification LoggingMessageNotification ========================== fun [~LoggingMessageNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-logging-message-notification.html) (params: [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) ): [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1877) ) ### Deprecated Use \`LoggingMessageNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.LoggingMessageNotification Content copied to clipboard LoggingMessageNotification Content copied to clipboard Notification of a log message passed from server to client. If no logging level request has been sent from the client, the server MAY decide which messages to send automatically. --- # McpError McpError ======== typealias [~McpError~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-mcp-error/index.html) = [McpException](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-exception/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2254) ) ### Deprecated Use \`McpException\` instead #### Replace with McpException Content copied to clipboard Represents an error specific to the MCP protocol. --- # Method Method ====== sealed interface [~Method~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L102) ) ### Deprecated Use \`Method\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Method Content copied to clipboard Method Content copied to clipboard Represents a method in the protocol, which can be predefined or custom. Members Types ----- [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-companion/index.html) Link copied to clipboard object [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-companion/index.html) [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/index.html) Link copied to clipboard object [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/index.html) Properties ---------- [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/value.html) Link copied to clipboard abstract val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # Companion Companion ========= object [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-companion/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L105) ) Members Functions --------- [Custom](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-companion/-custom.html) Link copied to clipboard fun [~Custom~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-companion/-custom.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [Method.Custom](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-custom/index.html) Represents a custom method defined by the user. --- # Defined Defined ======= object [Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L118) ) Members Properties ---------- [CompletionComplete](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-completion-complete.html) Link copied to clipboard val [~CompletionComplete~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-completion-complete.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ElicitationCreate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-elicitation-create.html) Link copied to clipboard val [~ElicitationCreate~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-elicitation-create.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [Initialize](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-initialize.html) Link copied to clipboard val [~Initialize~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-initialize.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [LoggingSetLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-logging-set-level.html) Link copied to clipboard val [~LoggingSetLevel~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-logging-set-level.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsCancelled](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-cancelled.html) Link copied to clipboard val [~NotificationsCancelled~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-cancelled.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsInitialized](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-initialized.html) Link copied to clipboard val [~NotificationsInitialized~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-initialized.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-message.html) Link copied to clipboard val [~NotificationsMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-message.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsProgress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-progress.html) Link copied to clipboard val [~NotificationsProgress~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-progress.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsPromptsListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-prompts-list-changed.html) Link copied to clipboard val [~NotificationsPromptsListChanged~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-prompts-list-changed.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsResourcesListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-resources-list-changed.html) Link copied to clipboard val [~NotificationsResourcesListChanged~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-resources-list-changed.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsResourcesUpdated](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-resources-updated.html) Link copied to clipboard val [~NotificationsResourcesUpdated~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-resources-updated.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsRootsListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-roots-list-changed.html) Link copied to clipboard val [~NotificationsRootsListChanged~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-roots-list-changed.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [NotificationsToolsListChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-tools-list-changed.html) Link copied to clipboard val [~NotificationsToolsListChanged~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-notifications-tools-list-changed.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [Ping](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-ping.html) Link copied to clipboard val [~Ping~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-ping.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [PromptsGet](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-prompts-get.html) Link copied to clipboard val [~PromptsGet~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-prompts-get.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [PromptsList](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-prompts-list.html) Link copied to clipboard val [~PromptsList~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-prompts-list.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ResourcesList](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-list.html) Link copied to clipboard val [~ResourcesList~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-list.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ResourcesRead](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-read.html) Link copied to clipboard val [~ResourcesRead~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-read.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ResourcesSubscribe](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-subscribe.html) Link copied to clipboard val [~ResourcesSubscribe~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-subscribe.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ResourcesTemplatesList](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-templates-list.html) Link copied to clipboard val [~ResourcesTemplatesList~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-templates-list.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ResourcesUnsubscribe](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-unsubscribe.html) Link copied to clipboard val [~ResourcesUnsubscribe~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-resources-unsubscribe.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [RootsList](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-roots-list.html) Link copied to clipboard val [~RootsList~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-roots-list.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [SamplingCreateMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-sampling-create-message.html) Link copied to clipboard val [~SamplingCreateMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-sampling-create-message.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ToolsCall](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-tools-call.html) Link copied to clipboard val [~ToolsCall~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-tools-call.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) [ToolsList](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-tools-list.html) Link copied to clipboard val [~ToolsList~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/-defined/-tools-list.html) : [Method.Defined](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/-defined/index.html) --- # ModelHint ModelHint ========= typealias [~ModelHint~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-hint/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-hint/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1892) ) ### Deprecated Use \`ModelHint\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ModelHint Content copied to clipboard ModelHint Content copied to clipboard Hints to use for model selection. --- # ModelPreferences ModelPreferences ================ typealias [~ModelPreferences~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-model-preferences/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1902) ) ### Deprecated Use \`ModelPreferences\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ModelPreferences Content copied to clipboard ModelPreferences Content copied to clipboard The server's preferences for model selection, requested by the client during sampling. --- # Notification Notification ============ typealias [~Notification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L450) ) ### Deprecated Use \`Notification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Notification Content copied to clipboard Notification Content copied to clipboard Represents a notification in the protocol. Members & Extensions --- # NotificationParams NotificationParams ================== typealias [~NotificationParams~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L674) ) ### Deprecated Use \`NotificationParams\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.NotificationParams Content copied to clipboard NotificationParams Content copied to clipboard Base interface for notification parameters with optional metadata. --- # ok ok == fun [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) .[~ok~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) = EmptyJsonObject): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.util.kt#L22) ) ### Deprecated Use \`CallToolResult.success\` instead #### Replace with CallToolResult.Companion.success Content copied to clipboard Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/ok.html) . --- # PaginatedRequest PaginatedRequest ================ typealias [~PaginatedRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1087) ) ### Deprecated Use \`PaginatedRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PaginatedRequest Content copied to clipboard PaginatedRequest Content copied to clipboard Represents a request supporting pagination. --- # PaginatedResult PaginatedResult =============== typealias [~PaginatedResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-paginated-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1097) ) ### Deprecated Use \`PaginatedResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PaginatedResult Content copied to clipboard PaginatedResult Content copied to clipboard Represents a paginated result of a request. --- # PingRequest PingRequest =========== typealias [~PingRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-ping-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L992) ) ### Deprecated Use \`PingRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PingRequest Content copied to clipboard PingRequest Content copied to clipboard A ping, issued by either the server or the client, to check that the other party is still alive. The receiver must promptly respond, or else it may be disconnected. --- # Progress Progress ======== typealias [~Progress~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1032) ) ### Deprecated Use \`Progress\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Progress Content copied to clipboard Progress Content copied to clipboard Represents a progress notification. --- # ProgressBase ProgressBase ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [~ProgressBase~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1002) ) ### Deprecated This interface will be removed Represents the base interface for progress tracking. Members Properties ---------- [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/message.html) Link copied to clipboard abstract val [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/message.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An optional message describing the current progress. [progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/progress.html) Link copied to clipboard abstract val [progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/progress.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) The progress thus far. This should increase every time progress is made, even if the total is unknown. [total](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/total.html) Link copied to clipboard abstract val [total](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-base/total.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? Total number of items to a process (or total progress required), if known. --- # ProgressNotification ProgressNotification ==================== object [~ProgressNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1039) ) ### Deprecated Use \`ProgressNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ProgressNotification Content copied to clipboard ProgressNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification/-params.html) (progressToken: [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) , progress: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) , total: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) --- # ProgressNotification ProgressNotification ==================== fun [~ProgressNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-notification.html) (params: [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) ): [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1072) ) ### Deprecated Use \`ProgressNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ProgressNotification Content copied to clipboard ProgressNotification Content copied to clipboard An out-of-band notification used to inform the receiver of a progress update for a long-running request. --- # ProgressToken ProgressToken ============= typealias [~ProgressToken~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-progress-token/index.html) = [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L60) ) ### Deprecated Use \`ProgressToken\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ProgressToken Content copied to clipboard ProgressToken Content copied to clipboard A progress token, used to associate progress notifications with the original request. Stores message ID. --- # Prompt Prompt ====== typealias [~Prompt~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1353) ) ### Deprecated Use \`Prompt\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Prompt Content copied to clipboard Prompt Content copied to clipboard A prompt or prompt template that the server offers. --- # PromptArgument PromptArgument ============== typealias [~PromptArgument~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-argument/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-argument/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1343) ) ### Deprecated Use \`PromptArgument\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PromptArgument Content copied to clipboard PromptArgument Content copied to clipboard Describes an argument that a prompt can accept. --- # PromptListChangedNotification PromptListChangedNotification ============================= object [~PromptListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1520) ) ### Deprecated Use \`PromptListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PromptListChangedNotification Content copied to clipboard PromptListChangedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification/-params.html) (meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) --- # PromptListChangedNotification PromptListChangedNotification ============================= fun [~PromptListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ): [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1545) ) ### Deprecated Use \`PromptListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PromptListChangedNotification Content copied to clipboard PromptListChangedNotification Content copied to clipboard An optional notification from the server to the client, informing it that the list of prompts it offers has changed. Servers may issue this without any previous subscription from the client. --- # PromptMessage PromptMessage ============= typealias [~PromptMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1500) ) ### Deprecated Use \`PromptMessage\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PromptMessage Content copied to clipboard PromptMessage Content copied to clipboard Describes a message returned as part of a prompt. --- # PromptMessageContent PromptMessageContent ==================== typealias [~PromptMessageContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content/index.html) = [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1393) ) ### Deprecated Use \`ContentBlock\` instead #### Replace with ContentBlock Content copied to clipboard Represents the content of a prompt message. --- # PromptMessageContentMultimodal PromptMessageContentMultimodal ============================== typealias [~PromptMessageContentMultimodal~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-message-content-multimodal/index.html) = [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1403) ) ### Deprecated Use \`MediaContent\` instead #### Replace with MediaContent Content copied to clipboard Represents prompt message content that is either text, image or audio. --- # PromptReference PromptReference =============== typealias [~PromptReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-prompt-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-reference/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1988) ) ### Deprecated Use \`PromptReference\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.PromptReference Content copied to clipboard PromptReference Content copied to clipboard Identifies a prompt. --- # ReadResourceRequest ReadResourceRequest =================== typealias [~ReadResourceRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1222) ) ### Deprecated Use \`ReadResourceRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ReadResourceRequest Content copied to clipboard ReadResourceRequest Content copied to clipboard Sent from the client to the server to read a specific resource URI. --- # ReadResourceResult ReadResourceResult ================== typealias [~ReadResourceResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-read-resource-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1232) ) ### Deprecated Use \`ReadResourceResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ReadResourceResult Content copied to clipboard ReadResourceResult Content copied to clipboard The server's response to a resources/read request from the client. --- # Reference Reference ========= typealias [~Reference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1965) ) ### Deprecated Use \`Reference\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Reference Content copied to clipboard Reference Content copied to clipboard --- # Request Request ======= typealias [~Request~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L404) ) ### Deprecated Use \`Request\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Request Content copied to clipboard Request Content copied to clipboard Represents a request in the protocol. Members & Extensions --- # RequestId RequestId ========= object [~RequestId~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L506) ) ### Deprecated Use \`RequestId\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RequestId Content copied to clipboard RequestId Content copied to clipboard A uniquely identifying ID for a request in JSON-RPC. Members Functions --------- [NumberId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/-number-id.html) Link copied to clipboard fun [~NumberId~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/-number-id.html) (value: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) ): [RequestId.NumberId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/-number-id/index.html) [StringId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/-string-id.html) Link copied to clipboard fun [~StringId~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-id/-string-id.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [RequestId.StringId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/-string-id/index.html) --- # RequestResult RequestResult ============= typealias [~RequestResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L484) ) ### Deprecated Use \`RequestResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RequestResult Content copied to clipboard RequestResult Content copied to clipboard Represents the result of a request, including additional metadata. --- # Resource Resource ======== typealias [~Resource~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1156) ) ### Deprecated Use \`Resource\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Resource Content copied to clipboard Resource Content copied to clipboard A known resource that the server is capable of reading. --- # ResourceContents ResourceContents ================ typealias [~ResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1109) ) ### Deprecated Use \`ResourceContents\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceContents Content copied to clipboard ResourceContents Content copied to clipboard The contents of a specific resource or sub-resource. --- # ResourceListChangedNotification ResourceListChangedNotification =============================== object [~ResourceListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1242) ) ### Deprecated Use \`ResourceListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceListChangedNotification Content copied to clipboard ResourceListChangedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification/-params.html) (meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) --- # ResourceListChangedNotification ResourceListChangedNotification =============================== fun [~ResourceListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1268) ) ### Deprecated Use \`ResourceListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceListChangedNotification Content copied to clipboard ResourceListChangedNotification Content copied to clipboard An optional notification from the server to the client, informing it that the list of resources it can read from has changed. Servers may issue this without any previous subscription from the client. --- # ResourceTemplate ResourceTemplate ================ typealias [~ResourceTemplate~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1166) ) ### Deprecated Use \`ResourceTemplate\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplate Content copied to clipboard ResourceTemplate Content copied to clipboard A template description for resources available on the server. --- # ResourceTemplateReference ResourceTemplateReference ========================= typealias [~ResourceTemplateReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-template-reference/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template-reference/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1978) ) ### Deprecated Use \`ResourceTemplateReference\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceTemplateReference Content copied to clipboard ResourceTemplateReference Content copied to clipboard A reference to a resource or resource template definition. --- # ResourceUpdatedNotification ResourceUpdatedNotification =========================== object [~ResourceUpdatedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1301) ) ### Deprecated Use \`ResourceUpdatedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceUpdatedNotification Content copied to clipboard ResourceUpdatedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification/-params.html) (uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) --- # ResourceUpdatedNotification ResourceUpdatedNotification =========================== fun [~ResourceUpdatedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-resource-updated-notification.html) (params: [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) ): [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1328) ) ### Deprecated Use \`ResourceUpdatedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ResourceUpdatedNotification Content copied to clipboard ResourceUpdatedNotification Content copied to clipboard A notification from the server to the client, informing it that a resource has changed and may need to be read again. This should only be sent if the client previously sent a resources/subscribe request. --- # Role Role ==== object [~Role~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1464) ) ### Deprecated Use \`Role\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Role Content copied to clipboard Role Content copied to clipboard Enum representing the role of a participant. Members Properties ---------- [assistant](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/assistant.html) Link copied to clipboard val [~assistant~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/assistant.html) : [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) [user](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/user.html) Link copied to clipboard val [~user~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-role/user.html) : [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) --- # Root Root ==== typealias [~Root~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-root/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2080) ) ### Deprecated Use \`Root\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Root Content copied to clipboard Root Content copied to clipboard Represents a root directory or file that the server can operate on. --- # RootsListChangedNotification RootsListChangedNotification ============================ object [~RootsListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2110) ) ### Deprecated Use \`RootsListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RootsListChangedNotification Content copied to clipboard RootsListChangedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification/-params.html) (meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) --- # RootsListChangedNotification RootsListChangedNotification ============================ fun [~RootsListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-roots-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null): [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-roots-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L2134) ) ### Deprecated Use \`RootsListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.RootsListChangedNotification Content copied to clipboard RootsListChangedNotification Content copied to clipboard A notification from the client to the server, informing it that the list of roots has changed. --- # SamplingMessage SamplingMessage =============== typealias [~SamplingMessage~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-sampling-message/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1912) ) ### Deprecated Use \`SamplingMessage\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.SamplingMessage Content copied to clipboard SamplingMessage Content copied to clipboard Describes a message issued to or received from an LLM API. --- # ServerCapabilities ServerCapabilities ================== object [~ServerCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L860) ) ### Deprecated Use \`ServerCapabilities\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ServerCapabilities Content copied to clipboard ServerCapabilities Content copied to clipboard Members Functions --------- [Prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-prompts.html) Link copied to clipboard fun [~Prompts~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-prompts.html) (listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null): [ServerCapabilities.Prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-prompts/index.html) [Resources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-resources.html) Link copied to clipboard fun [~Resources~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-resources.html) (listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, subscribe: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null): [ServerCapabilities.Resources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-resources/index.html) [Tools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-tools.html) Link copied to clipboard fun [~Tools~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities/-tools.html) (listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null): [ServerCapabilities.Tools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-tools/index.html) --- # ServerCapabilities ServerCapabilities ================== fun [~ServerCapabilities~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-capabilities.html) (tools: [ServerCapabilities.Tools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-tools/index.html) ? = null, resources: [ServerCapabilities.Resources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-resources/index.html) ? = null, prompts: [ServerCapabilities.Prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-prompts/index.html) ? = null, logging: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, completions: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L915) ) ### Deprecated Use \`ServerCapabilities\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ServerCapabilities Content copied to clipboard ServerCapabilities Content copied to clipboard Represents the capabilities that a server can support. --- # ServerNotification ServerNotification ================== typealias [~ServerNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-notification/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L821) ) ### Deprecated Use \`ServerNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ServerNotification Content copied to clipboard ServerNotification Content copied to clipboard Represents a notification sent by the server. --- # ServerRequest ServerRequest ============= typealias [~ServerRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L811) ) ### Deprecated Use \`ServerRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ServerRequest Content copied to clipboard ServerRequest Content copied to clipboard Represents a request sent by the server. --- # ServerResult ServerResult ============ typealias [~ServerResult~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-server-result/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L831) ) ### Deprecated Use \`ServerResult\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ServerResult Content copied to clipboard ServerResult Content copied to clipboard Represents a result returned by the server. --- # StopReason StopReason ========== typealias [~StopReason~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-stop-reason/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1945) ) ### Deprecated Use \`StopReason\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.StopReason Content copied to clipboard StopReason Content copied to clipboard --- # SubscribeRequest SubscribeRequest ================ typealias [~SubscribeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-subscribe-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1281) ) ### Deprecated Use \`SubscribeRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.SubscribeRequest Content copied to clipboard SubscribeRequest Content copied to clipboard Sent from the client to request resources/updated notifications from the server whenever a particular resource changes. --- # SUPPORTED_PROTOCOL_VERSIONS SUPPORTED\_PROTOCOL\_VERSIONS ============================= val [~SUPPORTED\_PROTOCOL\_VERSIONS~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-s-u-p-p-o-r-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n-s.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L33) ) ### Deprecated Use \`SUPPORTED\_PROTOCOL\_VERSIONS\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.SUPPORTED_PROTOCOL_VERSIONS Content copied to clipboard SUPPORTED_PROTOCOL_VERSIONS Content copied to clipboard --- # TextContent TextContent =========== typealias [~TextContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-content/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1413) ) ### Deprecated Use \`TextContent\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.TextContent Content copied to clipboard TextContent Content copied to clipboard Text provided to or from an LLM. --- # TextResourceContents TextResourceContents ==================== typealias [~TextResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-text-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.TextResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-resource-contents/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1121) ) ### Deprecated Use \`TextResourceContents\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.TextResourceContents Content copied to clipboard TextResourceContents Content copied to clipboard Represents the text contents of a resource. --- # toJSON toJSON ====== fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L416) ) ### Deprecated Use \`toJSON\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.toJSON Content copied to clipboard toJSON Content copied to clipboard Converts the request to a JSON-RPC request. #### Return The JSON-RPC request representation. * * * fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L462) ) ### Deprecated Use \`toJSON\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.toJSON Content copied to clipboard toJSON Content copied to clipboard Converts the notification to a JSON-RPC notification. #### Return The JSON-RPC notification representation. --- # Tool Tool ==== object [~Tool~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1574) ) ### Deprecated Use \`Tool\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Tool Content copied to clipboard Tool Content copied to clipboard Members Functions --------- [Input](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/-input.html) Link copied to clipboard fun [~Input~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/-input.html) (properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null): [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) [Output](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/-output.html) Link copied to clipboard fun [~Output~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool/-output.html) (properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null): [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) --- # Tool Tool ==== fun [~Tool~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , inputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) , description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, outputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) ? = null, title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, annotations: [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) ? = null, icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, \_meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1606) ) ### Deprecated Use \`Tool\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.Tool Content copied to clipboard Tool Content copied to clipboard Definition for a tool the client can call. --- # ToolAnnotations ToolAnnotations =============== typealias [~ToolAnnotations~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-annotations/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1567) ) ### Deprecated Use \`ToolAnnotations\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ToolAnnotations Content copied to clipboard ToolAnnotations Content copied to clipboard Additional properties describing a Tool to clients. NOTE: all properties in ToolAnnotations are **hints**. They are not guaranteed to provide a faithful description of tool behavior (including descriptive properties like `title`). Clients should never make tool use decisions based on ToolAnnotations received from untrusted servers. --- # ToolListChangedNotification ToolListChangedNotification =========================== object [~ToolListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1719) ) ### Deprecated Use \`ToolListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ToolListChangedNotification Content copied to clipboard ToolListChangedNotification Content copied to clipboard Members Functions --------- [Params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification/-params.html) Link copied to clipboard fun [~Params~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification/-params.html) (meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) --- # ToolListChangedNotification ToolListChangedNotification =========================== fun [~ToolListChangedNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-tool-list-changed-notification.html) (params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ): [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-list-changed-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1744) ) ### Deprecated Use \`ToolListChangedNotification\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.ToolListChangedNotification Content copied to clipboard ToolListChangedNotification Content copied to clipboard An optional notification from the server to the client, informing it that the list of tools it offers has changed. Servers may issue this without any previous subscription from the client. --- # UnknownContent UnknownContent ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownContent~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/index.html) (val type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1444) ) ### Deprecated This class will be removed. #### Replace with MediaContent Content copied to clipboard Unknown content provided to or from an LLM. Members Constructors ------------ [UnknownContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/-unknown-content.html) Link copied to clipboard constructor(type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Properties ---------- [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/type.html) Link copied to clipboard val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-content/type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # UnknownMethodRequestOrNotification UnknownMethodRequestOrNotification ================================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownMethodRequestOrNotification~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) , val params: [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L843) ) ### Deprecated This class will be removed Represents a request or notification for an unknown method. #### Parameters method The method that is unknown. Members Constructors ------------ [UnknownMethodRequestOrNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/-unknown-method-request-or-notification.html) Link copied to clipboard constructor(method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) , params: [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) ? = null) Properties ---------- [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/method.html) Link copied to clipboard val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/params.html) Link copied to clipboard val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-method-request-or-notification/params.html) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification-params/index.html) ? --- # UnknownReference UnknownReference ================ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [~UnknownReference~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/index.html) (val type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1998) ) ### Deprecated This class will be removed. Identifies a prompt. Members Constructors ------------ [UnknownReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/-unknown-reference.html) Link copied to clipboard constructor(type: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Properties ---------- [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/type.html) Link copied to clipboard val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-reference/type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # UnknownResourceContents UnknownResourceContents ======================= typealias [~UnknownResourceContents~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unknown-resource-contents/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.UnknownResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unknown-resource-contents/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1146) ) ### Deprecated Use \`UnknownResourceContents\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.UnknownResourceContents Content copied to clipboard UnknownResourceContents Content copied to clipboard Represents resource contents with unknown or unspecified data. --- # UnsubscribeRequest UnsubscribeRequest ================== typealias [~UnsubscribeRequest~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-unsubscribe-request/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L1291) ) ### Deprecated Use \`UnsubscribeRequest\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.UnsubscribeRequest Content copied to clipboard UnsubscribeRequest Content copied to clipboard Sent from the client to request cancellation of resources/updated notifications from the server. This should follow a previous resources/subscribe request. --- # WithMeta WithMeta ======== typealias [~WithMeta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-with-meta/index.html) = [io.modelcontextprotocol.kotlin.sdk.types.WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types.kt#L80) ) ### Deprecated Use \`WithMeta\` instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.WithMeta Content copied to clipboard WithMeta Content copied to clipboard Represents an entity that includes additional metadata in its responses. --- # io.modelcontextprotocol.kotlin.sdk.internal Package-level declarations ========================== Properties Properties ---------- [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) Link copied to clipboard commonjsjvmnativewasmJs expect val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) --- # IODispatcher IODispatcher ============ commonjsjvmnativewasmJs expect val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/internal/utils.kt#L5) ) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/jsMain/kotlin/io/modelcontextprotocol/kotlin/sdk/internal/utils.js.kt#L6) ) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/jvmMain/kotlin/io/modelcontextprotocol/kotlin/sdk/internal/utils.jvm.kt#L6) ) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/nativeMain/kotlin/io/modelcontextprotocol/kotlin/sdk/internal/utils.native.kt#L7) ) actual val [IODispatcher](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.internal/-i-o-dispatcher.html) : [CoroutineDispatcher](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-dispatcher/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/wasmJsMain/kotlin/io/modelcontextprotocol/kotlin/sdk/internal/utils.wasmJs.kt#L6) ) --- # DEFAULT_REQUEST_TIMEOUT DEFAULT\_REQUEST\_TIMEOUT ========================= val [DEFAULT\_REQUEST\_TIMEOUT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-d-e-f-a-u-l-t_-r-e-q-u-e-s-t_-t-i-m-e-o-u-t.html) : [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L93) ) The default request timeout. --- # io.modelcontextprotocol.kotlin.sdk.shared Package-level declarations ========================== TypesFunctionsProperties Types ----- [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) Link copied to clipboard abstract class [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) : [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) Implements [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) , [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) and [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) functions of [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) providing corresponding [\_onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-close.html) , [\_onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-error.html) and [\_onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-message.html) properties to use for an implementation. [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) Link copied to clipboard typealias [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) = ([Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) Callback for progress notifications. [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/index.html) Link copied to clipboard abstract class [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/index.html) (options: [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) ?) Implements MCP protocol framing on top of a pluggable transport, including features like request/response linking, notifications, and progress. [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) Link copied to clipboard open class [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) (var enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = false, var timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT) Additional initialization options. [ReadBuffer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/index.html) Link copied to clipboard class [ReadBuffer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/index.html) Buffers a continuous stdio stream into discrete JSON-RPC messages. [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) Link copied to clipboard class [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) Extra data given to request handlers. [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) Link copied to clipboard class [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) (relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null, val onProgress: [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? = null, val timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT) : [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) Options that can be given per request. [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) Link copied to clipboard interface [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) Describes the minimal contract for MCP transport that a client or server can communicate over. [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) Link copied to clipboard open class [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) (val relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, val resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null) Options for sending a JSON-RPC message through transport. [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) Link copied to clipboard abstract class [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) Abstract class representing a WebSocket transport for the Model Context Protocol (MCP). Handles communication over a WebSocket session. Properties ---------- [DEFAULT\_REQUEST\_TIMEOUT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-d-e-f-a-u-l-t_-r-e-q-u-e-s-t_-t-i-m-e-o-u-t.html) Link copied to clipboard val [DEFAULT\_REQUEST\_TIMEOUT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-d-e-f-a-u-l-t_-r-e-q-u-e-s-t_-t-i-m-e-o-u-t.html) : [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) The default request timeout. [IMPLEMENTATION\_NAME](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-i-m-p-l-e-m-e-n-t-a-t-i-o-n_-n-a-m-e.html) Link copied to clipboard const val [IMPLEMENTATION\_NAME](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-i-m-p-l-e-m-e-n-t-a-t-i-o-n_-n-a-m-e.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [MCP\_SUBPROTOCOL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-m-c-p_-s-u-b-p-r-o-t-o-c-o-l.html) Link copied to clipboard const val [MCP\_SUBPROTOCOL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-m-c-p_-s-u-b-p-r-o-t-o-c-o-l.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [McpJson](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-mcp-json.html) Link copied to clipboard val [~McpJson~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-mcp-json.html) : [Json](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json/index.html) Functions --------- [serializeMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/serialize-message.html) Link copied to clipboard fun [serializeMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/serialize-message.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # AbstractTransport AbstractTransport ================= abstract class [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) : [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/AbstractTransport.kt#L11) ) Implements [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) , [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) and [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) functions of [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) providing corresponding [\_onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-close.html) , [\_onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-error.html) and [\_onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/_on-message.html) properties to use for an implementation. #### Inheritors [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) Members Constructors ------------ [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/-abstract-transport.html) Link copied to clipboard constructor() Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/close.html) Link copied to clipboard abstract suspend fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/close.html) () Closes the connection. [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when the connection is closed for any reason. [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when an error occurs. [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when a message (request or response) is received over the connection. [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/send.html) Link copied to clipboard abstract suspend fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ? = null) Sends a JSON-RPC message (request or response). [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/start.html) Link copied to clipboard abstract suspend fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/start.html) () Starts processing messages on the transport, including any connection steps that might need to be taken. --- # IMPLEMENTATION_NAME IMPLEMENTATION\_NAME ==================== const val [IMPLEMENTATION\_NAME](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-i-m-p-l-e-m-e-n-t-a-t-i-o-n_-n-a-m-e.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L47) ) --- # MCP_SUBPROTOCOL MCP\_SUBPROTOCOL ================ const val [MCP\_SUBPROTOCOL](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-m-c-p_-s-u-b-p-r-o-t-o-c-o-l.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/WebSocketMcpTransport.kt#L20) ) --- # McpJson McpJson ======= val [~McpJson~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-mcp-json.html) : [Json](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L60) ) ### Deprecated Use McpJson instead #### Replace with import io.modelcontextprotocol.kotlin.sdk.types.McpJson Content copied to clipboard McpJson Content copied to clipboard --- # ProgressCallback ProgressCallback ================ typealias [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) = ([Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L52) ) Callback for progress notifications. --- # ProtocolOptions ProtocolOptions =============== open class [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) (var enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = false, var timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L73) ) Additional initialization options. Members Constructors ------------ [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/-protocol-options.html) Link copied to clipboard constructor(enforceStrictCapabilities: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) = false, timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT) Properties ---------- [enforceStrictCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/enforce-strict-capabilities.html) Link copied to clipboard var [enforceStrictCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/enforce-strict-capabilities.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) Whether to restrict emitted requests to only those that the remote side has indicated that they can handle, through their advertised capabilities. [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/timeout.html) Link copied to clipboard var [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/timeout.html) : [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) --- # ReadBuffer ReadBuffer ========== class [ReadBuffer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/ReadBuffer.kt#L13) ) Buffers a continuous stdio stream into discrete JSON-RPC messages. Members Constructors ------------ [ReadBuffer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/-read-buffer.html) Link copied to clipboard constructor() Functions --------- [append](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/append.html) Link copied to clipboard fun [append](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/append.html) (chunk: [ByteArray](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-byte-array/index.html) ) [clear](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/clear.html) Link copied to clipboard fun [clear](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/clear.html) () [readMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/read-message.html) Link copied to clipboard fun [readMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-read-buffer/read-message.html) (): [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ? --- # Protocol Protocol ======== abstract class [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/index.html) (options: [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) ?)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L161) ) Implements MCP protocol framing on top of a pluggable transport, including features like request/response linking, notifications, and progress. Members Constructors ------------ [Protocol](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/-protocol.html) Link copied to clipboard constructor(options: [ProtocolOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol-options/index.html) ?) Properties ---------- [fallbackNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/fallback-notification-handler.html) Link copied to clipboard var [fallbackNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/fallback-notification-handler.html) : suspend (notification: [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? A handler to invoke for any notification types that do not have their own handler installed. [fallbackRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/fallback-request-handler.html) Link copied to clipboard var [fallbackRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/fallback-request-handler.html) : suspend (request: [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) , extra: [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?? A handler to invoke for any request types that do not have their own handler installed. [notificationHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/notification-handlers.html) Link copied to clipboard val [notificationHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/notification-handlers.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , suspend (notification: [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \> [progressHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/progress-handlers.html) Link copied to clipboard val [progressHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/progress-handlers.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) , [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) \> [requestHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request-handlers.html) Link copied to clipboard val [requestHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request-handlers.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , suspend (request: [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) , extra: [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?\> [responseHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/response-handlers.html) Link copied to clipboard val [responseHandlers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/response-handlers.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , (response: [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) ?, error: [Exception](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-exception/index.html) ?) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \> [transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/transport.html) Link copied to clipboard var [transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/transport.html) : [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ? Functions --------- [assertRequestHandlerCapability](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/assert-request-handler-capability.html) Link copied to clipboard abstract fun [assertRequestHandlerCapability](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/assert-request-handler-capability.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) A method to check if a request handler is supported by the local side, for the given method to be handled. [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/close.html) Link copied to clipboard suspend fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/close.html) () Closes the connection. [connect](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/connect.html) Link copied to clipboard open suspend fun [connect](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/connect.html) (transport: [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ) Attaches to the given transport, starts it, and starts listening for messages. [notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/notification.html) Link copied to clipboard suspend fun [notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/notification.html) (notification: [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) , relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null) Emits a notification, which is a one-way message that does not expect a response. [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/on-close.html) Link copied to clipboard open fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/on-close.html) () Callback for when the connection is closed for any reason. [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/on-error.html) Link copied to clipboard open fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/on-error.html) (error: [Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) Callback for when an error occurs. [removeNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/remove-notification-handler.html) Link copied to clipboard fun [removeNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/remove-notification-handler.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) Removes the notification handler for the given method. [removeRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/remove-request-handler.html) Link copied to clipboard fun [removeRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/remove-request-handler.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) ) Removes the request handler for the given method. [request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request.html) Link copied to clipboard suspend fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) \> [request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request.html) (request: [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) , options: [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) ? = null): [T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/request.html) Sends a request and waits for a response. [setNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-notification-handler.html) Link copied to clipboard fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-notification-handler.html) : [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) \> [setNotificationHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-notification-handler.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , handler: (notification: [T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-notification-handler.html) ) -> [Deferred](https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-deferred/index.html) <[Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) \>) Registers a handler to invoke when this protocol object receives a notification with the given method. [setRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-request-handler.html) Link copied to clipboard inline fun <[T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-request-handler.html) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) \> [setRequestHandler](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-request-handler.html) (method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , noinline block: suspend ([T](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-protocol/set-request-handler.html) , [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ) -> [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ?) Registers a handler to invoke when this protocol object receives a request with the given method. --- # RequestHandlerExtra RequestHandlerExtra =================== class [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L153) ) Extra data given to request handlers. Members Constructors ------------ [RequestHandlerExtra](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-handler-extra/-request-handler-extra.html) Link copied to clipboard constructor() --- # serializeMessage serializeMessage ================ fun [serializeMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/serialize-message.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/ReadBuffer.kt#L71) ) --- # RequestOptions RequestOptions ============== class [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) (relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null, val onProgress: [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? = null, val timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT) : [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt#L111) ) Options that can be given per request. Members Constructors ------------ [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/-request-options.html) Link copied to clipboard constructor(relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null, onProgress: [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? = null, timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = DEFAULT\_REQUEST\_TIMEOUT) Properties ---------- [onProgress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/on-progress.html) Link copied to clipboard val [onProgress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/on-progress.html) : [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? callback for progress notifications. If set, requests progress notifications from the remote end (if supported). When progress notifications are received, this callback will be invoked. [onResumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/on-resumption-token.html) Link copied to clipboard val [onResumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/on-resumption-token.html) : ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? a callback that is invoked when the resumption token changes, if supported by the transport. This allows clients to persist the latest token for potential reconnection. [relatedRequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/related-request-id.html) Link copied to clipboard val [relatedRequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/related-request-id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? if present, `relatedRequestId` is used to indicate to the transport which incoming request to associate this outgoing message with. [resumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/resumption-token.html) Link copied to clipboard val [resumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/resumption-token.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? the resumption token used to continue long-running requests that were interrupted. This allows clients to reconnect and continue from where they left off, if supported by the transport. [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/timeout.html) Link copied to clipboard val [timeout](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/timeout.html) : [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) a timeout for this request. If exceeded, a McpException with code `RequestTimeout` will be raised from request(). If not specified, `DEFAULT_REQUEST_TIMEOUT` will be used as the timeout. Functions --------- [component1](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component1.html) Link copied to clipboard operator fun [component1](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component1.html) (): [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? [component2](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component2.html) Link copied to clipboard operator fun [component2](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component2.html) (): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? [component3](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component3.html) Link copied to clipboard operator fun [component3](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component3.html) (): ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? [component4](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/component4.html) Link copied to clipboard operator fun [component4](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/component4.html) (): [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? [component5](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/component5.html) Link copied to clipboard operator fun [component5](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/component5.html) (): [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) [copy](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/copy.html) Link copied to clipboard fun [copy](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/copy.html) (relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = this.relatedRequestId, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = this.resumptionToken, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = this.onResumptionToken, onProgress: [ProgressCallback](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-progress-callback/index.html) ? = this.onProgress, timeout: [Duration](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.time/-duration/index.html) = this.timeout): [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) open fun [copy](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/copy.html) (relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = this.relatedRequestId, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = this.resumptionToken, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = this.onResumptionToken): [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) [equals](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/equals.html) Link copied to clipboard open operator override fun [equals](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/equals.html) (other: [Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ?): [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) [hashCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/hash-code.html) Link copied to clipboard open override fun [hashCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/hash-code.html) (): [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [toString](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/to-string.html) Link copied to clipboard open override fun [toString](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/to-string.html) (): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # Transport Transport ========= interface [Transport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Transport.kt#L8) ) Describes the minimal contract for MCP transport that a client or server can communicate over. #### Inheritors [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) Members Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/close.html) Link copied to clipboard abstract suspend fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/close.html) () Closes the connection. [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-close.html) Link copied to clipboard abstract fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-close.html) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when the connection is closed for any reason. [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-error.html) Link copied to clipboard abstract fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-error.html) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when an error occurs. [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-message.html) Link copied to clipboard abstract fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/on-message.html) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when a message (request or response) is received over the connection. [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/send.html) Link copied to clipboard abstract suspend fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ? = null) Sends a JSON-RPC message (request or response). [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/start.html) Link copied to clipboard abstract suspend fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport/start.html) () Starts processing messages on the transport, including any connection steps that might need to be taken. --- # TransportSendOptions TransportSendOptions ==================== open class [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) (val relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, val resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/TransportSendOptions.kt#L15) ) Options for sending a JSON-RPC message through transport. #### Inheritors [RequestOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-request-options/index.html) Members Constructors ------------ [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/-transport-send-options.html) Link copied to clipboard constructor(relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = null, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = null) Properties ---------- [onResumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/on-resumption-token.html) Link copied to clipboard val [onResumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/on-resumption-token.html) : ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? a callback that is invoked when the resumption token changes, if supported by the transport. This allows clients to persist the latest token for potential reconnection. [relatedRequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/related-request-id.html) Link copied to clipboard val [relatedRequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/related-request-id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? if present, `relatedRequestId` is used to indicate to the transport which incoming request to associate this outgoing message with. [resumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/resumption-token.html) Link copied to clipboard val [resumptionToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/resumption-token.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? the resumption token used to continue long-running requests that were interrupted. This allows clients to reconnect and continue from where they left off, if supported by the transport. Functions --------- [component1](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component1.html) Link copied to clipboard operator fun [component1](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component1.html) (): [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? [component2](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component2.html) Link copied to clipboard operator fun [component2](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component2.html) (): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? [component3](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component3.html) Link copied to clipboard operator fun [component3](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/component3.html) (): ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? [copy](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/copy.html) Link copied to clipboard open fun [copy](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/copy.html) (relatedRequestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? = this.relatedRequestId, resumptionToken: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = this.resumptionToken, onResumptionToken: ([String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ? = this.onResumptionToken): [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) [equals](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/equals.html) Link copied to clipboard open operator override fun [equals](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/equals.html) (other: [Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ?): [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) [hashCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/hash-code.html) Link copied to clipboard open override fun [hashCode](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/hash-code.html) (): [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [toString](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/to-string.html) Link copied to clipboard open override fun [toString](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/to-string.html) (): [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # Annotations Annotations =========== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) (val audience: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? = null, val priority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val lastModified: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/common.kt#L167) ) Optional annotations for the client. The client can use annotations to inform how objects are used or displayed. Members Constructors ------------ [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/-annotations.html) Link copied to clipboard constructor(audience: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? = null, priority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, lastModified: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Properties ---------- [audience](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/audience.html) Link copied to clipboard val [audience](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/audience.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? Describes who the intended customer of this object or data is. Can include multiple entries to indicate content useful for multiple audiences (e.g., Role.user, Role.assistant). [lastModified](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/last-modified.html) Link copied to clipboard val [lastModified](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/last-modified.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The moment the resource was last modified, as an ISO 8601 formatted string (e.g., "2025-01-12T15:00:58Z"). Examples: last activity timestamp in an open file, timestamp when the resource was attached, etc. [priority](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/priority.html) Link copied to clipboard val [priority](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/priority.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? Describes how important this data is for operating the server. A value of 1.0 means "most important" and indicates that the data is effectively required, while 0.0 means "least important" and indicates that the data is entirely optional. Should be a value between 0.0 and 1.0. --- # WebSocketMcpTransport WebSocketMcpTransport ===================== abstract class [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/index.html) : [AbstractTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/WebSocketMcpTransport.kt#L29) ) Abstract class representing a WebSocket transport for the Model Context Protocol (MCP). Handles communication over a WebSocket session. Members Constructors ------------ [WebSocketMcpTransport](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/-web-socket-mcp-transport.html) Link copied to clipboard constructor() Functions --------- [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/close.html) Link copied to clipboard open suspend override fun [close](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/close.html) () Closes the connection. [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) Link copied to clipboard open override fun [onClose](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-close.html) (block: () -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when the connection is closed for any reason. [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) Link copied to clipboard open override fun [onError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-error.html) (block: ([Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when an error occurs. [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) Link copied to clipboard open override fun [onMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-abstract-transport/on-message.html) (block: suspend ([JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ) -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Callback for when a message (request or response) is received over the connection. [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/send.html) Link copied to clipboard open suspend override fun [send](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/send.html) (message: [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) , options: [TransportSendOptions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-transport-send-options/index.html) ?) Sends a JSON-RPC message (request or response). [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/start.html) Link copied to clipboard open suspend override fun [start](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.shared/-web-socket-mcp-transport/start.html) () Starts processing messages on the transport, including any connection steps that might need to be taken. --- # assistant assistant ========= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistant](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant.html) (block: () -> [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L343) ) Adds an assistant message with simple text content. Example: messages { assistant { "The weather is sunny today." }} Content copied to clipboard --- # assistantAudio assistantAudio ============== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantAudio](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-audio.html) (block: [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L393) ) Adds an assistant message with audio content. Example: messages { assistantAudio { data = generatedAudioData mimeType = "audio/mpeg" }} Content copied to clipboard --- # assistantImage assistantImage ============== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantImage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-image.html) (block: [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L376) ) Adds an assistant message with image content. Example: messages { assistantImage { data = generatedImageData mimeType = "image/jpeg" }} Content copied to clipboard --- # assistantText assistantText ============= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantText](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-text.html) (block: [TextContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L359) ) Adds an assistant message with text content using a DSL builder. Example: messages { assistantText { text = "Here's the answer" annotations(priority = 0.8) }} Content copied to clipboard --- # BaseRequestParams BaseRequestParams ================= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) (val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/request.kt#L41) ) Members Constructors ------------ [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/-base-request-params.html) Link copied to clipboard constructor(meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? The `_meta` property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions. --- # BaseNotificationParams BaseNotificationParams ====================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) (val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L45) ) Base parameters for notifications that only contain metadata. Members Constructors ------------ [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/-base-notification-params.html) Link copied to clipboard constructor(meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? --- # AudioContent AudioContent ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) (val data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.kt#L87) ) Audio provided to or from an LLM. Members Constructors ------------ [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/-audio-content.html) Link copied to clipboard constructor(data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/annotations.html) Link copied to clipboard val [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/annotations.html) : [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? Optional annotations for the client. [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/data.html) Link copied to clipboard val [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/data.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The base64-encoded audio data. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions. [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/mime-type.html) Link copied to clipboard val [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The MIME type of the audio. Different providers may support different audio types. [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/type.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/type.html) : [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) --- # buildCallToolRequest buildCallToolRequest ==================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-call-tool-request.html) (block: [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.dsl.kt#L46) ) Creates a [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) using a type-safe DSL builder. Required -------- * [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/name.html) - The name of the tool to call Optional -------- * [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/arguments.html) - Arguments to pass to the tool * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without arguments: val request = buildCallToolRequest { name = "getCurrentTime"} Content copied to clipboard Example with arguments: val request = buildCallToolRequest { name = "searchDatabase" arguments { put("query", "users") put("limit", 10) }} Content copied to clipboard #### Return A configured [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) instance #### Parameters block Configuration lambda for setting up the call tool request #### See also [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) --- # AudioContentBuilder AudioContentBuilder =================== class [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) : [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.dsl.kt#L246) ) DSL builder for constructing [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) instances. Required -------- * [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/data.html) - The base64-encoded audio data * [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/mime-type.html) - The MIME type of the audio (e.g., "audio/wav", "audio/mpeg") Optional -------- * [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) - Content annotations (inherited from [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ) * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) - Additional metadata (inherited from [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ) Example usage in sampling messages: createMessageRequest { maxTokens = 100 messages { userAudio { data = "UklGRiQAAABXQVZFZm10IBAAAAABAAEA..." mimeType = "audio/wav" } }} Content copied to clipboard Example with annotations: userAudio { data = base64EncodedAudioData mimeType = "audio/mpeg" annotations(Annotations(priority = 0.7))} Content copied to clipboard #### See also [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) Members Properties ---------- [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/data.html) Link copied to clipboard var [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/data.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The base64-encoded audio data. This is a required field. [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/mime-type.html) Link copied to clipboard var [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The MIME type of the audio (e.g., "audio/wav", "audio/mpeg"). This is a required field. Functions --------- [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) Link copied to clipboard fun [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) (annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ) Sets optional annotations for the content. fun [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) (audience: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? = null, priority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, lastModified: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Sets optional annotations for the content with individual parameters. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets optional metadata for the content using a DSL builder. --- # buildElicitRequest buildElicitRequest ================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-elicit-request.html) (block: [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.dsl.kt#L62) ) Creates an [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) using a type-safe DSL builder. Required -------- * [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/message.html) - The message to present to the user * [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/requested-schema.html) - Schema defining the structure of requested data Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example requesting user information: val request = buildElicitRequest { message = "Please provide your contact information" requestedSchema { properties { put("email", JsonObject(mapOf( "type" to JsonPrimitive("string"), "description" to JsonPrimitive("Your email address") ))) put("name", JsonObject(mapOf( "type" to JsonPrimitive("string") ))) } required = listOf("email") }} Content copied to clipboard Example with simple text input: val request = buildElicitRequest { message = "Enter a project name" requestedSchema { properties { put("projectName", JsonObject(mapOf( "type" to JsonPrimitive("string"), "description" to JsonPrimitive("Name for the new project") ))) } }} Content copied to clipboard #### Return A configured [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) instance #### Parameters block Configuration lambda for setting up the elicitation request #### See also [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) --- # buildCompleteRequest buildCompleteRequest ==================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-complete-request.html) (block: [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.dsl.kt#L45) ) Creates a [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) using a type-safe DSL builder. Required -------- * [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/argument.html) - Sets the argument name and value to complete * [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/ref.html) - Sets the reference to a prompt or resource template Optional -------- * [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/context.html) - Adds additional context for the completion * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Adds metadata to the request Example with [PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-reference/index.html) : val request = buildCompleteRequest { argument("query", "user input") ref(PromptReference("searchPrompt"))} Content copied to clipboard Example with [ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template-reference/index.html) : val request = buildCompleteRequest { argument("path", "/users/123") ref(ResourceTemplateReference("file:///{path}")) context { put("userId", "123") put("role", "admin") }} Content copied to clipboard #### Return A configured [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) instance #### Parameters block Configuration lambda for setting up the completion request #### See also [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) --- # BlobResourceContents BlobResourceContents ==================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/index.html) (val blob: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.kt#L154) ) The contents of a specific resource or sub-resource. Members Constructors ------------ [BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/-blob-resource-contents.html) Link copied to clipboard constructor(blob: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [blob](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/blob.html) Link copied to clipboard val [blob](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/blob.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) A base64-encoded string representing the binary data of the item. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/mime-type.html) Link copied to clipboard open override val [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The MIME type of this resource, if known. [uri](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/uri.html) Link copied to clipboard open override val [uri](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/uri.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The URI of this resource. --- # buildGetPromptRequest buildGetPromptRequest ===================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildGetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-get-prompt-request.html) (block: [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.dsl.kt#L43) ) Creates a [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) using a type-safe DSL builder. Required -------- * [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/name.html) - The name of the prompt to retrieve Optional -------- * [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/arguments.html) - Arguments to pass to the prompt * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without arguments: val request = buildGetPromptRequest { name = "greeting"} Content copied to clipboard Example with arguments: val request = buildGetPromptRequest { name = "userProfile" arguments = mapOf( "userId" to "123", "includeDetails" to "true" )} Content copied to clipboard #### Return A configured [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) instance #### Parameters block Configuration lambda for setting up the get prompt request #### See also [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) --- # buildCreateMessageRequest buildCreateMessageRequest ========================= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-create-message-request.html) (block: [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L62) ) Creates a [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) using a type-safe DSL builder. Required -------- * [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/max-tokens.html) - Maximum number of tokens to generate * [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/messages.html) - List of conversation messages Optional -------- * [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/system-prompt.html) - System-level instructions * [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/context.html) - Context inclusion settings * [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/temperature.html) - Sampling temperature * [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/stop-sequences.html) - Sequences that stop generation * [preferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/preferences.html) - Model selection preferences * [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/metadata.html) - Additional metadata * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Request metadata Example: val request = buildCreateMessageRequest { maxTokens = 1000 systemPrompt = "You are a helpful assistant" messages { user { "What is the capital of France?" } assistant { "The capital of France is Paris." } user { "What about Germany?" } }} Content copied to clipboard Example with preferences: val request = buildCreateMessageRequest { maxTokens = 500 temperature = 0.7 preferences( hints = listOf("claude-3-sonnet"), intelligence = 0.8 ) messages { user { "Explain quantum computing" } }} Content copied to clipboard #### Return A configured [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) instance #### Parameters block Configuration lambda for setting up the create message request #### See also [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) --- # buildInitializeRequest buildInitializeRequest ====================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildInitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-initialize-request.html) (block: [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.dsl.kt#L57) ) Creates an [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) using a type-safe DSL builder. Required -------- * [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/protocol-version.html) - MCP protocol version * [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) - Client capabilities * [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/info.html) - Client implementation information Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example: val request = buildInitializeRequest { protocolVersion = "2024-11-05" capabilities { sampling(ClientCapabilities.sampling) roots(listChanged = true) } info("MyClient", "1.0.0")} Content copied to clipboard Example with full client info: val request = buildInitializeRequest { protocolVersion = "2024-11-05" capabilities { sampling(ClientCapabilities.sampling) experimental { put("feature", JsonPrimitive(true)) } } info( name = "MyAdvancedClient", version = "2.0.0", title = "Advanced MCP Client", websiteUrl = "https://example.com" )} Content copied to clipboard #### Return A configured [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) instance #### Parameters block Configuration lambda for setting up the initialize request #### See also [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) --- # buildListResourceTemplatesRequest buildListResourceTemplatesRequest ================================= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resource-templates-request.html) (block: [ListResourceTemplatesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.dsl.kt#L274) ) Creates a [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) using a type-safe DSL builder. Optional -------- * [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) - Pagination cursor for fetching next page * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without pagination: val request = buildListResourceTemplatesRequest { } Content copied to clipboard Example with pagination: val request = buildListResourceTemplatesRequest { cursor = "eyJwYWdlIjogMn0="} Content copied to clipboard #### Return A configured [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) instance #### Parameters block Configuration lambda for setting up the list resource templates request #### See also [ListResourceTemplatesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request-builder/index.html) [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) --- # buildPingRequest buildPingRequest ================ @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildPingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-ping-request.html) (block: [PingRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/pingRequest.dsl.kt#L35) ) Creates a [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) using a type-safe DSL builder. Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example with no parameters: val request = buildPingRequest { } Content copied to clipboard Example with metadata: val request = buildPingRequest { meta { put("timestamp", JsonPrimitive(System.currentTimeMillis())) }} Content copied to clipboard #### Return A configured [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) instance #### Parameters block Configuration lambda for setting up the ping request #### See also [PingRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request-builder/index.html) [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) --- # buildListPromptsRequest buildListPromptsRequest ======================= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-prompts-request.html) (block: [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.dsl.kt#L119) ) Creates a [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) using a type-safe DSL builder. Optional -------- * [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) - Pagination cursor for fetching next page * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without pagination: val request = buildListPromptsRequest { } Content copied to clipboard Example with pagination: val request = buildListPromptsRequest { cursor = "eyJwYWdlIjogMn0="} Content copied to clipboard #### Return A configured [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) instance #### Parameters block Configuration lambda for setting up the list prompts request #### See also [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) --- # buildReadResourceRequest buildReadResourceRequest ======================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-read-resource-request.html) (block: [ReadResourceRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.dsl.kt#L85) ) Creates a [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) using a type-safe DSL builder. Required -------- * [uri](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/uri.html) - The URI of the resource to read Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example: val request = buildReadResourceRequest { uri = "file:///path/to/resource.txt"} Content copied to clipboard #### Return A configured [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) instance #### Parameters block Configuration lambda for setting up the read resource request #### See also [ReadResourceRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/index.html) [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) --- # buildSubscribeRequest buildSubscribeRequest ===================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildSubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-subscribe-request.html) (block: [SubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.dsl.kt#L147) ) Creates a [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) using a type-safe DSL builder. Required -------- * [uri](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/uri.html) - The URI of the resource to subscribe to Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example: val request = buildSubscribeRequest { uri = "file:///path/to/resource.txt"} Content copied to clipboard #### Return A configured [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) instance #### Parameters block Configuration lambda for setting up the subscribe request #### See also [SubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/index.html) [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) --- # buildListResourcesRequest buildListResourcesRequest ========================= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resources-request.html) (block: [ListResourcesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.dsl.kt#L34) ) Creates a [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) using a type-safe DSL builder. Optional -------- * [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) - Pagination cursor for fetching next page * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without pagination: val request = buildListResourcesRequest { } Content copied to clipboard Example with pagination: val request = buildListResourcesRequest { cursor = "eyJwYWdlIjogMn0="} Content copied to clipboard #### Return A configured [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) instance #### Parameters block Configuration lambda for setting up the list resources request #### See also [ListResourcesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request-builder/index.html) [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) --- # buildListRootsRequest buildListRootsRequest ===================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-roots-request.html) (block: [ListRootsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/roots.dsl.kt#L35) ) Creates a [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) using a type-safe DSL builder. Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example with no parameters: val request = buildListRootsRequest { } Content copied to clipboard Example with metadata: val request = buildListRootsRequest { meta { put("context", "initialization") }} Content copied to clipboard #### Return A configured [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) instance #### Parameters block Configuration lambda for setting up the list roots request #### See also [ListRootsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request-builder/index.html) [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) --- # buildUnsubscribeRequest buildUnsubscribeRequest ======================= @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildUnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-unsubscribe-request.html) (block: [UnsubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.dsl.kt#L209) ) Creates an [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) using a type-safe DSL builder. Required -------- * [uri](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/uri.html) - The URI of the resource to unsubscribe from Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example: val request = buildUnsubscribeRequest { uri = "file:///path/to/resource.txt"} Content copied to clipboard #### Return A configured [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) instance #### Parameters block Configuration lambda for setting up the unsubscribe request #### See also [UnsubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/index.html) [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) --- # buildListToolsRequest buildListToolsRequest ===================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-tools-request.html) (block: [ListToolsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.dsl.kt#L146) ) Creates a [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) using a type-safe DSL builder. Optional -------- * [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) - Pagination cursor for fetching next page * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example without pagination: val request = buildListToolsRequest { } Content copied to clipboard Example with pagination: val request = buildListToolsRequest { cursor = "eyJwYWdlIjogMn0="} Content copied to clipboard #### Return A configured [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) instance #### Parameters block Configuration lambda for setting up the list tools request #### See also [ListToolsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request-builder/index.html) [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) --- # buildSetLevelRequest buildSetLevelRequest ==================== @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildSetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-set-level-request.html) (block: [SetLevelRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/logging.dsl.kt#L39) ) Creates a [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) using a type-safe DSL builder. Required -------- * [loggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/logging-level.html) - The logging level to set Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request Example setting info level: val request = buildSetLevelRequest { loggingLevel = LoggingLevel.Info} Content copied to clipboard Example setting debug level: val request = buildSetLevelRequest { loggingLevel = LoggingLevel.Debug} Content copied to clipboard #### Return A configured [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) instance #### Parameters block Configuration lambda for setting up the logging level request #### See also [SetLevelRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/index.html) [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) --- # Companion Companion ========= object [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/capabilities.kt#L57) ) Members Properties ---------- [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/elicitation.html) Link copied to clipboard val [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/elicitation.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/sampling.html) Link copied to clipboard val [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/sampling.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) --- # CallToolRequestBuilder CallToolRequestBuilder ====================== class [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.dsl.kt#L67) ) DSL builder for constructing [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) instances. This builder invokes a specific tool by name with optional arguments. Required -------- * [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/name.html) - The name of the tool to call Optional -------- * [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/arguments.html) - Arguments to pass to the tool * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request #### See also [buildCallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-call-tool-request.html) [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/name.html) Link copied to clipboard var [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The name of the tool to call. This is a required field. Functions --------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/arguments.html) Link copied to clipboard fun [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/arguments.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets tool arguments using a DSL builder. fun [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/arguments.html) (arguments: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) Sets tool arguments directly from a JsonObject. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. --- # CallToolRequestParams CallToolRequestParams ===================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val arguments: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.kt#L174) ) Parameters for a tools/call request. Members Constructors ------------ [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/-call-tool-request-params.html) Link copied to clipboard constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , arguments: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/arguments.html) Link copied to clipboard val [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/arguments.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Arguments to pass to the tool. Keys are argument names, values are the argument values. The structure must match the tool's input schema. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Optional metadata for this request. May include a progressToken for out-of-band progress notifications. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the tool to invoke. --- # Roots Roots ===== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) (val listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/capabilities.kt#L73) ) Indicates that the client supports listing roots. Roots are the top-level directories or locations that the server can access. When present (non-null), the server can query available roots and optionally receive notifications when the roots list changes. Members Constructors ------------ [Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/-roots.html) Link copied to clipboard constructor(listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Properties ---------- [listChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/list-changed.html) Link copied to clipboard val [listChanged](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/list-changed.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? Whether the client supports notifications for changes to the roots list. If true, the client will send notifications when roots are added or removed. --- # CallToolResult CallToolResult ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) (val content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \>, val isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.kt#L203) ) The server's response to a [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) . Contains the result of the tool execution, which can be successful or an error. **Important error handling:** * Errors that originate from the **tool itself** SHOULD be reported inside the result object with [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/--root--.html) set to true, NOT as an MCP protocol-level error response. This allows the LLM to see that an error occurred and potentially self-correct. * Errors in **finding the tool**, unsupported operations, or other exceptional conditions SHOULD be reported as MCP protocol-level error responses. Members Constructors ------------ [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/-call-tool-result.html) Link copied to clipboard constructor(content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \>, isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/content.html) Link copied to clipboard val [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/content.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \> A list of content blocks that represent the unstructured result of the tool call. This is what the LLM will see as the tool's output. [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/is-error.html) Link copied to clipboard val [isError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/is-error.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? Whether the tool call ended in an error. If not set, this is assumed to be false (the call was successful). When true, the [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/--root--.html) should describe the error that occurred. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/structured-content.html) Link copied to clipboard val [structuredContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/structured-content.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? An optional JSON object that represents the structured result of the tool call. Provides machine-readable output in addition to the human-readable [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/--root--.html) . --- # CancelledNotificationParams CancelledNotificationParams =========================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) (val requestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , val reason: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L138) ) Parameters for a notifications/cancelled notification. Members Constructors ------------ [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/-cancelled-notification-params.html) Link copied to clipboard constructor(requestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , reason: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this notification. [reason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/reason.html) Link copied to clipboard val [reason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/reason.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An optional string describing the reason for the cancellation. This MAY be logged or presented to the user. [requestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/request-id.html) Link copied to clipboard val [requestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/request-id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) The ID of the request to cancel. This MUST correspond to the ID of a request previously issued in the same direction. --- # ClientCapabilities ClientCapabilities ================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) (val sampling: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val roots: [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? = null, val elicitation: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/capabilities.kt#L50) ) Capabilities that a client may support. Known capabilities are defined here, but this is not a closed set: any client can define its own additional capabilities through the [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/--root--.html) field. The presence of a capability object (non-null value) indicates that the client supports that capability. Members Constructors ------------ [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-client-capabilities.html) Link copied to clipboard constructor(sampling: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, roots: [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? = null, elicitation: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Types ----- [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/index.html) Link copied to clipboard object [Companion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-companion/index.html) [Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) (val listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Indicates that the client supports listing roots. Properties ---------- [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/elicitation.html) Link copied to clipboard val [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/elicitation.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Present if the client supports elicitation from the server. [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/experimental.html) Link copied to clipboard val [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/experimental.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Experimental, non-standard capabilities that the client supports. Keys are capability names, values are capability-specific configuration objects. [roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/roots.html) Link copied to clipboard val [roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/roots.html) : [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? Present if the client supports listing roots. [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/sampling.html) Link copied to clipboard val [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/sampling.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Present if the client supports sampling from an LLM. --- # CallToolRequest CallToolRequest =============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) (val params: [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.kt#L140) ) Used by the client to invoke a tool provided by the server. Tools allow servers to expose functionality that clients (and LLMs) can call. Examples include file operations, API calls, database queries, or any other server-side operations. MembersMembers & Extensions Constructors ------------ [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/-call-tool-request.html) Link copied to clipboard constructor(params: [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) ) Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/arguments.html) Link copied to clipboard val [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/arguments.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Arguments to pass to the tool. Keys are argument names, values are the argument values. The structure must match the tool's input schema. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the tool to invoke. [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/params.html) : [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) The parameters specifying which tool to call and what arguments to pass. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # ClientCapabilitiesBuilder ClientCapabilitiesBuilder ========================= class [ClientCapabilitiesBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/capabilities.dsl.kt#L38) ) DSL builder for constructing [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) instances. This builder is used within [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) to configure client capabilities. All capabilities are optional - the presence of a capability indicates support for that feature. Available Functions (all optional) ---------------------------------- * [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/sampling.html) - Indicates support for sampling from an LLM * [roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/roots.html) - Indicates support for listing roots * [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/elicitation.html) - Indicates support for elicitation from the server * [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/experimental.html) - Defines experimental, non-standard capabilities Example usage within [buildInitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-initialize-request.html) : val request = buildInitializeRequest { protocolVersion = "1.0" capabilities { sampling(ClientCapabilities.sampling) roots(listChanged = true) experimental { put("customFeature", JsonPrimitive(true)) } } info("MyClient", "1.0.0")} Content copied to clipboard #### See also [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) [InitializeRequestBuilder.capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) Members Functions --------- [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/elicitation.html) Link copied to clipboard fun [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/elicitation.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Indicates that the client supports elicitation from the server with custom configuration. fun [elicitation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/elicitation.html) (value: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) Indicates that the client supports elicitation from the server. [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/experimental.html) Link copied to clipboard fun [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/experimental.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Defines experimental, non-standard capabilities that the client supports using a DSL builder. fun [experimental](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/experimental.html) (value: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) Defines experimental, non-standard capabilities that the client supports. [roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/roots.html) Link copied to clipboard fun [roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/roots.html) (listChanged: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Indicates that the client supports listing roots. [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/sampling.html) Link copied to clipboard fun [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/sampling.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Indicates that the client supports sampling from an LLM with custom configuration. fun [sampling](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/sampling.html) (value: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) Indicates that the client supports sampling from an LLM. --- # CancelledNotification CancelledNotification ===================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) (val params: [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) ) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) , [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L103) ) This notification can be sent by either side to indicate that it is cancelling a previously-issued request. The request SHOULD still be in-flight, but due to communication latency, it is always possible that this notification MAY arrive after the request has already finished. This notification indicates that the result will be unused, so any associated processing SHOULD cease. A client MUST NOT attempt to cancel its `initialize` request. MembersMembers & Extensions Constructors ------------ [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/-cancelled-notification.html) Link copied to clipboard constructor(params: [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) ) Properties ---------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Metadata for this notification. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/params.html) : [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) Details of the cancellation request. [reason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/reason.html) Link copied to clipboard val [reason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/reason.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? A string describing the reason for the cancellation. [requestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/request-id.html) Link copied to clipboard val [requestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/request-id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) The ID of the request to cancel. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. --- # ClientResult ClientResult ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ClientResultPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result-polymorphic-serializer/index.html) ) sealed interface [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/request.kt#L98) ) #### Inheritors [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) [ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-result/index.html) [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) Members Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") abstract val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? --- # Argument Argument ======== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) )([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L79) ) The argument for which completion is being requested. Members Constructors ------------ [Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/-argument.html) Link copied to clipboard constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the argument being completed. [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The partial value of the argument to use for completion matching. This is typically the text the user has typed so far. --- # Context Context ======= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) (val arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L89) ) Additional context to help generate more relevant completions. Members Constructors ------------ [Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/-context.html) Link copied to clipboard constructor(arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null) Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/arguments.html) Link copied to clipboard val [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/arguments.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Previously resolved variables in a URI template or prompt. These can be used to provide context-aware completions. For example, if completing a file path, this might contain the repository or directory context. --- # CompleteRequestBuilder CompleteRequestBuilder ====================== class [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.dsl.kt#L59) ) DSL builder for constructing [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) instances. This builder provides methods to configure completion requests for prompts or resource templates. Both [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/argument.html) and [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/ref.html) are required; [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/context.html) is optional. #### See also [buildCompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-complete-request.html) Members Functions --------- [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/argument.html) Link copied to clipboard fun [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/argument.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Sets the argument for completion. [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/context.html) Link copied to clipboard fun [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/context.html) (block: [MutableMap](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>.() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets additional context for the completion request using a DSL builder. fun [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/context.html) (arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>) Sets additional context for the completion request using a Map. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/ref.html) Link copied to clipboard fun [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/ref.html) (value: [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) ) Sets the reference to a prompt or resource template. --- # Completion Completion ========== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) (val values: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>, val total: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, val hasMore: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L121) ) Completion options and pagination information. Members Constructors ------------ [Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/-completion.html) Link copied to clipboard constructor(values: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>, total: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, hasMore: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Properties ---------- [hasMore](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/has-more.html) Link copied to clipboard val [hasMore](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/has-more.html) : [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? Indicates whether there are additional completion options beyond those provided in the current response, even if the exact total is unknown. Use this when the complete set of completions is too large to calculate upfront. [total](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/total.html) Link copied to clipboard val [total](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/total.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? The total number of completion options available. This can exceed the number of values actually sent in the response, indicating that pagination or filtering may be needed. [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/values.html) Link copied to clipboard val [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/values.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \> An array of completion values. Must not exceed 100 items. Each value represents a possible completion for the requested argument. --- # ClientNotification ClientNotification ================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ClientNotificationPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification-polymorphic-serializer/index.html) ) sealed interface [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) : [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L25) ) Represents a notification sent by the client. #### Inheritors [CustomNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/index.html) [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification/index.html) [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-roots-list-changed-notification/index.html) MembersMembers & Extensions Properties ---------- [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/method.html) Link copied to clipboard abstract val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/params.html) Link copied to clipboard abstract val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/params.html) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) ? Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. --- # CompleteRequestParams CompleteRequestParams ===================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) (val argument: [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) , val ref: [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) , val context: [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L64) ) Parameters for the completion request. Members Constructors ------------ [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-complete-request-params.html) Link copied to clipboard constructor(argument: [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) , ref: [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) , context: [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Types ----- [Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) The argument for which completion is being requested. [Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) (val arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null) Additional context to help generate more relevant completions. Properties ---------- [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/argument.html) Link copied to clipboard val [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/argument.html) : [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) The argument's information for which completion options are requested. [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/context.html) Link copied to clipboard val [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/context.html) : [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? Additional, optional context for generating completions. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? The `_meta` property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions. [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/ref.html) Link copied to clipboard val [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/ref.html) : [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) A reference to either a prompt or resource template to complete within. --- # CompleteResult CompleteResult ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) (val completion: [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) , val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L102) ) The server's response to a [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) . Provides completion options for prompt or resource template arguments, along with pagination information if there are many possible completions. Members Constructors ------------ [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-complete-result.html) Link copied to clipboard constructor(completion: [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Types ----- [Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) (val values: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>, val total: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? = null, val hasMore: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Completion options and pagination information. Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/completion.html) Link copied to clipboard val [completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/completion.html) : [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) The completion options and metadata about available results. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. See MCP specification for details on \_meta usage. --- # ContentBlock ContentBlock ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ContentBlockPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block-polymorphic-serializer/index.html) ) sealed interface [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.kt#L30) ) #### Inheritors [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) [ResourceLink](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-link/index.html) [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) Members Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") abstract val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/type.html) Link copied to clipboard abstract val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/type.html) : [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) --- # TEXT TEXT ==== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "text") [TEXT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-t-e-x-t/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # ClientRequest ClientRequest ============= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/request.kt#L63) ) Represents a request sent by the client. #### Inheritors [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) MembersMembers & Extensions Properties ---------- [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/method.html) Link copied to clipboard abstract val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/params.html) Link copied to clipboard abstract val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/params.html) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ? Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # CompleteRequest CompleteRequest =============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) (val params: [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/completion.kt#L17) ) A request from the client to the server to ask for completion options. MembersMembers & Extensions Constructors ------------ [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/-complete-request.html) Link copied to clipboard constructor(params: [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) ) constructor(argument: [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) , ref: [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) , context: [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/argument.html) Link copied to clipboard val [argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/argument.html) : [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) The argument's information for which completion options are requested. [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/context.html) Link copied to clipboard val [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/context.html) : [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? Additional, context for generating completions. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/params.html) : [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) The request parameters containing the argument to complete and its context. [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/ref.html) Link copied to clipboard val [ref](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/ref.html) : [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) A reference to either a prompt or resource template to complete within. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # IMAGE IMAGE ===== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "image") [IMAGE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-i-m-a-g-e/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # AUDIO AUDIO ===== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "audio") [AUDIO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-a-u-d-i-o/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # RESOURCE_LINK RESOURCE\_LINK ============== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "resource\_link") [RESOURCE\_LINK](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-r-e-s-o-u-r-c-e_-l-i-n-k/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # ContentTypes ContentTypes ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) \> ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.kt#L12) ) MembersEntries Entries ------- [TEXT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-t-e-x-t/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "text") [TEXT](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-t-e-x-t/index.html) [IMAGE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-i-m-a-g-e/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "image") [IMAGE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-i-m-a-g-e/index.html) [AUDIO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-a-u-d-i-o/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "audio") [AUDIO](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-a-u-d-i-o/index.html) [RESOURCE\_LINK](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-r-e-s-o-u-r-c-e_-l-i-n-k/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "resource\_link") [RESOURCE\_LINK](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-r-e-s-o-u-r-c-e_-l-i-n-k/index.html) [EMBEDDED\_RESOURCE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-e-m-b-e-d-d-e-d_-r-e-s-o-u-r-c-e/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "resource") [EMBEDDED\_RESOURCE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-e-m-b-e-d-d-e-d_-r-e-s-o-u-r-c-e/index.html) Properties ---------- [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/entries.html) Link copied to clipboard val [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/entries.html) : [EnumEntries](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html) <[ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) \> Returns a representation of an immutable list of all enum entries, in the order they're declared. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Functions --------- [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value-of.html) Link copied to clipboard fun [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value-of.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/values.html) Link copied to clipboard fun [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/values.html) (): [Array](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html) <[ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) \> Returns an array containing the constants of this enum type, in the order they're declared. --- # EMBEDDED_RESOURCE EMBEDDED\_RESOURCE ================== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "resource") [EMBEDDED\_RESOURCE](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/-e-m-b-e-d-d-e-d_-r-e-s-o-u-r-c-e/index.html) Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) Link copied to clipboard val [value](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/value.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # DEFAULT_NEGOTIATED_PROTOCOL_VERSION DEFAULT\_NEGOTIATED\_PROTOCOL\_VERSION ====================================== const val [DEFAULT\_NEGOTIATED\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-d-e-f-a-u-l-t_-n-e-g-o-t-i-a-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/common.kt#L13) ) --- # CreateMessageResult CreateMessageResult =================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) (val role: [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) , val content: [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) , val model: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val stopReason: [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.kt#L237) ) The client's response to a [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) from the server. The client should inform the user before returning the sampled message, to allow them to inspect the response (human in the loop) and decide whether to allow the server to see it. Members Constructors ------------ [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/-create-message-result.html) Link copied to clipboard constructor(role: [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) , content: [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) , model: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , stopReason: [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/content.html) Link copied to clipboard val [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/content.html) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) The generated content. Can be text, image, or audio content. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. [model](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/model.html) Link copied to clipboard val [model](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/model.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the model that generated the message (e.g., "claude-3-opus-20240229", "gpt-4-turbo-preview"). This helps the server understand which model was used. [role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/role.html) Link copied to clipboard val [role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/role.html) : [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) The role of the message sender. Typically [Role.Assistant](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/-assistant/index.html) for LLM-generated responses. [stopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/stop-reason.html) Link copied to clipboard val [stopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/stop-reason.html) : [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) ? The reason why sampling stopped, if known. Common values: "end\_turn", "max\_tokens", "stop\_sequence", "content\_filter" --- # CreateMessageRequestBuilder CreateMessageRequestBuilder =========================== class [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.dsl.kt#L89) ) DSL builder for constructing [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) instances. This builder creates LLM sampling requests with conversation history. Required -------- * [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/max-tokens.html) - Maximum number of tokens to generate * [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/messages.html) - List of conversation messages Optional -------- * [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/system-prompt.html) - System-level instructions * [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/context.html) - Context inclusion settings * [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/temperature.html) - Sampling temperature (0.0-1.0) * [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/stop-sequences.html) - Sequences that stop generation * [preferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/preferences.html) - Model selection preferences * [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/metadata.html) - Additional metadata * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Request metadata #### See also [buildCreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-create-message-request.html) [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) Members Properties ---------- [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/context.html) Link copied to clipboard var [context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/context.html) : [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? Optional context inclusion settings. [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/max-tokens.html) Link copied to clipboard var [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/max-tokens.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) ? Maximum number of tokens to generate. This is a required field. [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/stop-sequences.html) Link copied to clipboard var [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/stop-sequences.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional sequences that will stop generation when encountered. [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/system-prompt.html) Link copied to clipboard var [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/system-prompt.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional system-level instructions for the model. [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/temperature.html) Link copied to clipboard var [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/temperature.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? Optional sampling temperature (0.0-1.0). Lower values are more deterministic. Functions --------- [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/messages.html) Link copied to clipboard fun [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/messages.html) (block: [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets messages using a DSL builder. fun [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/messages.html) (messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \>) Sets messages directly from a list. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/metadata.html) Link copied to clipboard fun [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/metadata.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets additional metadata using a DSL builder. [preferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/preferences.html) Link copied to clipboard fun [preferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/preferences.html) (value: [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ) Sets model preferences directly. fun [preferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/preferences.html) (hints: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, cost: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, speed: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, intelligence: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null) Sets model selection preferences using individual parameters. --- # CreateMessageRequestParams CreateMessageRequestParams ========================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) (val maxTokens: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) , val messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \>, val modelPreferences: [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ? = null, val systemPrompt: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val includeContext: [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? = null, val temperature: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val stopSequences: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val metadata: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.kt#L191) ) Parameters for a sampling/createMessage request. Members Constructors ------------ [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/-create-message-request-params.html) Link copied to clipboard constructor(maxTokens: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) , messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \>, modelPreferences: [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ? = null, systemPrompt: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, includeContext: [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? = null, temperature: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, stopSequences: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, metadata: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [includeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/include-context.html) Link copied to clipboard val [includeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/include-context.html) : [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? A request to include context from one or more MCP servers (including the caller), to be attached to the prompt. The client MAY ignore this request. [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/max-tokens.html) Link copied to clipboard val [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/max-tokens.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) The requested maximum number of tokens to sample (to prevent runaway completions). The client MAY choose to sample fewer tokens than the requested maximum. [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/messages.html) Link copied to clipboard val [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/messages.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \> The messages to use as context for sampling. Typically includes conversation history and the current user message. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Optional metadata for this request. May include a progressToken for out-of-band progress notifications. [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/metadata.html) Link copied to clipboard val [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/metadata.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata to pass through to the LLM provider. The format of this metadata is provider-specific. [modelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/model-preferences.html) Link copied to clipboard val [modelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/model-preferences.html) : [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ? The server's preferences for which model to select. The client MAY ignore these preferences and choose any model. [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/stop-sequences.html) Link copied to clipboard val [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/stop-sequences.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional list of sequences that will stop generation if encountered. [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/system-prompt.html) Link copied to clipboard val [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/system-prompt.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An optional system prompt the server wants to use for sampling. The client MAY modify or omit this prompt. [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/temperature.html) Link copied to clipboard val [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/temperature.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? Optional temperature parameter for sampling (typically 0.0-2.0). Higher values make output more random, lower values make it more deterministic. --- # CreateMessageRequest CreateMessageRequest ==================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) (val params: [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) ) : [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.kt#L106) ) A request from the server to sample an LLM via the client. The client has full discretion over which model to select. The client should also inform the user before beginning sampling, to allow them to inspect the request (human in the loop) and decide whether to approve it. **Important:** This is a request from **server to client**, not client to server. The server is asking the client to use its LLM to generate a completion. **Human-in-the-loop:** Clients should: 1. Show the sampling request to the user before executing it 2. Allow the user to approve or reject the request 3. Show the generated response to the user before sending it back to the server MembersMembers & Extensions Constructors ------------ [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/-create-message-request.html) Link copied to clipboard constructor(params: [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) ) Properties ---------- [includeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/include-context.html) Link copied to clipboard val [includeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/include-context.html) : [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? A request to include context from one or more MCP servers (including the caller), to be attached to the prompt. [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/max-tokens.html) Link copied to clipboard val [maxTokens](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/max-tokens.html) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) The requested maximum number of tokens to sample (to prevent runaway completions). [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/messages.html) Link copied to clipboard val [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/messages.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \> The messages to use as context for sampling. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/metadata.html) Link copied to clipboard val [metadata](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/metadata.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Metadata to pass through to the LLM provider. The format of this metadata is provider-specific. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [modelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/model-preferences.html) Link copied to clipboard val [modelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/model-preferences.html) : [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ? The server's preferences for which model to select. [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/params.html) : [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) The parameters for the sampling request, including messages and model preferences. [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/stop-sequences.html) Link copied to clipboard val [stopSequences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/stop-sequences.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? List of sequences that will stop generation if encountered. [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/system-prompt.html) Link copied to clipboard val [systemPrompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/system-prompt.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An optional system prompt the server wants to use for sampling. [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/temperature.html) Link copied to clipboard val [temperature](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/temperature.html) : [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? Temperature parameter for sampling (typically 0.0-2.0). Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # CustomRequest CustomRequest ============= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) open class [CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , val params: [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ?) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/request.kt#L57) ) A custom request with a specified method. MembersMembers & Extensions Constructors ------------ [CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/-custom-request.html) Link copied to clipboard constructor(method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , params: [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ?) Properties ---------- [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/method.html) Link copied to clipboard open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/params.html) : [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ? Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # CustomNotification CustomNotification ================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CustomNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) , [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L78) ) Represents a custom notification method that is not part of the core MCP specification. The MCP protocol allows implementations to define custom methods for extending functionality. This class captures such custom notifications while preserving all their data. MembersMembers & Extensions Constructors ------------ [CustomNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/-custom-notification.html) Link copied to clipboard constructor(method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) Properties ---------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/method.html) Link copied to clipboard open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) The custom method name. By convention, custom methods often contain organization-specific prefixes (e.g., "mycompany/custom\_event"). [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/params.html) : [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? Raw JSON parameters for the custom notification, if present. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. --- # ElicitRequestedSchemaBuilder ElicitRequestedSchemaBuilder ============================ class [ElicitRequestedSchemaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.dsl.kt#L188) ) DSL builder for constructing [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) instances. Defines the JSON Schema structure for data to be collected from the user. Only supports top-level primitive properties. Required -------- * [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/properties.html) - Schema definitions for each field Optional -------- * [required](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/required.html) - List of required property names Example: requestedSchema { properties { put("username", JsonObject(mapOf( "type" to JsonPrimitive("string"), "description" to JsonPrimitive("Your username") ))) } required = listOf("username")} Content copied to clipboard #### See also [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) Members Properties ---------- [required](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/required.html) Link copied to clipboard var [required](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/required.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? List of required property names. If null, all fields are optional. Functions --------- [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/properties.html) Link copied to clipboard fun [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/properties.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets the schema properties using a DSL builder. fun [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/properties.html) (properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) Sets the schema properties directly. --- # RequestedSchema RequestedSchema =============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) (val properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) , val required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt#L75) ) A restricted JSON Schema for elicitation requests. Only supports top-level primitive properties without nesting. Each property represents a field in the form or dialog presented to the user. Members Constructors ------------ [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/-requested-schema.html) Link copied to clipboard constructor(properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) , required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null) Properties ---------- [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/properties.html) Link copied to clipboard val [properties](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/properties.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) A map of property names to their schema definitions. Each property must be a primitive type (string, number, boolean). [required](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/required.html) Link copied to clipboard val [required](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/required.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional list of property names that must be provided by the user. If omitted, all fields are considered optional. [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/type.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Always "object" for elicitation schemas. --- # ElicitRequestBuilder ElicitRequestBuilder ==================== class [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.dsl.kt#L84) ) DSL builder for constructing [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) instances. This builder is used to create requests that prompt users for structured input through forms or dialogs presented by the client. Required -------- * [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/message.html) - The message to present to the user explaining what is being requested * [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/requested-schema.html) - Schema defining the structure of the data to collect Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request #### See also [buildElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-elicit-request.html) [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) Members Properties ---------- [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/message.html) Link copied to clipboard var [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/message.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The message to present to the user. This should clearly explain what information is being requested and why. This is a required field. Functions --------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/requested-schema.html) Link copied to clipboard fun [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/requested-schema.html) (schema: [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) ) Sets the requested schema directly. fun [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/requested-schema.html) (block: [ElicitRequestedSchemaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets the requested schema using a DSL builder. --- # Action Action ====== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) \> ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt#L116) ) The user's response action to an elicitation request. MembersEntries Entries ------- [Accept](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-accept/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "accept") [Accept](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-accept/index.html) User submitted the form/confirmed the action [Decline](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-decline/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "decline") [Decline](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-decline/index.html) User explicitly declined the action [Cancel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-cancel/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "cancel") [Cancel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-cancel/index.html) User dismissed without making an explicit choice Properties ---------- [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/entries.html) Link copied to clipboard val [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/entries.html) : [EnumEntries](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html) <[ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) \> Returns a representation of an immutable list of all enum entries, in the order they're declared. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) Functions --------- [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/value-of.html) Link copied to clipboard fun [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/value-of.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/values.html) Link copied to clipboard fun [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/values.html) (): [Array](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html) <[ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) \> Returns an array containing the constants of this enum type, in the order they're declared. --- # ElicitRequestParams ElicitRequestParams =================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) (val message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val requestedSchema: [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt#L55) ) Parameters for an elicitation/create request. Members Constructors ------------ [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-elicit-request-params.html) Link copied to clipboard constructor(message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , requestedSchema: [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) , meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Types ----- [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) (val properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) , val required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null) A restricted JSON Schema for elicitation requests. Properties ---------- [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/message.html) Link copied to clipboard val [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/message.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The message to present to the user. This should clearly explain what information is being requested and why. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Optional metadata for this request. May include a progressToken for out-of-band progress notifications. [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/requested-schema.html) Link copied to clipboard val [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/requested-schema.html) : [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) A restricted subset of JSON Schema defining the structure of the requested data. Only top-level properties are allowed, without nesting. --- # EmptyJsonObject EmptyJsonObject =============== val [EmptyJsonObject](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-json-object.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonUtils.kt#L14) ) --- # error error ===== fun ERROR CLASS: Symbol not found for CallToolResult.Companion.[error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/error.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/tools.kt#L23) ) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/error.html) , with `isError` being true. --- # ElicitRequest ElicitRequest ============= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) (val params: [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) ) : [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt#L19) ) A request from the server to elicit additional information from the user via the client. This request type allows servers to prompt users for structured input through forms or dialogs presented by the client. The server defines a schema for the requested data, and the client presents an appropriate UI to collect this information. MembersMembers & Extensions Constructors ------------ [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/-elicit-request.html) Link copied to clipboard constructor(params: [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) ) Properties ---------- [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/message.html) Link copied to clipboard val [message](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/message.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The message to present to the user. This should clearly explain what information is being requested and why. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/params.html) : [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) The elicitation parameters including the message and requested schema. [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/requested-schema.html) Link copied to clipboard val [requestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/requested-schema.html) : [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) A restricted subset of JSON Schema defining the structure of the requested data. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # fromJSON fromJSON ======== fun [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) .[fromJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/from-j-s-o-n.html) (): [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L55) ) Decodes a JSON-RPC request into a protocol-specific [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) . #### Return The decoded [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) --- # ElicitResult ElicitResult ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) (val action: [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) , val content: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/elicitation.kt#L95) ) The client's response to an [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) . Represents the user's action and, if accepted, the submitted form data. #### Throws [IllegalArgumentException](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html) if content is provided with a non-accept action. Members Constructors ------------ [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-elicit-result.html) Link copied to clipboard constructor(action: [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) , content: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Types ----- [Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) \> The user's response action to an elicitation request. Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/action.html) Link copied to clipboard val [action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/action.html) : [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) The user action in response to the elicitation prompt. [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/content.html) Link copied to clipboard val [content](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/content.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? The submitted form data, only present when [action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/--root--.html) is [Action.Accept](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/-accept/index.html) . Contains values matching the requested schema, where keys correspond to property names and values are primitives (string, number, or boolean). [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. --- # EmptyResult EmptyResult =========== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) (val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) , [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/request.kt#L109) ) An empty result for a request containing optional metadata. #### Parameters meta Additional metadata for the response. Defaults to an empty JSON object. Members Constructors ------------ [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/-empty-result.html) Link copied to clipboard constructor(meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? --- # EmbeddedResource EmbeddedResource ================ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) (val resource: [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.kt#L155) ) The contents of a resource, embedded into a prompt or tool call result. It is up to the client how best to render embedded resources for the benefit of the LLM and/or the user. Members Constructors ------------ [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/-embedded-resource.html) Link copied to clipboard constructor(resource: [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) , annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/annotations.html) Link copied to clipboard val [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/annotations.html) : [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? Optional annotations for the client. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions. [resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/resource.html) Link copied to clipboard val [resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/resource.html) : [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) The resource contents. [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/type.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/type.html) : [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) --- # GetPromptRequestBuilder GetPromptRequestBuilder ======================= class [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.dsl.kt#L64) ) DSL builder for constructing [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) instances. This builder retrieves a specific prompt by name, optionally with arguments. Required -------- * [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/name.html) - The name of the prompt to retrieve Optional -------- * [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/arguments.html) - Arguments to pass to the prompt * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request #### See also [buildGetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-get-prompt-request.html) [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) Members Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/arguments.html) Link copied to clipboard var [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/arguments.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional arguments to pass to the prompt. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/name.html) Link copied to clipboard var [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The name of the prompt to retrieve. This is a required field. Functions --------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. --- # GetPromptRequestParams GetPromptRequestParams ====================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.kt#L162) ) Parameters for a prompts/get request. Members Constructors ------------ [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/-get-prompt-request-params.html) Link copied to clipboard constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/arguments.html) Link copied to clipboard val [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/arguments.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional arguments to use for templating the prompt. Keys are argument names, values are the argument values to substitute. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Optional metadata for this request. May include a progressToken for out-of-band progress notifications. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the prompt or prompt template to retrieve. --- # Theme Theme ===== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) \> ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/common.kt#L99) ) The theme context for which an icon is designed. MembersEntries Entries ------- [Light](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-light/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "light") [Light](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-light/index.html) Icon designed for use with a light background [Dark](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-dark/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "dark") [Dark](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-dark/index.html) Icon designed for use with a dark background Properties ---------- [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/entries.html) Link copied to clipboard val [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/entries.html) : [EnumEntries](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html) <[Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) \> Returns a representation of an immutable list of all enum entries, in the order they're declared. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) Functions --------- [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/value-of.html) Link copied to clipboard fun [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/value-of.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/values.html) Link copied to clipboard fun [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/values.html) (): [Array](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html) <[Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) \> Returns an array containing the constants of this enum type, in the order they're declared. --- # GetPromptResult GetPromptResult =============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) (val messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) \>, val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.kt#L181) ) The server's response to a [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) from the client. Contains the prompt's messages and optional description. If the prompt was a template, the messages will have arguments already substituted. Members Constructors ------------ [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/-get-prompt-result.html) Link copied to clipboard constructor(messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) \>, description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [description](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/description.html) Link copied to clipboard val [description](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/description.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An optional description for the prompt, explaining its purpose or usage. [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/messages.html) Link copied to clipboard val [messages](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/messages.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) \> The list of messages that make up this prompt. Each message has a role (e.g., "user", "assistant") and content. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. --- # GetPromptRequest GetPromptRequest ================ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) (val params: [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.kt#L112) ) Used by the client to get a prompt provided by the server. Prompts can be static text or templates that accept arguments. When arguments are provided, the server will substitute them into the prompt template before returning the result. MembersMembers & Extensions Constructors ------------ [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/-get-prompt-request.html) Link copied to clipboard constructor(params: [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) ) constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/arguments.html) Link copied to clipboard val [arguments](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/arguments.html) : [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Arguments to use for templating the prompt. Keys are argument names, values are the argument values to substitute. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the prompt or prompt template to retrieve. [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/params.html) : [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) The parameters specifying which prompt to retrieve and any template arguments. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # Icon Icon ==== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) (val src: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val sizes: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val theme: [Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) ? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/common.kt#L86) ) An optionally sized icon that can be displayed in a user interface. Icons help clients provide visual branding and identification for MCP implementations. **Security considerations:** * Consumers SHOULD ensure URLs serving icons are from the same domain as the client/server or a trusted domain to prevent malicious content. * Consumers SHOULD take appropriate precautions when rendering SVGs as they can contain executable JavaScript. Consider sanitizing SVG content or rendering in isolated contexts. Members Constructors ------------ [Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-icon.html) Link copied to clipboard constructor(src: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, sizes: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, theme: [Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) ? = null) Types ----- [Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) \> The theme context for which an icon is designed. Properties ---------- [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/mime-type.html) Link copied to clipboard val [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional MIME type override if the source MIME type is missing or generic. For example, "image/png", "image/jpeg", or "image/svg+xml". Useful when the URL doesn't include a file extension or uses a generic MIME type. [sizes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/sizes.html) Link copied to clipboard val [sizes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/sizes.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? Optional array of strings that specify sizes at which the icon can be used. Each string should be in WxH format (e.g., "48x48", "96x96") or "any" for scalable formats like SVG. If not provided, the client should assume that the icon can be used at any size. [src](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/src.html) Link copied to clipboard val [src](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/src.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) A standard URI pointing to an icon resource. Maybe an HTTP/HTTPS URL or a data: URI with Base64-encoded image data. Example: "https://example.com/icon.png" or "data:image/png;base64,iVBORw0KG..." [theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/theme.html) Link copied to clipboard val [theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/theme.html) : [Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) ? Optional specifier for the theme this icon is designed for. [Theme.Light](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-light/index.html) indicates the icon is designed for a light background, [Theme.Dark](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/-dark/index.html) indicates the icon is designed for a dark background. If not provided, the client should assume the icon can be used with any theme. --- # None None ==== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "none") [None](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-none/index.html) Don't include any server context Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # ImageContentBuilder ImageContentBuilder =================== class [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) : [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.dsl.kt#L181) ) DSL builder for constructing [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) instances. Required -------- * [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/data.html) - The base64-encoded image data * [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/mime-type.html) - The MIME type of the image (e.g., "image/png", "image/jpeg") Optional -------- * [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) - Content annotations (inherited from [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ) * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) - Additional metadata (inherited from [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) ) Example usage in sampling messages: createMessageRequest { maxTokens = 100 messages { userImage { data = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAAB..." mimeType = "image/png" } }} Content copied to clipboard Example with annotations: userImage { data = base64EncodedImageData mimeType = "image/jpeg" annotations(Annotations(priority = 0.9))} Content copied to clipboard #### See also [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) Members Properties ---------- [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/data.html) Link copied to clipboard var [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/data.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The base64-encoded image data. This is a required field. [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/mime-type.html) Link copied to clipboard var [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The MIME type of the image (e.g., "image/png", "image/jpeg"). This is a required field. Functions --------- [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) Link copied to clipboard fun [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) (annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ) Sets optional annotations for the content. fun [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/annotations.html) (audience: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? = null, priority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, lastModified: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Sets optional annotations for the content with individual parameters. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/meta.html) (block: [JsonObjectBuilder](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets optional metadata for the content using a DSL builder. --- # Implementation Implementation ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val version: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val websiteUrl: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null)([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/capabilities.kt#L26) ) Describes an MCP (Model Context Protocol) implementation. This metadata helps clients identify and display information about servers or clients, including their name, version, and optional branding elements like icons and website links. Members Constructors ------------ [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/-implementation.html) Link copied to clipboard constructor(name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , version: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, websiteUrl: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null) Properties ---------- [icons](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/icons.html) Link copied to clipboard val [icons](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/icons.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? Optional set of sized icons that clients can display in their user interface. See [Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) for supported formats and requirements. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/name.html) Link copied to clipboard val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/name.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The programmatic identifier for this implementation. Intended for logical use and API identification. If [title](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/--root--.html) is not provided, this should be used as a fallback display name. [title](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/title.html) Link copied to clipboard val [title](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/title.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional human-readable display name for this implementation. Intended for UI and end-user contexts, optimized to be easily understood even by those unfamiliar with domain-specific terminology. If not provided, [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/--root--.html) should be used for display purposes. [version](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/version.html) Link copied to clipboard val [version](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The version string of this implementation (e.g., "1.0.0", "2.1.3-beta"). [websiteUrl](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/website-url.html) Link copied to clipboard val [websiteUrl](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/website-url.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional URL of the website for this implementation. Can be used to provide documentation, support, or additional information. --- # ImageContent ImageContent ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) (val data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/content.kt#L66) ) An image provided to or from an LLM. Members Constructors ------------ [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/-image-content.html) Link copied to clipboard constructor(data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/annotations.html) Link copied to clipboard val [annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/annotations.html) : [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? Optional annotations for the client. [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/data.html) Link copied to clipboard val [data](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/data.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The base64-encoded image data. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? property/parameter is reserved by MCP to allow clients and servers to attach additional metadata to their interactions. [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/mime-type.html) Link copied to clipboard val [mimeType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/mime-type.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The MIME type of the image. Different providers may support different image types. [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/type.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [type](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/type.html) : [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) --- # ThisServer ThisServer ========== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "thisServer") [ThisServer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-this-server/index.html) Include context only from the requesting server Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # IncludeContext IncludeContext ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) \> ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/sampling.kt#L208) ) Specifies which MCP server context to include in the sampling request. MembersEntries Entries ------- [None](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-none/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "none") [None](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-none/index.html) Don't include any server context [ThisServer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-this-server/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "thisServer") [ThisServer](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-this-server/index.html) Include context only from the requesting server [AllServers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "allServers") [AllServers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html) Include context from all connected MCP servers Properties ---------- [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/entries.html) Link copied to clipboard val [entries](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/entries.html) : [EnumEntries](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html) <[IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) \> Returns a representation of an immutable list of all enum entries, in the order they're declared. [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) Functions --------- [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/value-of.html) Link copied to clipboard fun [valueOf](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/value-of.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.) [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/values.html) Link copied to clipboard fun [values](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/values.html) (): [Array](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html) <[IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) \> Returns an array containing the constants of this enum type, in the order they're declared. --- # AllServers AllServers ========== @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "allServers") [AllServers](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html) Include context from all connected MCP servers Members Properties ---------- [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) Link copied to clipboard expect val [name](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-372974862%2FProperties%2F514737815) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) Link copied to clipboard expect val [ordinal](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/-all-servers/index.html#-739389684%2FProperties%2F514737815) : [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) --- # InitializedNotification InitializedNotification ======================= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/notification.kt#L158) ) This notification is sent from the client to the server after initialization has finished. The client sends this after receiving the [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) to signal that it is ready to begin normal operations. MembersMembers & Extensions Constructors ------------ [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/-initialized-notification.html) Link copied to clipboard constructor(params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) Properties ---------- [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/params.html) : [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? Optional notification parameters containing metadata. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-notification/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-notification/index.html) fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. --- # InitializeRequest InitializeRequest ================= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) (val params: [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.kt#L20) ) This request is sent from the client to the server when it first connects, asking it to begin initialization. The initialize request is the first message exchanged in the MCP protocol handshake. It allows the client to communicate its capabilities and protocol version to the server, and receive the server's capabilities in response. MembersMembers & Extensions Constructors ------------ [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/-initialize-request.html) Link copied to clipboard constructor(params: [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) ) Properties ---------- [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/capabilities.html) Link copied to clipboard val [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/capabilities.html) : [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) The capabilities that this client supports. Describes which optional features the client has implemented. [clientInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/client-info.html) Link copied to clipboard val [clientInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/client-info.html) : [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) Information about the client implementation, including name, version, and branding. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/meta.html) Link copied to clipboard val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/params.html) : [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) The initialization parameters including protocol version and client capabilities. [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/protocol-version.html) Link copied to clipboard val [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/protocol-version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The latest version of the Model Context Protocol that the client supports. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # InitializeRequestBuilder InitializeRequestBuilder ======================== class [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.dsl.kt#L80) ) DSL builder for constructing [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) instances. This builder creates the initial handshake request to establish an MCP protocol connection between client and server. Required -------- * [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/protocol-version.html) - MCP protocol version string * [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) - Client capabilities configuration * [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/info.html) - Client implementation details Optional -------- * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request #### See also [buildInitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-initialize-request.html) [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) Members Properties ---------- [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/protocol-version.html) Link copied to clipboard var [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/protocol-version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? The MCP protocol version. This is a required field. Functions --------- [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) Link copied to clipboard fun [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) (value: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) ) Sets client capabilities directly. fun [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/capabilities.html) (block: [ClientCapabilitiesBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets client capabilities using a DSL builder. [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/info.html) Link copied to clipboard fun [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/info.html) (value: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) ) Sets client implementation info directly. fun [info](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/info.html) (name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , version: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, websiteUrl: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null) Sets client implementation info using individual parameters. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. --- # io.modelcontextprotocol.kotlin.sdk.types Package-level declarations ========================== TypesFunctionsProperties Types ----- [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) (val audience: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \>? = null, val priority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val lastModified: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Optional annotations for the client. [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) (val data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) Audio provided to or from an LLM. [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) Link copied to clipboard class [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) : [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) DSL builder for constructing [AudioContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content/index.html) instances. [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) (val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Base parameters for notifications that only contain metadata. [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) (val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) [BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [BlobResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-blob-resource-contents/index.html) (val blob: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) The contents of a specific resource or sub-resource. [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) (val params: [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Used by the client to invoke a tool provided by the server. [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) Link copied to clipboard class [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) instances. [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-params/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val arguments: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a tools/call request. [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) (val content: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) \>, val isError: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val structuredContent: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) The server's response to a [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) . [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CancelledNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification/index.html) (val params: [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) ) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) , [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) This notification can be sent by either side to indicate that it is cancelling a previously-issued request. [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CancelledNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-cancelled-notification-params/index.html) (val requestId: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , val reason: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Parameters for a notifications/cancelled notification. [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) (val sampling: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val roots: [ClientCapabilities.Roots](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/-roots/index.html) ? = null, val elicitation: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Capabilities that a client may support. [ClientCapabilitiesBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/index.html) Link copied to clipboard class [ClientCapabilitiesBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities-builder/index.html) DSL builder for constructing [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) instances. [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ClientNotificationPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification-polymorphic-serializer/index.html) ) sealed interface [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) : [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) Represents a notification sent by the client. [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Represents a request sent by the client. [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ClientResultPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result-polymorphic-serializer/index.html) ) sealed interface [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) (val params: [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) A request from the client to the server to ask for completion options. [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) Link copied to clipboard class [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) instances. [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/index.html) (val argument: [CompleteRequestParams.Argument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-argument/index.html) , val ref: [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) , val context: [CompleteRequestParams.Context](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-params/-context/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for the completion request. [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CompleteResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/index.html) (val completion: [CompleteResult.Completion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-result/-completion/index.html) , val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) The server's response to a [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) . [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ContentBlockPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block-polymorphic-serializer/index.html) ) sealed interface [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[ContentTypes](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-types/index.html) \> [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) (val params: [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) ) : [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) A request from the server to sample an LLM via the client. [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) Link copied to clipboard class [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) instances. [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-params/index.html) (val maxTokens: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) , val messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) \>, val modelPreferences: [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) ? = null, val systemPrompt: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val includeContext: [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) ? = null, val temperature: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val stopSequences: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val metadata: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a sampling/createMessage request. [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CreateMessageResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-result/index.html) (val role: [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) , val content: [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) , val model: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val stopReason: [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) The client's response to a [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) from the server. [CustomNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [CustomNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-notification/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) , [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) Represents a custom notification method that is not part of the core MCP specification. [CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) open class [CustomRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-custom-request/index.html) (val method: [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) , val params: [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ?) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) A custom request with a specified method. [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) (val params: [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) ) : [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) A request from the server to elicit additional information from the user via the client. [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) Link copied to clipboard class [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) instances. [ElicitRequestedSchemaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/index.html) Link copied to clipboard class [ElicitRequestedSchemaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-requested-schema-builder/index.html) DSL builder for constructing [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) instances. [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/index.html) (val message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val requestedSchema: [ElicitRequestParams.RequestedSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-params/-requested-schema/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for an elicitation/create request. [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ElicitResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/index.html) (val action: [ElicitResult.Action](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-result/-action/index.html) , val content: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) The client's response to an [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) . [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [EmbeddedResource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-embedded-resource/index.html) (val resource: [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) The contents of a resource, embedded into a prompt or tool call result. [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [EmptyResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-result/index.html) (val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) , [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) An empty result for a request containing optional metadata. [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) (val params: [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Used by the client to get a prompt provided by the server. [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) Link copied to clipboard class [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) instances. [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-params/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val arguments: [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a prompts/get request. [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [GetPromptResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-result/index.html) (val messages: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) \>, val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) The server's response to a [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) from the client. [Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) (val src: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val sizes: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null, val theme: [Icon.Theme](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/-theme/index.html) ? = null) An optionally sized icon that can be displayed in a user interface. [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) (val data: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) An image provided to or from an LLM. [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) Link copied to clipboard class [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) : [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) DSL builder for constructing [ImageContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content/index.html) instances. [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val version: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val websiteUrl: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null) Describes an MCP (Model Context Protocol) implementation. [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[IncludeContext](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-include-context/index.html) \> Specifies which MCP server context to include in the sampling request. [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialized-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) This notification is sent from the client to the server after initialization has finished. [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) (val params: [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) This request is sent from the client to the server when it first connects, asking it to begin initialization. [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) Link copied to clipboard class [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) instances. [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) (val protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) , val clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for an initialize request. [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) (val protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = LATEST\_PROTOCOL\_VERSION, val capabilities: [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) , val serverInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , val instructions: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) After receiving an [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) from the client, the server sends this response. [JSONRPCEmptyMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data object [JSONRPCEmptyMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/index.html) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) (val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ?, val error: [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) ) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) A response to a request that indicates an error occurred. [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [JSONRPCMessagePolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message-polymorphic-serializer/index.html) ) sealed interface [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) Base interface for all JSON-RPC 2.0 messages. [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) (val method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) A notification which does not expect a response. [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html)  @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) = RequestId(Uuid.random().toHexString()), val method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) A request that expects a response. [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) (val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , val result: [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) = EmptyResult()) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) A successful (non-error) response to a request. [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Sent from the client to request a list of prompts and prompt templates the server has. [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) Link copied to clipboard class [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) : [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) DSL builder for constructing [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) instances. [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) (val prompts: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) \>, val nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) , [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) The server's response to a [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) from the client. [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Sent from the client to request a list of resources the server has. [ListResourcesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request-builder/index.html) Link copied to clipboard class [ListResourcesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request-builder/index.html) : [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) DSL builder for constructing [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) instances. [ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListResourcesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-result/index.html) (val resources: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource/index.html) \>, val nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) , [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) The server's response to a [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) from the client. [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Sent from the client to request a list of resource templates the server has. [ListResourceTemplatesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request-builder/index.html) Link copied to clipboard class [ListResourceTemplatesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request-builder/index.html) : [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) DSL builder for constructing [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) instances. [ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListResourceTemplatesResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-result/index.html) (val resourceTemplates: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template/index.html) \>, val nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) , [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) The server's response to a [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) from the client. [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) (val params: [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ? = null) : [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) Sent from the server to request a list of root URIs from the client. [ListRootsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request-builder/index.html) Link copied to clipboard class [ListRootsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) instances. [ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListRootsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-result/index.html) (val roots: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) \>, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ClientResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-result/index.html) The client's response to a [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) from the server. [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Sent from the client to request a list of tools the server has. [ListToolsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request-builder/index.html) Link copied to clipboard class [ListToolsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request-builder/index.html) : [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) DSL builder for constructing [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) instances. [ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListToolsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-result/index.html) (val tools: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool/index.html) \>, val nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) , [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) The server's response to a [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) from the client. [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) \> The severity of a log message. [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [LoggingMessageNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification/index.html) (val params: [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) ) : [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) A notification of a log message passed from server to client. [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [LoggingMessageNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-message-notification-params/index.html) (val level: [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) , val data: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) , val logger: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Parameters for a notifications/message notification. [McpDsl](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-dsl/index.html) Link copied to clipboard @[DslMarker](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-dsl-marker/index.html) annotation class [McpDsl](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-dsl/index.html) DSL marker annotation for MCP builder classes. [McpException](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-exception/index.html) Link copied to clipboard class [McpException](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-exception/index.html)  @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) , message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val data: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null, cause: [Throwable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-throwable/index.html) ? = null) : [Exception](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-exception/index.html) Represents an error specific to the MCP protocol. [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [MediaContentPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-polymorphic-serializer/index.html) ) sealed interface [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) : [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) Link copied to clipboard abstract class [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) Base DSL builder for constructing [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) instances. [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [MethodSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method-serializer/index.html) ) sealed interface [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) Represents a method in the protocol, which can be predefined or custom. [ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-hint/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-hint/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?) Hints to use for model selection. [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ModelPreferences](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-preferences/index.html) (val hints: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ModelHint](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-model-hint/index.html) \>? = null, val costPriority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val speedPriority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val intelligencePriority: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null) The server's preferences for model selection, requested of the client during sampling. [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [NotificationPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-polymorphic-serializer/index.html) ) sealed interface [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) Represents a notification in the protocol. [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Interface for notification parameter types. [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Represents a request supporting pagination. [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) Link copied to clipboard abstract class [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) Base DSL builder for constructing paginated MCP request instances. [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) (val cursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Common parameters for paginated requests. [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) Represents a request supporting pagination. [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) (val params: [BaseRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) [PingRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request-builder/index.html) Link copied to clipboard class [PingRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) instances. [Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) class [Progress](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress/index.html) (val progress: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) , val total: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Represents a progress notification. [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ProgressNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification/index.html) (val params: [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) ) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) , [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) An out-of-band notification used to inform the receiver of a progress update for a long-running request. [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ProgressNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-notification-params/index.html) (val progressToken: [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) , val progress: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) , val total: [Double](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-double/index.html) ? = null, val message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Parameters for a notifications/progress notification. [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) Link copied to clipboard typealias [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) = [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) A progress token, used to associate progress notifications with the original request. [Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val arguments: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-argument/index.html) \>? = null, val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) A prompt or prompt template that the server offers. [PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-argument/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PromptArgument](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-argument/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val required: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) Describes an argument that a prompt can accept. [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-list-changed-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PromptListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-list-changed-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) An optional notification from the server to the client, informing it that the list of prompts it offers has changed. [PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PromptMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-message/index.html) (val role: [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) , val content: [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) ) Describes a message returned as part of a prompt. [PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-reference/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [PromptReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt-reference/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null) : [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) Identifies a prompt by reference. [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) (val params: [ReadResourceRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Sent from the client to the server to read a specific resource URI. [ReadResourceRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/index.html) Link copied to clipboard class [ReadResourceRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) instances. [ReadResourceRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ReadResourceRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-params/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a resources/read request. [ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ReadResourceResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-result/index.html) (val contents: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) \>, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) The server's response to a [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) from the client. [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ReferencePolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference-polymorphic-serializer/index.html) ) sealed interface [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) Base interface for reference types in the protocol. [ReferenceType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference-type/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [ReferenceType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference-type/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[ReferenceType](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference-type/index.html) \> [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [RequestPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-polymorphic-serializer/index.html) ) sealed interface [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Represents a request in the protocol. [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) Link copied to clipboard abstract class [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) Base DSL builder for constructing MCP request instances. [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [RequestIdPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id-polymorphic-serializer/index.html) ) sealed interface [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) A uniquely identifying ID for a request in JSON-RPC. [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) Link copied to clipboard @[JvmInline](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-inline/index.html) @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) value class [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) (val json: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ) [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) Link copied to clipboard class [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) DSL builder for constructing [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) instances. [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [RequestResultPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result-polymorphic-serializer/index.html) ) sealed interface [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Represents the result of a request, including additional metadata. [Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Resource](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val size: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) ? = null, val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ResourceLike](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-like/index.html) A known resource that the server is capable of reading. [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ResourceContentsPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents-polymorphic-serializer/index.html) ) sealed interface [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) The contents of a specific resource or sub-resource. [ResourceLike](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-like/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [ResourceLike](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-like/index.html) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) [ResourceLink](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-link/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceLink](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-link/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val size: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) ? = null, val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ContentBlock](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-content-block/index.html) , [ResourceLike](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-like/index.html) A resource that the server is capable of reading, included in a prompt or tool call result. [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-list-changed-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-list-changed-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) An optional notification from the server to the client, informing it that the list of resources it can read from has changed. [ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceTemplate](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template/index.html) (val uriTemplate: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) A template description for resources available on the server. [ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template-reference/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceTemplateReference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-template-reference/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) : [Reference](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-reference/index.html) A reference to a resource or resource template definition. [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceUpdatedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification/index.html) (val params: [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) ) : [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) A notification from the server to the client, informing it that a resource has changed and may need to be read again. [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ResourceUpdatedNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-updated-notification-params/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [NotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification-params/index.html) Parameters for a notifications/resources/updated notification. [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) enum [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) : [Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html) <[Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) \> The sender or recipient of messages and data in a conversation. [Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Root](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-root/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Represents a root directory or file that the server can operate on. [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-roots-list-changed-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [RootsListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-roots-list-changed-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ClientNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-notification/index.html) A notification from the client to the server, informing it that the list of roots has changed. [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) (val code: [Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html) , val message: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val data: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) Error information for a failed JSON-RPC request. [SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) (val role: [Role](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-role/index.html) , val content: [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) ) Describes a message issued to or received from an LLM API. [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) Link copied to clipboard class [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) DSL builder for constructing lists of [SamplingMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message/index.html) instances. [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) (val tools: [ServerCapabilities.Tools](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-tools/index.html) ? = null, val resources: [ServerCapabilities.Resources](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-resources/index.html) ? = null, val prompts: [ServerCapabilities.Prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/-prompts/index.html) ? = null, val logging: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val completions: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val experimental: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Capabilities that a server may support. [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ServerNotificationPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification-polymorphic-serializer/index.html) ) sealed interface [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) : [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) Represents a notification sent by the server. [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [ServerRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-request/index.html) : [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Represents a request sent by the server. [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [ServerResultPolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result-polymorphic-serializer/index.html) ) sealed interface [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) (val params: [SetLevelRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) A request from the client to the server to enable or adjust logging. [SetLevelRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/index.html) Link copied to clipboard class [SetLevelRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) instances. [SetLevelRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [SetLevelRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-params/index.html) (val level: [LoggingLevel](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-logging-level/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a logging/setLevel request. [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) Link copied to clipboard @[JvmInline](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-inline/index.html) @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) value class [StopReason](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-stop-reason/index.html) (val value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) (val params: [SubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Sent from the client to request resources/updated notifications from the server whenever a particular resource changes. [SubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/index.html) Link copied to clipboard class [SubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) instances. [SubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [SubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-params/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a resources/subscribe request. [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) (val text: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val annotations: [Annotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-annotations/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [MediaContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content/index.html) Text provided to or from an LLM. [TextContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content-builder/index.html) Link copied to clipboard class [TextContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content-builder/index.html) : [MediaContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-media-content-builder/index.html) DSL builder for constructing [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) instances. [TextResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-resource-contents/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [TextResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-resource-contents/index.html) (val text: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) Represents the text contents of a resource. [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [Tool](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool/index.html) (val name: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val inputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) , val description: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val outputSchema: [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) ? = null, val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val annotations: [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) ? = null, val icons: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Icon](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-icon/index.html) \>? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Definition for a tool the client can call. [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ToolAnnotations](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-annotations/index.html) (val title: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val readOnlyHint: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val destructiveHint: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val idempotentHint: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null, val openWorldHint: [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html) ? = null) Additional properties describing a Tool to clients. [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-list-changed-notification/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ToolListChangedNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-list-changed-notification/index.html) (val params: [BaseNotificationParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-base-notification-params/index.html) ? = null) : [ServerNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-notification/index.html) An optional notification from the server to the client, informing it that the list of tools it offers has changed. [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ToolSchema](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-tool-schema/index.html) (val properties: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null, val required: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \>? = null) A JSON Schema for tool input or output parameters. [UnknownResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unknown-resource-contents/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [UnknownResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unknown-resource-contents/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val mimeType: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ResourceContents](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-resource-contents/index.html) Represents resource contents with unknown or unspecified data. [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) (val params: [UnsubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-params/index.html) ) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) Sent from the client to request cancellation of resources/updated notifications from the server. [UnsubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/index.html) Link copied to clipboard class [UnsubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/index.html) : [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) DSL builder for constructing [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) instances. [UnsubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-params/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [UnsubscribeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-params/index.html) (val uri: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) Parameters for a resources/unsubscribe request. [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Link copied to clipboard @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) sealed interface [WithMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/index.html) Represents an entity that includes additional metadata in its responses. Properties ---------- [DEFAULT\_NEGOTIATED\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-d-e-f-a-u-l-t_-n-e-g-o-t-i-a-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [DEFAULT\_NEGOTIATED\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-d-e-f-a-u-l-t_-n-e-g-o-t-i-a-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [EmptyJsonObject](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-json-object.html) Link copied to clipboard val [EmptyJsonObject](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-empty-json-object.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [JSONRPC\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [JSONRPC\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [LATEST\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) Link copied to clipboard const val [LATEST\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) [McpJson](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-json.html) Link copied to clipboard val [McpJson](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-mcp-json.html) : [Json](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json/index.html) [SUPPORTED\_PROTOCOL\_VERSIONS](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-s-u-p-p-o-r-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n-s.html) Link copied to clipboard val [SUPPORTED\_PROTOCOL\_VERSIONS](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-s-u-p-p-o-r-t-e-d_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n-s.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) \> Functions --------- [assistant](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistant](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant.html) (block: () -> [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Adds an assistant message with simple text content. [assistantAudio](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-audio.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantAudio](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-audio.html) (block: [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds an assistant message with audio content. [assistantImage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-image.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantImage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-image.html) (block: [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds an assistant message with image content. [assistantText](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-text.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[assistantText](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/assistant-text.html) (block: [TextContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds an assistant message with text content using a DSL builder. [buildCallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-call-tool-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-call-tool-request.html) (block: [CallToolRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) Creates a [CallToolRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-request/index.html) using a type-safe DSL builder. [buildCompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-complete-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-complete-request.html) (block: [CompleteRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) Creates a [CompleteRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-complete-request/index.html) using a type-safe DSL builder. [buildCreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-create-message-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildCreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-create-message-request.html) (block: [CreateMessageRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) Creates a [CreateMessageRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-create-message-request/index.html) using a type-safe DSL builder. [buildElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-elicit-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-elicit-request.html) (block: [ElicitRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) Creates an [ElicitRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-elicit-request/index.html) using a type-safe DSL builder. [buildGetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-get-prompt-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildGetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-get-prompt-request.html) (block: [GetPromptRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) Creates a [GetPromptRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-get-prompt-request/index.html) using a type-safe DSL builder. [buildInitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-initialize-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildInitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-initialize-request.html) (block: [InitializeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) Creates an [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) using a type-safe DSL builder. [buildListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-prompts-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-prompts-request.html) (block: [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) Creates a [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) using a type-safe DSL builder. [buildListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resources-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resources-request.html) (block: [ListResourcesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) Creates a [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) using a type-safe DSL builder. [buildListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resource-templates-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-resource-templates-request.html) (block: [ListResourceTemplatesRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) Creates a [ListResourceTemplatesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resource-templates-request/index.html) using a type-safe DSL builder. [buildListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-roots-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-roots-request.html) (block: [ListRootsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) Creates a [ListRootsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-roots-request/index.html) using a type-safe DSL builder. [buildListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-tools-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-tools-request.html) (block: [ListToolsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) Creates a [ListToolsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-tools-request/index.html) using a type-safe DSL builder. [buildPingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-ping-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildPingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-ping-request.html) (block: [PingRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) Creates a [PingRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-ping-request/index.html) using a type-safe DSL builder. [buildReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-read-resource-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-read-resource-request.html) (block: [ReadResourceRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) Creates a [ReadResourceRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-read-resource-request/index.html) using a type-safe DSL builder. [buildSetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-set-level-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildSetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-set-level-request.html) (block: [SetLevelRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) Creates a [SetLevelRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-set-level-request/index.html) using a type-safe DSL builder. [buildSubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-subscribe-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildSubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-subscribe-request.html) (block: [SubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) Creates a [SubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-subscribe-request/index.html) using a type-safe DSL builder. [buildUnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-unsubscribe-request.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) inline fun [buildUnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-unsubscribe-request.html) (block: [UnsubscribeRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ): [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) Creates an [UnsubscribeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-unsubscribe-request/index.html) using a type-safe DSL builder. [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/error.html) Link copied to clipboard fun ERROR CLASS: Symbol not found for CallToolResult.Companion.[error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/error.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/error.html) , with `isError` being true. [fromJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/from-j-s-o-n.html) Link copied to clipboard fun [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) .[fromJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/from-j-s-o-n.html) (): [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Decodes a JSON-RPC request into a protocol-specific [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) . [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token.html) Link copied to clipboard fun [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token.html) (value: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) ): [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) fun [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [ProgressToken](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-progress-token/index.html) [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id.html) Link copied to clipboard fun [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id.html) (value: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) ): [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) fun [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id.html) (value: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ): [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) [success](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/success.html) Link copied to clipboard fun ERROR CLASS: Symbol not found for CallToolResult.Companion.[success](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/success.html) (content: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null): [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) Creates a [CallToolResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-call-tool-result/index.html) with single [TextContent](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content/index.html) and [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/success.html) . [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) Link copied to clipboard fun [Notification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-notification/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) Converts the notification to a JSON-RPC notification. fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. [toJson](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-json.html) Link copied to clipboard fun [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) ?\>.[toJson](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-json.html) (): [Map](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html) <[String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) \> [user](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[user](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user.html) (block: () -> [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ) Adds a user message with simple text content. [userAudio](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-audio.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[userAudio](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-audio.html) (block: [AudioContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-audio-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds a user message with audio content. [userImage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-image.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[userImage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-image.html) (block: [ImageContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-image-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds a user message with image content. [userText](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-text.html) Link copied to clipboard @[ExperimentalMcpApi](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-experimental-mcp-api/index.html) fun [SamplingMessageBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-sampling-message-builder/index.html) .[userText](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/user-text.html) (block: [TextContentBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-text-content-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Adds a user message with text content using a DSL builder. --- # InitializeRequestParams InitializeRequestParams ======================= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/index.html) (val protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) , val clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , val meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) : [RequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-params/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.kt#L63) ) Parameters for an initialize request. Members Constructors ------------ [InitializeRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/-initialize-request-params.html) Link copied to clipboard constructor(protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , capabilities: [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) , clientInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Properties ---------- [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/capabilities.html) Link copied to clipboard val [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/capabilities.html) : [ClientCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-capabilities/index.html) The capabilities that this client supports. Describes which optional features the client has implemented. [clientInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/client-info.html) Link copied to clipboard val [clientInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/client-info.html) : [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) Information about the client implementation, including name, version, and branding. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Optional metadata for this request. May include a progressToken for out-of-band progress notifications. [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/protocol-version.html) Link copied to clipboard val [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request-params/protocol-version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The latest version of the Model Context Protocol that the client supports. The client MAY decide to support older versions as well. The server will respond with its preferred version, which may differ. --- # JSONRPC_VERSION JSONRPC\_VERSION ================ const val [JSONRPC\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L17) ) --- # InitializeResult InitializeResult ================ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/index.html) (val protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = LATEST\_PROTOCOL\_VERSION, val capabilities: [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) , val serverInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , val instructions: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/initialize.kt#L91) ) After receiving an [InitializeRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-request/index.html) from the client, the server sends this response. The server communicates its chosen protocol version, capabilities, and optional instructions for how to effectively use its features. Members Constructors ------------ [InitializeResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/-initialize-result.html) Link copied to clipboard constructor(protocolVersion: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) = LATEST\_PROTOCOL\_VERSION, capabilities: [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) , serverInfo: [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) , instructions: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/capabilities.html) Link copied to clipboard val [capabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/capabilities.html) : [ServerCapabilities](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-capabilities/index.html) The capabilities that this server supports. Describes which optional features the server has implemented. [instructions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/instructions.html) Link copied to clipboard val [instructions](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/instructions.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional instructions describing how to use the server and its features. Clients can use this to improve the LLM's understanding of available tools, resources, etc. It can be thought of as a "hint" to the model. For example, this information MAY be added to the system prompt to help the LLM make better use of the server's capabilities. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/protocol-version.html) Link copied to clipboard val [protocolVersion](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/protocol-version.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The version of the Model Context Protocol that the server wants to use. This may not match the version that the client requested. If the client cannot support this version, it MUST disconnect. [serverInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/server-info.html) Link copied to clipboard val [serverInfo](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-initialize-result/server-info.html) : [Implementation](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-implementation/index.html) Information about the server implementation, including name, version, and branding. --- # JSONRPCEmptyMessage JSONRPCEmptyMessage =================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data object [JSONRPCEmptyMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/index.html) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L89) ) Members Properties ---------- [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/jsonrpc.html) Link copied to clipboard open override val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # JSONRPCError JSONRPCError ============ @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) (val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ?, val error: [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) ) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L205) ) A response to a request that indicates an error occurred. Sent in response to a [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) when the method execution fails. The [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/--root--.html) must match the [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/--root--.html) of the original request. Members Constructors ------------ [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/-j-s-o-n-r-p-c-error.html) Link copied to clipboard constructor(id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ?, error: [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) ) Properties ---------- [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/error.html) Link copied to clipboard val [error](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/error.html) : [RPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-r-p-c-error/index.html) Details about the error that occurred, including error code and message. [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/id.html) Link copied to clipboard val [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) ? The identifier from the original request. Used to match error responses to requests. [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/jsonrpc.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Always "2.0" to indicate JSON-RPC 2.0 protocol. --- # JSONRPCMessage JSONRPCMessage ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) (with = [JSONRPCMessagePolymorphicSerializer::class](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message-polymorphic-serializer/index.html) ) sealed interface [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L84) ) Base interface for all JSON-RPC 2.0 messages. All messages in the MCP protocol follow the JSON-RPC 2.0 specification. #### Inheritors [JSONRPCEmptyMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-empty-message/index.html) [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) Members Properties ---------- [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/jsonrpc.html) Link copied to clipboard abstract val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) --- # JSONRPCNotification JSONRPCNotification =================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/index.html) (val method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L165) ) A notification which does not expect a response. Notifications are fire-and-forget messages. They do not have an `id` and the recipient does not send any response (neither success nor error). Examples: progress updates, resource change notifications, log messages. Members Constructors ------------ [JSONRPCNotification](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/-j-s-o-n-r-p-c-notification.html) Link copied to clipboard constructor(method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) Properties ---------- [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/jsonrpc.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Always "2.0" to indicate JSON-RPC 2.0 protocol. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/method.html) Link copied to clipboard val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/method.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the notification method (e.g., "notifications/progress", "notifications/resources/updated"). [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/params.html) Link copied to clipboard val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-notification/params.html) : [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? Optional parameters for the notification. Structure depends on the specific method. --- # JSONRPCRequest JSONRPCRequest ============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html)  @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) = RequestId(Uuid.random().toHexString()), val method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , val params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L112) ) A request that expects a response. Requests are identified by a unique [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/--root--.html) and specify a [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/--root--.html) to invoke. The server or client (depending on a direction) must respond with either a [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) or [JSONRPCError](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-error/index.html) that has the same [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/--root--.html) . MembersMembers & Extensions Constructors ------------ [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/-j-s-o-n-r-p-c-request.html) Link copied to clipboard @[JvmOverloads](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/-jvm-overloads/index.html) constructor(id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) = RequestId(Uuid.random().toHexString()), method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) constructor(id: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) Secondary constructor for creating a `JSONRPCRequest` using a string-based ID. constructor(id: [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) , method: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) , params: [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? = null) Constructs a JSON-RPC request using a numerical ID, method name, and optional parameters. Properties ---------- [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/id.html) Link copied to clipboard val [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) A unique identifier for this request. The response will include the same ID. Can be a string or number. UUID string is used by default. [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/jsonrpc.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Always "2.0" to indicate JSON-RPC 2.0 protocol. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/method.html) Link copied to clipboard val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/method.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) The name of the method to invoke (e.g., "tools/list", "resources/read"). [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/params.html) Link copied to clipboard val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/params.html) : [JsonElement](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-element/index.html) ? Optional parameters for the method. Structure depends on the specific method. Functions --------- [fromJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/from-j-s-o-n.html) Link copied to clipboard fun [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) .[fromJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/from-j-s-o-n.html) (): [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) Decodes a JSON-RPC request into a protocol-specific [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) . --- # JSONRPCResponse JSONRPCResponse =============== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/index.html) (val id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , val result: [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) = EmptyResult()) : [JSONRPCMessage](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-message/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/jsonRpc.kt#L185) ) A successful (non-error) response to a request. Sent in response to a [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) when the method execution succeeds. The [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/--root--.html) must match the [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/--root--.html) of the original request. Members Constructors ------------ [JSONRPCResponse](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/-j-s-o-n-r-p-c-response.html) Link copied to clipboard constructor(id: [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) , result: [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) = EmptyResult()) Properties ---------- [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/id.html) Link copied to clipboard val [id](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/id.html) : [RequestId](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-id/index.html) The identifier from the original request. Used to match responses to requests. [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/jsonrpc.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [jsonrpc](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/jsonrpc.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) Always "2.0" to indicate JSON-RPC 2.0 protocol. [result](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/result.html) Link copied to clipboard val [result](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-response/result.html) : [RequestResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-result/index.html) The result of the method execution. Structure depends on the method that was called. --- # LATEST_PROTOCOL_VERSION LATEST\_PROTOCOL\_VERSION ========================= const val [LATEST\_PROTOCOL\_VERSION](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-l-a-t-e-s-t_-p-r-o-t-o-c-o-l_-v-e-r-s-i-o-n.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/common.kt#L11) ) --- # ListPromptsRequestBuilder ListPromptsRequestBuilder ========================= class [ListPromptsRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request-builder/index.html) : [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.dsl.kt#L139) ) DSL builder for constructing [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) instances. This builder retrieves a list of available prompts, with optional pagination support. All fields are optional. Optional -------- * [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) - Pagination cursor (inherited from [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) ) * [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) - Metadata for the request (inherited from [RequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/index.html) ) #### See also [buildListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/build-list-prompts-request.html) [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) [PaginatedRequestBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/index.html) Members Properties ---------- [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) Link copied to clipboard var [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-builder/cursor.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? Optional pagination cursor for fetching the next page of results. Functions --------- [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) Link copied to clipboard fun [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-builder/meta.html) (builderAction: [RequestMetaBuilder](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta-builder/index.html) .() -> [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) ) Sets request metadata using a DSL builder. --- # ListPromptsRequest ListPromptsRequest ================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.kt#L201) ) Sent from the client to request a list of prompts and prompt templates the server has. This request supports pagination through the cursor parameter. If the server has many prompts, it may return a subset along with a cursor to fetch the next page. MembersMembers & Extensions Constructors ------------ [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/-list-prompts-request.html) Link copied to clipboard constructor(params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) constructor(cursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Secondary constructor for creating a [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/-list-prompts-request.html) instance using optional cursor and metadata parameters. Properties ---------- [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/cursor.html) Link copied to clipboard open val [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/cursor.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An opaque token representing the current pagination position. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/meta.html) Link copied to clipboard open val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/params.html) : [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? Optional pagination parameters to control which page of results to return. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. --- # ListPromptsResult ListPromptsResult ================= @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/index.html) (val prompts: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) \>, val nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, val meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) : [ServerResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-server-result/index.html) , [PaginatedResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-result/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/prompts.kt#L242) ) The server's response to a [ListPromptsRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-request/index.html) from the client. Returns the available prompts and prompt templates, along with pagination information if there are more results available. Members Constructors ------------ [ListPromptsResult](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/-list-prompts-result.html) Link copied to clipboard constructor(prompts: [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) \>, nextCursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? = null, meta: [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? = null) Properties ---------- [\_meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) Link copied to clipboard open val [~\_meta~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-with-meta/_meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/meta.html) Link copied to clipboard @[SerialName](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serial-name/index.html) (value = "\_meta") open override val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/meta.html) : [JsonObject](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-json/kotlinx.serialization.json/-json-object/index.html) ? Optional metadata for this response. [nextCursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/next-cursor.html) Link copied to clipboard open override val [nextCursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/next-cursor.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An opaque token representing the pagination position after the last returned result. If present, there may be more results available. The client can pass this token in a subsequent request to fetch the next page. [prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/prompts.html) Link copied to clipboard val [prompts](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-prompts-result/prompts.html) : [List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html) <[Prompt](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-prompt/index.html) \> The list of available prompts. Each prompt includes its name, optional description, and information about any arguments it accepts. --- # ListResourcesRequest ListResourcesRequest ==================== @[Serializable](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-serializable/index.html) data class [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/index.html) (val params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) : [ClientRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-client-request/index.html) , [PaginatedRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/index.html) ([source](https://github.com/modelcontextprotocol/kotlin-sdk/tree/main/kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/types/resources.kt#L189) ) Sent from the client to request a list of resources the server has. Resources are data sources that the server can provide access to, such as files, database entries, API responses, or other structured data. MembersMembers & Extensions Constructors ------------ [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/-list-resources-request.html) Link copied to clipboard constructor(params: [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? = null) constructor(cursor: [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ?, meta: [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? = null) Secondary constructor for creating a [ListResourcesRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/-list-resources-request.html) instance using optional cursor and metadata parameters. Properties ---------- [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/cursor.html) Link copied to clipboard open val [cursor](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/cursor.html) : [String](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html) ? An opaque token representing the current pagination position. [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/meta.html) Link copied to clipboard open val [meta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request/meta.html) : [RequestMeta](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request-meta/index.html) ? Metadata for this request. May include a progressToken for out-of-band progress notifications. [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/method.html) Link copied to clipboard @[EncodeDefault](https://kotlinlang.org/api/kotlinx.serialization/kotlinx-serialization-core/kotlinx.serialization/-encode-default/index.html) open override val [method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/method.html) : [Method](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-method/index.html) [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/params.html) Link copied to clipboard open override val [params](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-list-resources-request/params.html) : [PaginatedRequestParams](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-paginated-request-params/index.html) ? Optional pagination parameters to control which page of results to return. Functions --------- [toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) Link copied to clipboard fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-request/index.html) .[~toJSON~](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk/-j-s-o-n-r-p-c-request/index.html) fun [Request](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-request/index.html) .[toJSON](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/to-j-s-o-n.html) (): [JSONRPCRequest](https://modelcontextprotocol.github.io/kotlin-sdk/kotlin-sdk-core/io.modelcontextprotocol.kotlin.sdk.types/-j-s-o-n-r-p-c-request/index.html) Converts the request to a JSON-RPC request. ---