Skip to content

Conversation

@devcrocod
Copy link
Contributor

Motivation and Context

How Has This Been Tested?

locally

Breaking Changes

No

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

…e modules. Removed old configuration files and reorganized the source code structure
…rdcoded dependencies with version catalog, remove obsolete gradle wrapper files
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR modularizes the Kotlin SDK by splitting it into separate modules (core, client, server) and reorganizes the project structure. The samples are configured as composite builds and now use shared version catalogs for dependency management.

  • Splits the monolithic SDK into separate core, client, and server modules for better organization
  • Configures sample projects as composite builds with shared dependency management
  • Introduces centralized build configuration through custom Gradle plugins

Reviewed Changes

Copilot reviewed 63 out of 90 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
settings.gradle.kts Adds new module includes and configures samples as composite builds
kotlin-sdk/build.gradle.kts New umbrella module that combines core, client, and server modules
kotlin-sdk-core/build.gradle.kts Core SDK module with multiplatform configuration
kotlin-sdk-client/build.gradle.kts Client-specific functionality module
kotlin-sdk-server/build.gradle.kts Server-specific functionality module
kotlin-sdk-test/build.gradle.kts Test module configuration
samples/*/build.gradle.kts Updated to use version catalog references
gradle/libs.versions.toml Centralized dependency versions with sample dependencies
buildSrc/* Custom Gradle plugins for publishing, multiplatform, and documentation
Files not reviewed (5)
  • samples/kotlin-mcp-server/.idea/.gitignore: Language not supported
  • samples/kotlin-mcp-server/.idea/gradle.xml: Language not supported
  • samples/kotlin-mcp-server/.idea/kotlinc.xml: Language not supported
  • samples/kotlin-mcp-server/.idea/misc.xml: Language not supported
  • samples/kotlin-mcp-server/.idea/vcs.xml: Language not supported
Comments suppressed due to low confidence (1)

kotlin-sdk-core/src/commonMain/kotlin/io/modelcontextprotocol/kotlin/sdk/shared/Protocol.kt:442

  • [nitpick] The removal of the explicit Unit return statement may be intentional cleanup, but could affect readability in complex exception handling blocks.
        }

@devcrocod devcrocod self-assigned this Aug 2, 2025
Copy link
Contributor

@e5l e5l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@devcrocod devcrocod merged commit 8698b96 into main Aug 4, 2025
4 checks passed
@devcrocod devcrocod deleted the devcrocod/modularize-sdk branch August 4, 2025 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support more targets for kotlin-sdk Further split of this library into modules (e.g. api, client, server)

3 participants