Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第164回 雲勉 Agent Development Kit と MCP Toolbox fo...
Search
iret.kumoben
June 20, 2025
Technology
270
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第164回 雲勉 Agent Development Kit と MCP Toolbox for Databases で MCP 連携してみた
下記、勉強会での資料です。
https://youtu.be/u4TQpM_NAxw
iret.kumoben
June 20, 2025
More Decks by iret.kumoben
See All by iret.kumoben
第182回 雲勉 【Gemini 3.0 Pro】AI ベンチマーク徹底比較!他モデルに比べ優れている点まとめ
iret
0
110
第181回 雲勉 WEB制作者のちょっとした面倒をAWSで解決!Amazon S3とAWS Lambda活用術
iret
0
89
第180回 雲勉 Abuse report の調査・確認方法について
iret
0
110
第179回 雲勉 AI を活用したサポートデスク業務の改善
iret
0
150
第178回 雲勉 Amazon EKSをオンプレで! Amazon EKS Anywhere 実践構築ガイド
iret
1
120
第177回 雲勉 IdP 移行を楽に!Amazon Cognito でアプリへの影響をゼロにするアイデア
iret
0
120
第176回 雲勉 VPC 間サービス接続を考える!Private Service Connect 入門
iret
0
110
第175回 雲勉 Amazon ECS入門:コンテナ実行の基本を学ぶ
iret
0
150
第174回 雲勉 Google Agentspace × ADK Vertex AI Agent Engineにデプロイしたエージェントを呼び出す
iret
0
180
Other Decks in Technology
See All in Technology
飲食店もAIで。レジ締めやハンディシステムをつくってる話 / Using AI for restaurant management
vtryo
0
210
Multi-Agent並列開発を 安全に回すための技術 / Technology for Safely Multi-Agent Parallel Development
tooppoo
0
230
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.2k
フルAIで個人開発して学んだあれこれ / yuruai vol.1
isaoshimizu
0
160
プライバシー保護の理論と実践
lycorptech_jp
PRO
1
120
組織における AI-DLC 実践
askul
0
220
そこにあるから地図ができる~位置を示す"モノ"を愉しむ~ - Interface 2026年6月号GPS特集オフ会 / interface_202606_GPS_offline
sakaik
1
140
Amazon Redshift zero-ETL 統合を活用した軽量なマルチプロダクトデータ可視化基盤 / Lightweight Multi-Product Data Visualization with Amazon Redshift Zero-ETL
kaminashi
0
130
IaC コードを資産へ:AWS CDK 社内ライブラリと横断展開 / aws-summit-japan-2026
gotok365
10
1.7k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
11k
『AIに負けない』より『AIと遊ぶ』」〜ワクワクが最強のテスト・QA学習戦略_公開用
odan611
1
210
AIは、人間らしい仕事の夢を見るか?─ AI時代のtoB/toEプロダクトを再設計する
techtekt
PRO
0
190
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
230
Chasing Engaging Ingredients in Design
codingconduct
0
230
The Cost Of JavaScript in 2023
addyosmani
55
10k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
The Cult of Friendly URLs
andyhume
79
6.9k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
440
30 Presentation Tips
portentint
PRO
1
330
The Curse of the Amulet
leimatthew05
2
13k
Typedesign – Prime Four
hannesfritz
42
3.1k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
第164回 雲勉 Agent Development Kit と MCP Toolbox for
Databasesで MCP 連携してみた
講師自己紹介 2 ▪ 山際 哲哉 • DX開発事業部 モダンエンジニアリングセクション • 2025年2月
アイレットに入社 • 2025年5月に Google Cloud 資格全冠しました! • ご質問は YouTubeのコメント欄で受け付けております。 後日回答させていただきます!
アジェンダ 3 1. 本日のゴール 2. AI エージェントと MCP 3. 実践
4. まとめ
1. 本日のゴール 4
1.本日のゴール 5 ▪ Agent Development Kit ◦ AI エージェントとは何か
◦ Agent Development Kit とは何か ▪ MCP Toolbox for Databases ◦ MCP とは何か ▪ これらのツールを Google Cloud にデプロイし、動作確認を行う
2. AI エージェントと MCP 6
2.AI エージェントと MCP 7 ▪ AI エージェント • 目標を達成するために、必要なタスクを自律的に思考、アクション、観察を繰り返す
AI のこ と • Tools を使用して外部データやサービスと連携可能 会話 AI エージェント 思考 アクション 観察 Tools Tool 1 Tool 2
2.AI エージェントと MCP 8 ▪ Agent Development Kit (ADK)
• Google Cloud が提供する AI エージェントを構築するための Python ライブラリ • 特徴 https://google.github.io/adk-docs/ マルチエージェント設計 複数の専門化されたエージェントを階層的に構成し、複雑な連携と 委任が可能 豊富なモデルエコシステム Gemini や Vertex AI Model Garden のモデルや Anthropic、Meta、etc 多様なツールエコシステム 検索、コード実行などの事前構築済みツール、 MCP ツール、etc 組み込みのストリーミング機能 双方向のオーディオおよびビデオストリーミング 統合された開発者体験 CLI や Web UI により、開発、テスト、デバッグが容易
2.AI エージェントと MCP 9 MCP サーバー
MCP サーバー MCP サーバー MCP ホスト データソース データソース インターネット Web API ▪ MCP (Model Context Protocol) • LLM が外部アプリやデータソースやツールと通信する方法を標準化した仕組み
2.AI エージェントと MCP 10 ▪ MCP Toolbox for Databases
• DB 用のオープンソース MCP サーバー • エージェントが DB にアクセスできるように するツール • Google Cloud の DB サービスにも対応 https://github.com/googleapis/genai-toolbox
3. 実践 11
3.実践 12 ▪ 構築する AI エージェント • 架空のホテル の検索と詳細を質問できる
ルート エージェント 検索 エージェント 詳細 エージェント BigQuery Vertex AI Search
3.実践 13 ▪ MCP クライアント • ADK で構築したエージェント ▪ MCP
サーバー • MCP Toolbox for Databases で構築したサーバー ▪ DB • BigQuery ▪ 非構造化データ検索 • Vertex AI Search
3.実践 14 ▪ アーキテクチャ Architecture: Agent Development Kit &MCP Toolbox
for Databases Direct VPC Egress 許可された Google アカウントのみアクセス許可 上り(内向き)の制御:内部
3.実践 15 ▪ BigQuery にデータを格納する
3.実践 16 ▪ MCP Toolbox for Databases の記載 ◦ yaml
で Tools を定義する ▪ sources ◦ 操作するデータソース ▪ tools ◦ エージェントが使用するツール ▪ toolsets ◦ ツールグループ ◦ 異なるエージェントやアプリ毎に異なる セットを定義するのに役立つ sources: my-bigquery-source: kind: "bigquery" project: "PROJECT_ID" tools: search-hotels-by-location: kind: bigquery-sql source: my-bigquery-source description: | Search for hotels based on location. Example: {{ "location": "東京", }} parameters: - name: location type: string description: The location of the hotel. statement: SELECT * FROM `DATASET.hotels` WHERE location = @location; toolsets: my_first_toolset: - search-hotels-by-name - search-hotels-by-location - search-hotels-by-booked
3.実践 17 ▪ MCP Toolbox for Databases を Cloud Run
にデプロイ ◦ gcloud コマンド or コンソール上からデプロイする ◦ サービスアカウントには、以下ロールを付与 ▪ Secret Manager のシークレット アクセサー ▪ BigQuery データ閲覧者 ▪ BigQuery ユーザー gcloud run deploy toolbox \ --image $IMAGE \ --service-account toolbox-service-account \ --region asia-northeast1 \ --set-secrets "/app/tools.yaml=tools:latest" \ --args="--tools_file=/app/tools.yaml","--address=0.0.0.0","--port=8080" \ –ingress "internal"
3.実践 18 ▪ ADK でエージェントの構築 ▪ 検索エージェントの定義 ◦ ToolboxTool を使用して、
tools をエージェントに渡す from google.adk.agents import Agent from google.adk.tools.toolbox_tool import ToolboxTool toolbox = ToolboxTool("TOOLBOX_URL") tools = toolbox.get_toolset(toolset_name="my_first_toolset") bq_agent = Agent( model="gemini-2.0-flash", name="bq_agent", description=("都市内のホテルやホテル名、予約状況に関する質問に答えるエージェン ト。"), instruction=( "あなたは、特定の都市にあるホテルやホテル名、予約状況に関するユーザーの質問に 答えられる、役立つエージェントです。ツールを使って質問に答えましょう。" ), tools=tools, )
3.実践 19 ▪ ADK でエージェントの構築 ▪ 詳細エージェントの定義 ◦ VertexAiSearchTool を使用して、
tools をエージェントに渡す from google.adk.agents import Agent from google.adk.tools import VertexAiSearchTool vertex_search_tool = VertexAiSearchTool( data_store_id="DATA_STORE_ID" ) info_agent = Agent( model="gemini-2.0-flash", name="info_agent", description=("札幌ガーデンホテルの情報に関するユーザーの質問に答えるエージェント。"), instruction=( "あなたは札幌ガーデンホテルの情報に関するユーザーの質問に答えられる、役立つエージェ ントです。ツールを使って質問に答えましょう。" ), tools=[vertex_search_tool], )
3.実践 20 ▪ ADK でエージェントの構築 ▪ ルートエージェントの定義 ◦ Agent as
a Tool として定義した Agent を Tool に渡す ▪ Agent as a Tool ◦ Agent AがAgent Bを道具として 使い、Bの回答をAが受け取って ユーザーに応答 ▪ サブエージェント ◦ Agent AがAgent Bに処理を任せ、 ユーザーへの応答責任は完全にBに移る from google.adk.agents import Agent from google.adk.tools.agent_tool import AgentTool root_agent = Agent( model="gemini-2.0-flash", name="hotel_agent", description=("ホテルに関する質問に答えるエージェント。"), instruction=( "あなたはホテルに関するユーザーの質問に答えられる、役立つエージェントです。\n" "都市内のホテルやホテル名、予約状況に関する質問は bq_agent を使用します。\n" "札幌ガーデンホテルの情報に関する質問は info_agent を使用します。" ), tools=[AgentTool(agent=bq_agent), AgentTool(agent=info_agent)], )
3.実践 21 ▪ ADK を Cloud Run にデプロイ (Vertex AI
Agent Engine でも可) ◦ adk コマンドが用意されている ◦ サービスアカウントには、以下ロールを付与 ▪ Cloud Run サービス起動元 ▪ Vertex AI ユーザー ▪ ディスカバリー エンジン ユーザー ◦ Artifact Registry に push され、Cloud Run にサービスがデプロイされる adk deploy cloud_run \ --project=$GOOGLE_CLOUD_PROJECT \ --region=$GOOGLE_CLOUD_LOCATION \ --service_name=$SERVICE_NAME \ --app_name=$APP_NAME \ --with_ui \ $AGENT_PATH
3.実践 22 ▪ 動作確認
3.実践 23 ▪ 動作確認 ▪ MCP サーバーを経由して、BigQueryのデータを取得してきた
3.実践 24 ▪ 動作確認
3.実践 25 ▪ 動作確認 ▪ 他の定義した Tool も使用して、BigQueryのデータを取得してきた
3.実践 26 ▪ 動作確認
3.実践 27 ▪ 動作確認 ▪ Vertex AI Search を使用して、ドキュメントから検索して回答してくれた
3.実践 28 ▪ 評価 ▪ Tool の使用や最終応答の評価を行うことができる ▪ Json 形式でテストファイルを記述
[ { "name": "東京のホテル検索", "data": [ { "query": "東京のホテルを検索してください", "expected_tool_use": [{"tool_name": "bq_agent", "tool_input": {"request": "東京のホテルを検索してください"}}], "expected_intermediate_agent_responses": [], "reference": "デザイナーズホテル東京とホテル東京駅前と東 京ベイホテルがあります。" } ], "initial_session": { "state": {}, "app_name": "hotels", "user_id": "user" } ]
3.実践 29 ▪ 評価 ▪ テスト結果が表示されて、ログに詳細の結果が表示される
4. まとめ 30
4.まとめ 31 ▪ Agent Development Kit を使用すると、簡単に AI エージェントを構築できる
◦ Cloud Run や Vertex AI Agent Engine にデプロイできる ▪ MCP Toolbox for Databases を使用すると、簡単に DB の操作ができる MCP サーバーを構築できる ▪ これらのツールを Google Cloud にデプロイし、動作確認ができる