Contextual Greetings:
概要
Contextual Greetingsは、天気情報を活用して文脈に応じた挨拶を生成するPythonアプリケーションです。このアプリは、Model Context Protocol (MCP) を使用して、チャットや対話型アプリケーションにおいて、ユーザーに適切な挨拶を提供することを目的としています。
東京の現在の天気と気温を取得し、それに基づいて挨拶を生成します。例えば、晴れた日には「今日は晴れています。気温は25℃です。良い1日を!」といった挨拶を返します。(VSCodeにてCline + google/gemini-2.5-pro-preview-03-25 で試しました。色々な表示が出てしまうのでもう一歩という感じになります。)

ソースコード
https://github.com/mzsima/learn-mcp/tree/main/contextual-greetings
主な機能
- 天気情報の取得
Open-Meteo APIを使用して、東京の現在の気温と天気コードを取得します。 - 文脈に応じた挨拶の生成
天気や気温に基づいて、晴れ、曇り、雨などの状況に応じた挨拶を生成します。 - MCPツールの提供
MCPプロトコルを使用して、以下のツールを提供します:
get_weather
: 天気情報を取得get_greeting
: 天気情報に基づいた挨拶を生成auto_greet
: 天気情報を自動取得し、挨拶を生成
技術スタック
- Python 3.13: 最新のPythonバージョンを使用
- Starlette: 軽量なASGIフレームワーク
- Uvicorn: 高速なASGIサーバー
- MCP: Model Context Protocolを実装するPythonライブラリ
使用方法
- アプリケーションの起動
以下のコマンドでアプリケーションを起動します。
uv run weather_mcp_server.py
- MCPツールの利用
MCP対応のクライアントを使用して、ツールを呼び出します。
サンプル挨拶
- 晴れの日:
「今日は晴れています。気温は25℃です。良い1日を!」 - 曇りの日:
「今日は曇り空です。気温は20℃です。過ごしやすい1日を!」 - 雨の日:
「今日は雨が降っています。気温は18℃です。傘をお忘れなく!」
Contextual Greetingsは、天気情報を活用した新しい形の対話体験を提供します。ぜひ試してみてください!