mcpField
M
MCP Weather Application (Client-Server)

MCP Weather Application (Client-Server)

ローカル
github.com/RoystonDAlmeidaメディア・デザイン079 週間前に更新

MCP Weather Application (Client-Server) について

MCP Weather Application (Client-Server)は、MCPサーバーとチャットクライアントを含む天気アプリのサンプルです。サーバーはNational Weather Serviceから警報と予報を取得し、クライアントはLangChainとGroqで自然言語の依頼を処理します。

主な機能

  1. 01気象警報と予報の取得
  2. 02MCP経由でサーバーツールを検出
  3. 03自然言語クエリ用チャット画面
  4. 04LangChainとGroqの利用

活用シーン

  1. 01チャットで気象警報を確認
  2. 02自然言語で天気予報を依頼

MCP 対応

サーバーはNational Weather Service APIを利用する`get_alerts`と`get_forecast`ツールを公開します。クライアントはstdioで接続し、ツールを検出してMCP経由で呼び出します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Weather Application(クライアント・サーバー)

このプロジェクトでは、MCP(Model Context Protocol)フレームワークを使用して天気情報を取得するクライアント・サーバーアプリケーションを紹介します。

  • weather/:National Weather Service(NWS)APIからデータを取得するMCPサーバーのコードが含まれています。
  • mcp-client/:サーバーと連携し、GroqとともにLangChainを使用して自然言語のクエリを処理するMCPクライアントのコードが含まれています。

説明

MCP サーバー(weather/)は、MCP経由で利用できる特定のツール(get_alerts、get_forecast)を提供します。これらのツールを通じて行われたリクエストに対応するため、NWS APIに接続します。

MCP クライアント(mcp-client/)はMCPサーバーに接続してツールを検出し、チャットインターフェースを通じてユーザーが操作できるようにします。LangChainとGroq API(Llama 3モデル)を使用して自然言語のクエリを処理し、サーバーのツールが必要かどうかを判断し、必要に応じてMCP経由でツールを呼び出し、最終的な回答を作成します。

アーキテクチャ

  1. クライアントが起動し、サーバースクリプトへのMCP接続(stdio経由)を開始します。
  2. クライアントがサーバーで利用可能なツールを検出します。
  3. ユーザーがクライアントに自然言語のクエリを入力します。
  4. クライアントがGroq LLM(LangChain経由)を使用してクエリを解釈し、サーバーのツールを使用する必要があるかどうかを判断します。
  5. ツールが必要な場合、クライアントは必要な引数を指定したMCPリクエストをサーバーに送信し、特定のツール(例:get_forecast)を実行します。
  6. サーバーがツールのロジックを実行し、NWS APIからデータを取得します。
  7. サーバーがMCP経由で結果をクライアントに返します。
  8. クライアントがツールの結果をLLMとの会話に取り込みます。
  9. クライアントがLLMによって生成された最終回答をユーザーに提示します。

セットアップ

依存関係のインストールやAPIキーなどの環境設定を含む詳しいセットアップ手順については、各コンポーネントのディレクトリにあるREADMEファイルを参照してください。

  • サーバーのセットアップ: weather/README.mdを参照してください
  • クライアントのセットアップ: mcp-client/README.mdを参照してください

アプリケーションの実行

クライアントを実行してサーバーを自動的に起動・接続するには、mcp-client/(client.pyがあるディレクトリ)から次のコマンドを実行してください。

uv run client.py ../weather/weather.py

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。