MCP を使用してエージェントに通貨ツールを追加する

ラボ 20分 universal_currency_alt クレジット: 1 show_chart 入門
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
このコンテンツはまだモバイル デバイス向けに最適化されていません。
快適にご利用いただくには、メールで送信されたリンクを使用して、デスクトップ パソコンでアクセスしてください。

GML016

Google Cloud セルフペース ラボのロゴ

概要

大規模言語モデル(LLM)は強力ですが、2 つの大きな制限があります。1 つ目は、知識がトレーニング時に得たものに限定されること。2 つ目は、外部とやり取りしてリアルタイム データにアクセスしたり、会議の予約や顧客レコードの更新などのアクションを実行できないことです。

そこで、Model Context Protocol(MCP) が役に立ちます。MCP は、LLM の制限を解決するために設計されたオープン標準です。

MCP を使用する理由

MCP は、LLM が外部のデータ、アプリケーション、サービスと通信するための安全で標準化された「言語」を提供します。MCP は、AI エージェントが静的な知識を超えて動的なエージェントへと変容するためのブリッジとして機能します。MCP を使用することで、AI エージェントは最新の情報を取得してアクションを実行できるようになるため、精度、実用性、自動化が向上します。

このラボでは、Agent Development Kit(ADK)をインストールする手順、MCP を使用するように既存の ADK エージェントを変更する手順、更新されたエージェントをデプロイしてコマンドライン インターフェース経由でインタラクティブ セッションを初期化する手順について説明します。

目標

このラボでは、次のタスクの実行方法について学びます。

  • Agent Development Kit(ADK)をインストールし、プロジェクトの仮想環境を作成する。
  • 通貨エージェント システム(「変更前」の状態)をテストする。
  • MCP サーバーを使用するようにエージェントを変更する。
  • MCP サーバーとエージェントを再起動して変更を反映する。
  • MCP サーバー(「変更後」)に加えられた変更を確認する。

設定と要件

  • ラボの時間は記録されており、一時停止できません。[ラボを開始] をクリックすると、タイマーが開始されます。
  • クラウド ターミナルには、gcloud SDK が事前に構成されています。
  • ターミナルを使用してコマンドを実行し、[進行状況を確認] をクリックして作業を確認してください。

環境を構成し、関連する依存関係をインストールする

  1. ターミナルで次のコマンドを実行し、このラボのコードファイルを Cloud Storage バケットからコピーします。

    gcloud storage cp -r gs://{{{project_0.project_id| YOUR_GCP_PROJECT_ID}}}-bucket/currency-agent .
  2. 次のコマンドを使用して、環境を設定し、currency-agent ディレクトリに .env ファイルを作成します。

    cd currency-agent cp /home/student/keys.json . uv venv --python 3.13 source .venv/bin/activate uv sync touch .env echo "GOOGLE_CLOUD_PROJECT={{{ project_0.project_id }}}" >> .env echo "GOOGLE_CLOUD_LOCATION=global" >> .env echo "GOOGLE_GENAI_USE_VERTEXAI=True" >> .env echo "MODEL={{{project_0.startup_script.gemini_flash_model_id | gemini_flash_model_id}}}" >> .env

タスク 1. Agent Development Kit(ADK)をインストールする

  1. 新しいターミナル(メニューバーで [ターミナル] > [新しいターミナル] を選択するか、Ctrl+Shift+' キーを押します)で、次のコマンドを使用して MCP サーバーを起動します。

    cd currency-agent uv run mcp-server/server.py
  2. 新しいターミナル(メニューバーで [ターミナル] > [新しいターミナル] を選択するか、Ctrl+Shift+' キーを押します)で、次のコマンドを使用して A2A サーバーを起動します(ポート 10000 で起動します)。

    cd currency-agent uv run uvicorn currency_agent.agent:a2a_app --host localhost --port 10000

タスク 2. ベースライン エージェント(「変更前」)を実行する

  1. 最初のターミナル インスタンスで、次のコマンドを使用して既存の通貨エージェントを起動します。

    adk run currency_agent
  2. 次のようにプロンプトを入力して、エージェントとやり取りします。

    What's the exchange rate between USD and EUR?

    エージェントは、米ドルとユーロのリアルタイムの為替レートを提示します。

  3. 別のプロンプトを試してみます。

    What's the exchange rate between USD and CNY?

    エージェントは、米ドルと中国人民元のリアルタイムの為替レートを提示します。

  4. 次のようにプロンプトを入力して、エージェントとやり取りします。

    What's the price of Bitcoin?

    このレスポンスから、エージェントが提示できるのは法定通貨に関する情報に限られることがわかります(暗号通貨に関する最新データは提供できません)。

タスク 3. エージェントを変更する

このタスクでは、Model Context Protocol(MCP)サーバーを使用できるように通貨エージェントを変更します。これは、エージェントが通常アクセスできないレートを取得するために、(一般公開されている Coinbase API を介して)別の「通貨サーバー」を呼び出す方法と考えることができます。

  1. 左側のペインで[ファイル エクスプローラ アイコンをクリックし、currency-agent/mcp-server プロジェクト フォルダに移動します。

  2. ファイル エクスプローラで、mcp-server ディレクトリ内の server.py ファイルを開き、52 行目に次のコードを挿入して、変更を保存します。

    @mcp.tool() def get_crypto_price(currency_pair: str = "BTC-USD") -> dict: """Get the current price of a cryptocurrency pair.""" # この公開エンドポイントには API キーは必要ありません url = f"https://api.coinbase.com/v2/prices/{currency_pair}/spot" response = httpx.get(url) return response.json()["data"]

タスク 4. MCP サーバーと A2A サーバーを再起動する

  1. MCP サーバーがまだ実行中のターミナル インスタンスに切り替えます。

  2. Ctrl+C キーを押してサーバーを停止します。

  3. 同じターミナルで、次のコマンドを実行して MCP サーバーを再起動します。

    uv run mcp-server/server.py
  4. A2A サーバーがまだ実行中のターミナル インスタンスに切り替えます。

  5. Ctrl+C キーを押してサーバーを停止します。

  6. このターミナルで、次のコマンドを実行してエージェントを再起動します。

    uv run uvicorn currency_agent.agent:a2a_app --host localhost --port 10000

タスク 5. 更新したエージェント(「変更後」)を実行してテストする

  1. currency_agent が以前に実行されていたターミナル インスタンスに切り替えます。

  2. exit」と入力して、元のセッションを終了します。

  3. 次のコマンドを実行して、エージェントを再実行してテストします。

    adk run --save_session currency_agent 注: Python バージョンの依存関係に関する警告は無視して構いません。
  4. 次のプロンプトを発行して、エージェントとやり取りしてみます。

    Use the get_crypto_price tool to get me the current price of Bitcoin.

エージェントは get_crypto_price ツール(MCP 経由)にアクセスできるようになり、法定通貨だけでなく、暗号通貨に関する質問にも回答できます。

  1. exit」と入力し、セッション ID を求められたら「1」と入力します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 MCP を使用するように ADK エージェントを変更する。

お疲れさまでした

ADK エージェントをデプロイし、Model Context Protocol(MCP)サーバーを使用するように変更できました。

マニュアルの最終更新日: 2026 年 1 月 21 日

ラボの最終テスト日: 2026 年 1 月 21 日

Copyright 2026 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。