mcpField
W
Weather Java SSE Transport MCP Service

Weather Java SSE Transport MCP Service

Local
github.com/stantonkMedia & Design5Updated 82w ago

About Weather Java SSE Transport MCP Service

Weather Java SSE Transport MCP Service is a Java MCP server example for weather queries, paired with a fast-agent client demo. It demonstrates a lightweight end-to-end setup using remote SSE and local stdio MCP servers.

Key features

  1. 01Weather MCP server over HTTP SSE
  2. 02Java MCP SDK implementation
  3. 03Demo agent using multiple MCP servers
  4. 04Forecast summaries across requested cities

Use cases

  1. 01Demonstrate remote SSE server configuration
  2. 02Combine web search and weather tools in an agent
  3. 03Compare forecast temperatures across cities

MCP support

The Java server exposes weather functionality to MCP clients over HTTP SSE. The accompanying fast-agent demo also connects to a web-search MCP server using stdio.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Weather Java SSE Transport MCP Service

A working implementation Model Context Protocol java-sdk. Includes a fast-agent for the MCP Client to interact with the Weather mcp-server.

⚠️This isn't remotely production grade, just demonstrating how to build something working end to end that can leverage multiple MCP Servers both local (Stdio Transport) and remote (HTTP SSE Transport). Also avoids pulling in as much of Spring as possible, for those who don't want it.

In the demo, you'll see the agent:

  1. The agent uses Claude Sonnet 3.7 throughout for the LLM bits
  2. The agent calls out to the "fetch" websearch MCP Server tool to look up lat/long for each city I asked for.
  3. The agent then uses those lat/long values to call the weather MCP Server tool (implemented in this repository). You can see the calls being made in the upper half of the terminal split window.
  4. The agent summarizes the forecasts and determine which of the 4 cities is the warmest tomorrow.

The agent is figuring out which tools to call from the context of the user's inputted prompts.

Description of image

build and start Weather MCP Server

mvn clean package
java -jar java -jar mcp-server/target/mcp-server-1.0-SNAPSHOT.jar

install, configure, and start fast-agent

install
pip install uv
uv pip install fast-agent-mcp
uv run agent.py
Configure Claude and OpenAI api keys

cp fastagent.secrets.yaml.TEMPLATE fastagent.secrets.yaml

then add your api keys to that config file.

Note: Weather MCP Server config

Note, in fastagent.config.yaml we've configured the MCP Servers available to the agent, in this case our server uses the SSE HTTP Transport, this enables calling remote MCP Servers :).

mcp:
    servers:
        weather:
            transport: "sse"
            read_timeout_seconds: 10
            url: "http://localhost:8080/sse"

Lower level for testing

Connect to SSE stream

curl -v -H "Accept: text/event-stream" "http://localhost:8080/sse"

Send messages to /mcp/messages (note, include sessionId from SSE)

curl -X POST "http://localhost:8080/mcp/message?sessionId=b64ad193-6bb3-4e2e-b33c-27a23011acb4" -d '{"hi": "mynameis"}' | jq .

Things to check out:

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.