Temporal Durable Mcp Weather Sample について
Temporal ワークフローとしてツールを実装する Python 製の天気 MCP サーバーサンプルです。ワークフローの状態管理とリトライを活用した、耐久性のあるツール実行を検討する開発者向けです。
主な機能
- 01気象警報と予報の取得
- 02Temporal ワークフローとしての MCP ツール実装
- 03ワークフローの状態管理とリトライ
- 04Claude for Desktop の設定例
活用シーン
- 01耐久性のある MCP ツール設計の検討
- 02MCP クライアントで気象警報を確認
- 03都市の天気予報を取得
MCP 対応
MCP クライアントに `get_alerts` と `get_forecast` ツールを公開します。各ツールは Temporal ワークフローとして実装されています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Temporal と耐久性のある MCP
このリポジトリの目的は、modelcontext.io の天気予報の例を基に、MCP ツールを Temporal ワークフローとして実装して耐久性を持たせることで、ワークフローを MCP サーバーのツールとして簡単に活用できることを紹介することです。
前提条件:
- Python3+
uv(curl -LsSf https://astral.sh/uv/install.sh | sh)- Temporal ローカルセットアップガイド
- Claude for Desktop
はじめに
- 最初のステップ:リポジトリをクローンします
cd temporal-durable-mcp-weather-sampleuv venv(仮想環境を作成します)source .venv/bin/activateuv pip install pyproject.toml- Temporal Server を起動します:
temporal server start-dev - Worker を起動します:
python worker.py - Claude for Desktop の設定を編集します:
- Claude for Desktop を開きます
- ツールバーの
Settingsをクリックします DeveloperをクリックしますEdit Configをクリックします(claude_desktop_config.jsonというファイルを指す Finder ウィンドウが開きます)- 上記のファイルをお好みのエディターで開き、次のように変更します
-
{ "mcpServers": { "weather": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PARENT/FOLDER/temporal-durable-mcp-weather-sample", "run", "weather.py" ] } } }
-
- Claude for Desktop のチャットボックスにあるスライダーアイコンをクリックし、サーバーが公開するツール(
get_alerts、get_forecast)がSearch and Toolsに表示されることを確認します
- 特定の都市の気象警報と予報を Claude に尋ねます。Claude はツールを活用するはずです。活用しない場合は、アクセスできる MCP ツールを使うよう促しながら、もう一度プロンプトを入力してみてください。
結果
ここでは、Claude が天気情報を取得しながら、気象警報を見つけるためにツールを適切に使っている様子を確認できます。

ここがすごいところ
これは、MCP のツールをワークフローとして実装し、耐久性を加えられることを示しています。 Claude によると:
従来の MCP ツール実装は、1 回限りの電話のようなものです。途中で回線が切れると、すべてを失い、最初からやり直さなければなりません。AI エージェントが複雑な複数段階の操作(大規模なデータセットの処理、複数の API 呼び出しの調整、長時間にわたるビジネスプロセスの処理など)を実行している場合、どこかで一度失敗するだけで、全体が失敗してしまいます。

Temporal ワークフローは、どこまで進んだかを正確に記録する詳細な日誌のように機能します。綿密にメモを取る相手と会話するようなものだと考えてください。途中で中断して数時間後に再開しても、何も取りこぼすことなく、正確に中断したところから続けられます。

これは、私たちが「ワークフローとしてのツール」と呼ぶ仕組みを示しています。ツールを Temporal Workflow として実装することで、耐久性、状態管理、再試行の機能が組み込まれます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。