kotlin-sdk/samples
Repository files (latest commit first)
Filename Latest commit message Latest commit date
dependabot[bot] 309d88fe1d
chore(deps): bump the other-dependencies group across 2 directories with 3 updates (#897)
Bumps the other-dependencies group with 2 updates in the
/samples/kotlinlang-mcp-server directory:
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) and
[com.gradleup.shadow](https://github.com/GradleUp/shadow).
Bumps the other-dependencies group with 2 updates in the
/samples/simple-streamable-server directory:
[com.gradleup.shadow](https://github.com/GradleUp/shadow) and
[org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework).

Updates `ch.qos.logback:logback-classic` from 1.5.37 to 1.5.38
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.5.38</h2>
<p><strong>2026-07-09 Release of logback version 1.5.38</strong></p>
<p>• In <code>HardenedObjectInputStream</code>, fixed a typo preventing
<code>Throwable</code> objects from being white-filtered. This issue was
reported in [PR <a
href="https://redirect.github.com/qos-ch/logback/issues/1045">#1045</a>](<a
href="https://redirect.github.com/qos-ch/logback/pull/1045">qos-ch/logback#1045</a>)
by <a href="https://github.com/t0rchwo0d">t0rchwo0d</a>.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
d04984a41fce42977466f45a2f076f0ee5cc4207 associated with the tag
v_1.5.38. Release built using Java &quot;21&quot; 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d04984a41f"><code>d04984a</code></a>
prepare release 1.5.38</li>
<li><a
href="4fffda6549"><code>4fffda6</code></a>
updateversion of maven-gpg-plugin</li>
<li><a
href="7ee48a17be"><code>7ee48a1</code></a>
Fixed a typo where java,lang.Throwable was written with a comma instead
of a ...</li>
<li><a
href="84580a24e6"><code>84580a2</code></a>
remove license profile</li>
<li><a
href="f817c8de7d"><code>f817c8d</code></a>
start work on 1.5.28-SNAPSHOT</li>
<li>See full diff in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.37...v_1.5.38">compare
view</a></li>
</ul>
</details>
<br />

Updates `com.gradleup.shadow` from 9.5.1 to 9.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.6.0</h2>
<h3>Added</h3>
<ul>
<li>Extract R8 rules from dependency JARs when using <code>minimize { r8
{ ... } }</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2089">#2089</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Rename <code>ShadowDslMarker</code> to <code>ShadowDsl</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2091">#2091</a>)</li>
<li><strong>POTENTIALLY BREAKING:</strong> Apply <code>@ShadowDsl</code>
to <code>ShadowJar</code>, <code>ResourceTransformer</code>,
<code>DependencyFilter</code>, and <code>Relocator</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2090">#2090</a>)<br
/>
This restricts nested DSL configuration blocks from implicitly calling
outer receiver APIs in Kotlin script files.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Validate ZIP entry names to prevent Zip Slip path traversal.</li>
<li>Avoid resolving unused R8 dependency. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2101">#2101</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fb3666804b"><code>fb36668</code></a>
Prepare version 9.6.0</li>
<li><a
href="9e5c06d226"><code>9e5c06d</code></a>
Test relocation of ModuleMainClass in module-info (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2109">#2109</a>)</li>
<li><a
href="e37770cd4f"><code>e37770c</code></a>
Test relocation of nested class signatures (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2108">#2108</a>)</li>
<li><a
href="74792f7ba4"><code>74792f7</code></a>
Add unit tests for internal components (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2107">#2107</a>)</li>
<li><a
href="b5908197f5"><code>b590819</code></a>
Avoid resolving unused R8 dependency (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2101">#2101</a>)</li>
<li><a
href="1dd8db498c"><code>1dd8db4</code></a>
Update plugin android-lint to v9.3.0 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2104">#2104</a>)</li>
<li><a
href="083a01a712"><code>083a01a</code></a>
Defer shadowR8 configuration (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2100">#2100</a>)</li>
<li><a
href="1ce486dc5c"><code>1ce486d</code></a>
Update kotlin monorepo to v2.4.10 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2103">#2103</a>)</li>
<li><a
href="c89473ef4a"><code>c89473e</code></a>
Test allowing custom ShadowJar without shadowR8 registered (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2102">#2102</a>)</li>
<li><a
href="f23f5c9521"><code>f23f5c9</code></a>
Update dependency org.junit:junit-bom to v6.1.2 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2098">#2098</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/GradleUp/shadow/compare/9.5.1...9.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `com.gradleup.shadow` from 9.5.1 to 9.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.6.0</h2>
<h3>Added</h3>
<ul>
<li>Extract R8 rules from dependency JARs when using <code>minimize { r8
{ ... } }</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2089">#2089</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Rename <code>ShadowDslMarker</code> to <code>ShadowDsl</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2091">#2091</a>)</li>
<li><strong>POTENTIALLY BREAKING:</strong> Apply <code>@ShadowDsl</code>
to <code>ShadowJar</code>, <code>ResourceTransformer</code>,
<code>DependencyFilter</code>, and <code>Relocator</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2090">#2090</a>)<br
/>
This restricts nested DSL configuration blocks from implicitly calling
outer receiver APIs in Kotlin script files.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Validate ZIP entry names to prevent Zip Slip path traversal.</li>
<li>Avoid resolving unused R8 dependency. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2101">#2101</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fb3666804b"><code>fb36668</code></a>
Prepare version 9.6.0</li>
<li><a
href="9e5c06d226"><code>9e5c06d</code></a>
Test relocation of ModuleMainClass in module-info (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2109">#2109</a>)</li>
<li><a
href="e37770cd4f"><code>e37770c</code></a>
Test relocation of nested class signatures (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2108">#2108</a>)</li>
<li><a
href="74792f7ba4"><code>74792f7</code></a>
Add unit tests for internal components (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2107">#2107</a>)</li>
<li><a
href="b5908197f5"><code>b590819</code></a>
Avoid resolving unused R8 dependency (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2101">#2101</a>)</li>
<li><a
href="1dd8db498c"><code>1dd8db4</code></a>
Update plugin android-lint to v9.3.0 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2104">#2104</a>)</li>
<li><a
href="083a01a712"><code>083a01a</code></a>
Defer shadowR8 configuration (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2100">#2100</a>)</li>
<li><a
href="1ce486dc5c"><code>1ce486d</code></a>
Update kotlin monorepo to v2.4.10 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2103">#2103</a>)</li>
<li><a
href="c89473ef4a"><code>c89473e</code></a>
Test allowing custom ShadowJar without shadowR8 registered (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2102">#2102</a>)</li>
<li><a
href="f23f5c9521"><code>f23f5c9</code></a>
Update dependency org.junit:junit-bom to v6.1.2 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2098">#2098</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/GradleUp/shadow/compare/9.5.1...9.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `com.gradleup.shadow` from 9.5.1 to 9.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.6.0</h2>
<h3>Added</h3>
<ul>
<li>Extract R8 rules from dependency JARs when using <code>minimize { r8
{ ... } }</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2089">#2089</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Rename <code>ShadowDslMarker</code> to <code>ShadowDsl</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2091">#2091</a>)</li>
<li><strong>POTENTIALLY BREAKING:</strong> Apply <code>@ShadowDsl</code>
to <code>ShadowJar</code>, <code>ResourceTransformer</code>,
<code>DependencyFilter</code>, and <code>Relocator</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2090">#2090</a>)<br
/>
This restricts nested DSL configuration blocks from implicitly calling
outer receiver APIs in Kotlin script files.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Validate ZIP entry names to prevent Zip Slip path traversal.</li>
<li>Avoid resolving unused R8 dependency. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2101">#2101</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fb3666804b"><code>fb36668</code></a>
Prepare version 9.6.0</li>
<li><a
href="9e5c06d226"><code>9e5c06d</code></a>
Test relocation of ModuleMainClass in module-info (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2109">#2109</a>)</li>
<li><a
href="e37770cd4f"><code>e37770c</code></a>
Test relocation of nested class signatures (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2108">#2108</a>)</li>
<li><a
href="74792f7ba4"><code>74792f7</code></a>
Add unit tests for internal components (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2107">#2107</a>)</li>
<li><a
href="b5908197f5"><code>b590819</code></a>
Avoid resolving unused R8 dependency (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2101">#2101</a>)</li>
<li><a
href="1dd8db498c"><code>1dd8db4</code></a>
Update plugin android-lint to v9.3.0 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2104">#2104</a>)</li>
<li><a
href="083a01a712"><code>083a01a</code></a>
Defer shadowR8 configuration (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2100">#2100</a>)</li>
<li><a
href="1ce486dc5c"><code>1ce486d</code></a>
Update kotlin monorepo to v2.4.10 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2103">#2103</a>)</li>
<li><a
href="c89473ef4a"><code>c89473e</code></a>
Test allowing custom ShadowJar without shadowR8 registered (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2102">#2102</a>)</li>
<li><a
href="f23f5c9521"><code>f23f5c9</code></a>
Update dependency org.junit:junit-bom to v6.1.2 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2098">#2098</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/GradleUp/shadow/compare/9.5.1...9.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `org.junit.jupiter:junit-jupiter` from 6.1.1 to 6.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/junit-team/junit-framework/releases">org.junit.jupiter:junit-jupiter's
releases</a>.</em></p>
<blockquote>
<p>JUnit 6.1.2 = Platform 6.1.2 + Jupiter 6.1.2 + Vintage 6.1.2</p>
<p>See <a href="https://docs.junit.org/6.1.2/release-notes.html">Release
Notes</a>.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/junit-team/junit-framework/compare/r6.1.1...r6.1.2">https://github.com/junit-team/junit-framework/compare/r6.1.1...r6.1.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b6854269ee"><code>b685426</code></a>
Release 6.1.2</li>
<li><a
href="ae244a6936"><code>ae244a6</code></a>
Remove blanket outputDirectoryCreator from SuiteEngineTests (<a
href="https://redirect.github.com/junit-team/junit-framework/issues/5793">#5793</a>)</li>
<li><a
href="43bd154163"><code>43bd154</code></a>
Finalize 6.1.2 release notes</li>
<li><a
href="0cd9510637"><code>0cd9510</code></a>
Fix order of release note sections</li>
<li><a
href="a1507cbaf4"><code>a1507cb</code></a>
Add initial 6.1.2 release notes to release notes index</li>
<li><a
href="932664186b"><code>9326641</code></a>
Fix NoTestsDiscoveredException for suites containing only dynamic tests
(<a
href="https://redirect.github.com/junit-team/junit-framework/issues/5839">#5839</a>)</li>
<li><a
href="2ef11234dc"><code>2ef1123</code></a>
Create initial 6.1.2 release notes from template</li>
<li><a
href="83fa9ab372"><code>83fa9ab</code></a>
Back to snapshots for further development</li>
<li>See full diff in <a
href="https://github.com/junit-team/junit-framework/compare/r6.1.1...r6.1.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `com.gradleup.shadow` from 9.5.1 to 9.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.6.0</h2>
<h3>Added</h3>
<ul>
<li>Extract R8 rules from dependency JARs when using <code>minimize { r8
{ ... } }</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2089">#2089</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Rename <code>ShadowDslMarker</code> to <code>ShadowDsl</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2091">#2091</a>)</li>
<li><strong>POTENTIALLY BREAKING:</strong> Apply <code>@ShadowDsl</code>
to <code>ShadowJar</code>, <code>ResourceTransformer</code>,
<code>DependencyFilter</code>, and <code>Relocator</code>. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2090">#2090</a>)<br
/>
This restricts nested DSL configuration blocks from implicitly calling
outer receiver APIs in Kotlin script files.</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Validate ZIP entry names to prevent Zip Slip path traversal.</li>
<li>Avoid resolving unused R8 dependency. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2101">#2101</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fb3666804b"><code>fb36668</code></a>
Prepare version 9.6.0</li>
<li><a
href="9e5c06d226"><code>9e5c06d</code></a>
Test relocation of ModuleMainClass in module-info (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2109">#2109</a>)</li>
<li><a
href="e37770cd4f"><code>e37770c</code></a>
Test relocation of nested class signatures (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2108">#2108</a>)</li>
<li><a
href="74792f7ba4"><code>74792f7</code></a>
Add unit tests for internal components (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2107">#2107</a>)</li>
<li><a
href="b5908197f5"><code>b590819</code></a>
Avoid resolving unused R8 dependency (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2101">#2101</a>)</li>
<li><a
href="1dd8db498c"><code>1dd8db4</code></a>
Update plugin android-lint to v9.3.0 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2104">#2104</a>)</li>
<li><a
href="083a01a712"><code>083a01a</code></a>
Defer shadowR8 configuration (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2100">#2100</a>)</li>
<li><a
href="1ce486dc5c"><code>1ce486d</code></a>
Update kotlin monorepo to v2.4.10 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2103">#2103</a>)</li>
<li><a
href="c89473ef4a"><code>c89473e</code></a>
Test allowing custom ShadowJar without shadowR8 registered (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2102">#2102</a>)</li>
<li><a
href="f23f5c9521"><code>f23f5c9</code></a>
Update dependency org.junit:junit-bom to v6.1.2 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2098">#2098</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/GradleUp/shadow/compare/9.5.1...9.6.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-21 13:58:22 +02:00
..
kotlin-mcp-client chore(deps): bump the other-dependencies group across 5 directories with 2 updates (#882) 2026-07-06 14:09:53 +02:00
kotlin-mcp-server chore(deps): bump the other-dependencies group across 5 directories with 2 updates (#882) 2026-07-06 14:09:53 +02:00
kotlinlang-mcp-server chore(deps): bump the other-dependencies group across 2 directories with 3 updates (#897) 2026-07-21 13:58:22 +02:00
notebooks samples: update mcp-kotlin to 0.10.0 across sample projects (#645) 2026-03-30 23:47:31 +03:00
simple-streamable-server chore(deps): bump the other-dependencies group across 2 directories with 3 updates (#897) 2026-07-21 13:58:22 +02:00
weather-stdio-server chore(deps): bump mcp-kotlin from 0.13.0 to 0.14.0 in /samples/weather-stdio-server (#879) 2026-07-06 14:39:33 +02:00
README.md sample: kotlinlang mcp server (#713) 2026-04-27 15:07:03 +02:00

Kotlin MCP SDK Samples

Runnable projects demonstrating MCP server and client implementations with the Kotlin MCP SDK. For background on the protocol itself, see the MCP documentation.

Overview

Sample Type Transport MCP Features
simple-streamable-server Server Streamable HTTP Tools, Resources, Prompts, Logging
kotlinlang-mcp-server Server Streamable HTTP Tools
kotlin-mcp-server Server STDIO, SSE Tools, Resources, Prompts
weather-stdio-server Server STDIO Tools
kotlin-mcp-client Client STDIO Tool discovery & invocation
notebooks Client (Notebook) Streamable HTTP Tool discovery & invocation

Getting Started

  • Building a server? Start with simple-streamable-server — it uses the recommended Streamable HTTP transport and covers tools, resources, prompts, and logging.
  • Building a client? Open the notebooks sample for a step-by-step walkthrough, or see kotlin-mcp-client for a full CLI client with Anthropic API integration.

Samples

Simple Streamable HTTP Server

A minimal Streamable HTTP server with optional Bearer token authentication. Demonstrates tools (greet, multi-greet), a prompt template, a resource, and server-to-client logging notifications. Read more →

Kotlinlang MCP Server

A Streamable HTTP server that exposes the official Kotlin documentation (kotlinlang.org) to LLM clients — full-text search via Algolia and page retrieval in markdown. Demonstrates wrapping a real external API in an MCP server with in-memory caching. Read more →

Kotlin MCP Server

A multi-transport server supporting STDIO, SSE (plain), and SSE (Ktor plugin). Useful for exploring different transport modes side by side. Read more →

Weather STDIO Server

A focused STDIO server that exposes weather forecast and alert tools backed by the weather.gov API. Includes Claude Desktop integration instructions. Read more →

Kotlin MCP Client

An interactive CLI client that connects to any MCP server over STDIO and routes queries through Anthropic's Claude API, bridging MCP tools with LLM conversations. Read more →

MCP Client Notebook

A Kotlin notebook that connects to a remote MCP server via Streamable HTTP and demonstrates ping, tool listing, and tool invocation — all in an interactive cell-by-cell format. Read more →