<!-- Provide a brief summary of your changes --> Replace the CIO dependency with only server/client core dependency. ## Motivation and Context <!-- Why is this change needed? What problem does it solve? --> In order to minimize the size of package. There are probably other existing engines like Netty/Tomcat(server) or Java/OkHttp/Apache(client) in the classpath. So we can reuse existing infrastructure. ## How Has This Been Tested? <!-- Have you tested this in a real application? Which scenarios were tested? --> I have run: - kotlin-sdk-client: jvmTest, jsTest - kotlin-sdk-test: jvmTest, jsTest - kotlin-sdk-server: allTests - All `build` of samples I have an issue about `samples/kotlin-mcp-server`. `io.modelcontextprotocol` is not found in `commonMain`. ## Breaking Changes <!-- Will users need to update their code or configurations? --> Yes. They need to `implementation` CIO engine manually if they use it in their app. ## Types of changes <!-- What types of changes does your code introduce? Put an `x` in all the boxes that apply: --> - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [x] Breaking change (fix or feature that would cause existing functionality to change) - [x] Documentation update ## Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. --> - [ ] I have read the [MCP Documentation](https://modelcontextprotocol.io) - [ ] My code follows the repository's style guidelines - [x] New and existing tests pass locally - [ ] I have added appropriate error handling - [ ] I have added or updated documentation as needed ## Additional context <!-- Add any other context, implementation notes, or design decisions --> closes https://github.com/modelcontextprotocol/kotlin-sdk/issues/111 --------- Co-authored-by: Konstantin Pavlov <1517853+kpavlov@users.noreply.github.com>
37 lines
753 B
Kotlin
37 lines
753 B
Kotlin
plugins {
|
|
alias(libs.plugins.kotlin.jvm)
|
|
alias(libs.plugins.kotlin.serialization)
|
|
alias(libs.plugins.shadow)
|
|
application
|
|
}
|
|
|
|
application {
|
|
mainClass.set("io.modelcontextprotocol.sample.server.MainKt")
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
group = "org.example"
|
|
version = "0.1.0"
|
|
|
|
dependencies {
|
|
implementation(libs.ktor.client.content.negotiation)
|
|
implementation(libs.ktor.serialization.kotlinx.json)
|
|
implementation(libs.mcp.kotlin)
|
|
implementation(libs.ktor.server.cio)
|
|
implementation(libs.ktor.client.cio)
|
|
implementation(libs.slf4j.simple)
|
|
|
|
testImplementation(kotlin("test"))
|
|
testImplementation(libs.kotlinx.coroutines.test)
|
|
}
|
|
|
|
tasks.test {
|
|
useJUnitPlatform()
|
|
}
|
|
|
|
kotlin {
|
|
jvmToolchain(17)
|
|
}
|