| Filename | Latest commit message | Latest commit date |
|---|---|---|
Bumps `mcp-kotlin` from 0.11.0 to 0.11.1. Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.11.0 to 0.11.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's releases</a>.</em></p> <blockquote> <h2>0.11.1</h2> <h3>Description</h3> <p>Fixes an SSE stream crash on Netty when clients connect to the Streamable HTTP GET endpoint.</p> <h3>Fixed</h3> <ul> <li>Fixed GET SSE stream crash on Netty in Streamable HTTP where <code>appendSseHeaders()</code> was called after response headers were already committed, causing <code>UnsupportedOperationException</code> and client retry loops by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/681">#681</a></li> </ul> <h3>Dependencies</h3> <ul> <li>mcp-kotlin to v0.11.0 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/672">#672</a>, <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/673">#673</a>, <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/675">#675</a>, <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/676">#676</a></li> <li>Ktor BOM to v3.3.3 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/650">#650</a>, <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/653">#653</a>, <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/656">#656</a></li> <li>Kotest assertions to v6.1.11 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/674">#674</a></li> <li>anthropic-java to v2.19.0 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/671">#671</a></li> <li><code>@modelcontextprotocol/sdk</code> to v1.29.0, <code>@types/node</code> update in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/677">#677</a></li> <li>hono to v4.12.12 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/680">#680</a></li> <li><code>@hono/node-server</code> to v1.19.13 in <a href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/679">#679</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.11.0...0.11.1">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.11.0...0.11.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
| .. | ||
| gradle | ||
| src | ||
| build.gradle.kts | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| README.md | ||
| settings.gradle.kts | ||
Weather STDIO Server
A minimal MCP server that exposes weather forecast and alert tools using the National Weather Service API over STDIO transport.
Overview
This sample shows how to build a STDIO-based MCP server in Kotlin. It registers two tools that query the weather.gov API — one for weather forecasts by latitude/longitude and one for active alerts by US state. Because it uses STDIO, the server is launched as a subprocess by an MCP client or a desktop application like Claude Desktop.
Prerequisites
- JDK 17+
- Internet access (the server calls the weather.gov API at runtime)
Build & Run
Run the server (it communicates via stdin/stdout):
./gradlew run
MCP Inspector
Build the fat JAR first, then connect with the MCP Inspector:
./gradlew build
npx @modelcontextprotocol/inspector -- java -jar samples/weather-stdio-server/build/libs/weather-stdio-server-0.1.0-all.jar
Claude Desktop integration
Add the following to your Claude Desktop configuration:
{
"mcpServers": {
"weather": {
"command": "java",
"args": [
"-jar",
"/absolute/path/to/samples/weather-stdio-server/build/libs/weather-stdio-server-0.1.0-all.jar"
]
}
}
}
MCP Capabilities
Tools
| Name | Description |
|---|---|
get_alerts |
Returns active weather alerts for a two-letter US state code (e.g. CA, NY). |
get_forecast |
Returns weather forecast for a given latitude / longitude using the weather.gov API. |