Weather Java SSE Transport MCP Service について
Weather Java SSE Transport MCP Serviceは、天気照会向けのJava製MCPサーバー例で、fast-agentクライアントのデモも含みます。リモートSSEとローカルstdioのMCPサーバーを使う一連の構成を示します。
主な機能
- 01HTTP SSEによる天気MCPサーバー
- 02Java MCP SDKによる実装
- 03複数のMCPサーバーを呼び出すエージェントデモ
- 04指定都市の天気予報の要約
活用シーン
- 01リモートSSEサーバー設定のデモ
- 02エージェントでウェブ検索と天気ツールを併用
- 03複数都市の予想気温の比較
MCP 対応
JavaサーバーはHTTP SSE経由でMCPクライアントに天気機能を提供します。付属のfast-agentデモはstdioでウェブ検索MCPサーバーにも接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Weather Java SSE Transport MCP Service
動作する Model Context Protocol java-sdk の実装です。MCP クライアントが Weather mcp-server とやり取りするための fast-agent が含まれています。
⚠️これは本番運用に耐える品質ではありません。ローカル(Stdio Transport)とリモート(HTTP SSE Transport)の両方の複数の MCP サーバーを活用できる、エンドツーエンドで動作するものの構築方法を示すためのデモにすぎません。また、Spring をできるだけ取り込まず、Spring を使いたくない方向けにしています。
デモでは、エージェントが次の処理を行います。
- エージェントは LLM 関連の処理全体で Claude Sonnet 3.7 を使用します
- エージェントは「fetch」ウェブ検索 MCP サーバーのツールを呼び出し、指定された各都市の緯度・経度を調べます。
- 次にエージェントは、その緯度・経度の値を使って天気 MCP サーバーのツール(このリポジトリで実装)を呼び出します。 呼び出しの様子は、ターミナルの分割ウィンドウの上半分で確認できます。
- エージェントは予報を要約し、4 都市のうち明日最も暖かい都市を判定します。
エージェントは、ユーザーが入力したプロンプトのコンテキストから、呼び出すツールを判断しています。

Weather MCP Server のビルドと起動
mvn clean package
java -jar java -jar mcp-server/target/mcp-server-1.0-SNAPSHOT.jar
fast-agent のインストール、設定、起動
インストール
pip install uv
uv pip install fast-agent-mcp
uv run agent.py
Claude と OpenAI の API キーを設定する
cp fastagent.secrets.yaml.TEMPLATE fastagent.secrets.yaml
次に、その設定ファイルに API キーを追加します。
注意:Weather MCP Server の設定
fastagent.config.yaml では、エージェントが利用できる MCP サーバーを設定しています。
この場合、サーバーは SSE HTTP Transport を使用しており、リモート MCP サーバーを呼び出せます。
mcp:
servers:
weather:
transport: "sse"
read_timeout_seconds: 10
url: "http://localhost:8080/sse"
テスト用の低レベル操作
SSE ストリームに接続します
curl -v -H "Accept: text/event-stream" "http://localhost:8080/sse"
/mcp/messages にメッセージを送信します(SSE の sessionId を含めてください)
curl -X POST "http://localhost:8080/mcp/message?sessionId=b64ad193-6bb3-4e2e-b33c-27a23011acb4" -d '{"hi": "mynameis"}' | jq .
確認してみるとよいもの:
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。