ארגז הכלים של MCP למסדי נתונים: הפיכת מערכי נתונים של BigQuery לזמינים ללקוחות MCP

1. מבוא

בסדנת התכנות הזו, תשתמשו ב-MCP Toolbox for Databases כדי להפוך את מערכי הנתונים שלכם ב-BigQuery לזמינים.

במהלך ה-codelab, תשתמשו בגישה שלב אחר שלב באופן הבא:

  1. מזהים מערך נתונים ספציפי של BigQuery (הערות המוצר של Google Cloud) מתוך תוכנית מערכי הנתונים הציבוריים של BigQuery.
  2. מגדירים את MCP Toolbox for Databases, שמתחבר למערך הנתונים ב-BigQuery.
  3. פיתוח סוכן באמצעות Agent Development Kit (ערכת פיתוח סוכנים, ADK) שישתמש ב-MCP Toolbox כדי לענות על שאילתות של המשתמש לגבי הערות על גרסאות של Google Cloud

מה עושים

  • הגדרת MCP Toolbox for Databases כדי לחשוף הערות על גרסאות של Google Cloud, מערך נתונים ציבורי של BigQuery, כממשק MCP ללקוחות MCP אחרים (סביבות פיתוח משולבות, כלים וכו').

מה תלמדו

  • מעיינים במערכי נתונים ציבוריים של BigQuery ובוחרים מערך נתונים ספציפי.
  • הגדרת MCP Toolbox for Databases עבור מערך הנתונים הציבורי ב-BigQuery שאנחנו רוצים להפוך לזמין ללקוחות MCP.
  • תכנון ופיתוח של סוכן באמצעות ערכת פיתוח הסוכנים (ADK) כדי לענות על שאילתות של משתמשים.
  • אפשר לבדוק את ארגז הכלים של הסוכן ושל MCP למסדי נתונים בסביבה המקומית.

מה צריך

  • דפדפן האינטרנט Chrome.
  • סביבת פיתוח מקומית של Python.

‫2. לפני שמתחילים

יצירת פרויקט

  1. ב-Google Cloud Console, בדף לבחירת הפרויקט, בוחרים או יוצרים פרויקט ב-Google Cloud.
  2. הקפידו לוודא שהחיוב מופעל בפרויקט שלכם ב-Cloud. כך בודקים אם החיוב מופעל בפרויקט
  3. תשתמשו ב-Cloud Shell, סביבת שורת פקודה שפועלת ב-Google Cloud ומגיעה עם bq שנטען מראש. לוחצים על 'הפעלת Cloud Shell' בחלק העליון של מסוף Google Cloud.

תמונה של לחצן Activate Cloud Shell

  1. אחרי שמתחברים ל-Cloud Shell, בודקים שכבר בוצע אימות ושהפרויקט מוגדר למזהה הפרויקט באמצעות הפקודה הבאה:
gcloud auth list
  1. מריצים את הפקודה הבאה ב-Cloud Shell כדי לוודא שפקודת gcloud מכירה את הפרויקט.
gcloud config list project
  1. אם הפרויקט לא מוגדר, משתמשים בפקודה הבאה כדי להגדיר אותו:
gcloud config set project <YOUR_PROJECT_ID>

אפשר לעיין במאמרי העזרה בנושא פקודות gcloud ושימוש בהן.

3. מערך נתונים של נתוני גרסה ולקוחות MCP של Google

קודם כל, כדאי לעיין בהערות המוצר של Google Cloud שמתעדכנות באופן קבוע בדף הרשמי של הערות המוצר של Google Cloud. צילום מסך של הדף מוצג בהמשך:

2973122a11bbb237.png

יכול להיות שתרצו להירשם לכתובת ה-URL של הפיד, אבל מה אם פשוט תוכלו לשאול בצ'אט עם נציג לגבי הערות הגרסה האלה? אולי שאילתה פשוטה כמו 'עדכן אותי לגבי הערות על גרסאות של Google Cloud'.

4. ערכת הכלים של MCP למסדי נתונים

MCP Toolbox for Databases הוא שרת MCP בקוד פתוח למסדי נתונים. הוא תוכנן במיוחד לשימוש ברמת הארגון ולסביבות ייצור. הוא מאפשר לכם לפתח כלים בקלות, במהירות ובאופן מאובטח יותר, כי הוא מטפל במורכבויות כמו איגום חיבורים, אימות ועוד.

ערכת הכלים עוזרת לכם ליצור כלי AI גנרטיבי שמאפשרים לסוכנים שלכם לגשת לנתונים במסד הנתונים. ארגז הכלים כולל:

  • פיתוח פשוט יותר: אפשר לשלב כלים בסוכן בפחות מ-10 שורות קוד, להשתמש מחדש בכלים בין כמה סוכנים או מסגרות ולפרוס גרסאות חדשות של כלים בקלות רבה יותר.
  • ביצועים טובים יותר: שיטות מומלצות כמו איגום חיבורים, אימות ועוד.
  • אבטחה משופרת: אימות משולב לגישה מאובטחת יותר לנתונים
  • ניראות מקצה לקצה: מדדים ומעקב מוכנים לשימוש עם תמיכה מובנית ב-OpenTelemetry.
  • ערכת הכלים מאפשרת לחבר בקלות מסדי נתונים לכל עוזרי ה-AI עם יכולות MCP, גם לאלה שנמצאים בסביבת הפיתוח המשולבת (IDE).

ערכת הכלים נמצאת בין מסגרת התזמור של האפליקציה לבין מסד הנתונים, ומספקת מישור בקרה שמשמש לשינוי, להפצה או להפעלה של כלים. הוא מפשט את ניהול הכלים על ידי מתן מיקום מרכזי לאחסון ולעדכון כלים, ומאפשר לכם לשתף כלים בין סוכנים ואפליקציות ולעדכן את הכלים האלה בלי לפרוס מחדש את האפליקציה.

6c2db11849f99a4.png

כדי לסכם במילים פשוטות:

  1. ערכת הכלים של MCP זמינה כקובץ בינארי, כקובץ אימג' של קונטיינר או שאפשר ליצור אותה מקוד המקור.
  2. הוא חושף קבוצה של כלים שאתם מגדירים באמצעות קובץ tools.yaml. אפשר לחשוב על הכלים האלה כחיבור למקורות הנתונים שלכם. אפשר לראות את מקורות הנתונים השונים שהוא תומך בהם : AlloyDB,‏ BigQuery וכו'.
  3. מכיוון שכלי הפיתוח הזה תומך עכשיו ב-MCP, יש לכם באופן אוטומטי נקודת קצה של שרת MCP שאפשר להשתמש בה בסוכנים (IDE) או להשתמש בהם בזמן פיתוח אפליקציות סוכנים באמצעות מסגרות שונות כמו ערכת פיתוח סוכנים (ADK).

בפוסט הזה בבלוג נתמקד בתחומים שמודגשים בהמשך:

846fa11a5db0a1a1.png

לסיכום, אנחנו ניצור הגדרה ב-MCP Toolbox for Databases שתדע איך להתחבר למערך הנתונים שלנו ב-BigQuery. לאחר מכן נפתח סוכן באמצעות ערכה לפיתוח סוכנים (ADK) שישתלב עם נקודת הקצה של MCP Toolbox ויאפשר לנו לשלוח שאילתות טבעיות כדי לקבל מידע על מערך הנתונים שלנו. אפשר לחשוב על זה כעל אפליקציה מבוססת-סוכן שאתם מפתחים, שיודעת איך לתקשר עם מערך הנתונים שלכם ב-BigQuery ומריצה כמה שאילתות.

5. מערך נתונים של הערות המוצר ב-Google Cloud ב-BigQuery

Google Cloud Public Dataset Program הוא תוכנית שמאפשרת לכם להשתמש במגוון של מערכי נתונים באפליקציות שלכם. אחד ממערכי הנתונים האלה הוא מסד הנתונים של הערות הגרסה של Google Cloud. מערך הנתונים הזה מספק את אותו מידע שמופיע בדף האינטרנט הרשמי של הערות הגרסה של Google Cloud, והוא זמין כמערך נתונים שאפשר להריץ עליו שאילתות באופן ציבורי.

2104010c05c87d0d.png

כדי לבדוק את זה, אני מאמת את מערך הנתונים על ידי הרצת שאילתה פשוטה שמוצגת בהמשך:

SELECT
       product_name,description,published_at
     FROM
       `bigquery-public-data`.`google_cloud_release_notes`.`release_notes`
     WHERE
       DATE(published_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
     GROUP BY product_name,description,published_at
     ORDER BY published_at DESC

כך מקבלים רשימה של רשומות ממערך הנתונים של הערות לגבי מהדורות שפורסמו ב-7 הימים האחרונים.

אפשר להחליף את מערך הנתונים הזה בכל מערך נתונים אחר שרוצים, ואת השאילתות והפרמטרים שלו. כל מה שצריך לעשות עכשיו הוא להגדיר את זה כמקור נתונים וככלי ב-MCP Toolbox for Databases. איך עושים את זה?

6. התקנת MCP Toolbox for Databases

פותחים טרמינל במחשב המקומי ויוצרים תיקייה בשם mcp-toolbox.

mkdir mcp-toolbox

עוברים לתיקייה mcp-toolbox באמצעות הפקודה שמוצגת למטה:

cd mcp-toolbox

מתקינים את הגרסה הבינארית של MCP Toolbox for Databases באמצעות הסקריפט שמופיע בהמשך. הפקודה שמופיעה בהמשך היא ל-Linux, אבל אם אתם משתמשים ב-Mac או ב-Windows, חשוב לוודא שאתם מורידים את הקובץ הבינארי הנכון. אפשר לעיין בדף הגרסאות של מערכת ההפעלה והארכיטקטורה ולהוריד את הקובץ הבינארי הנכון.

export VERSION=0.13.0
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox

עכשיו יש לנו את הגרסה הבינארית של ארגז הכלים, והיא מוכנה לשימוש. בשלב הבא מגדירים את ארגז הכלים עם מקורות הנתונים והגדרות אחרות.

7. הגדרת ערכת הכלים של MCP למסדי נתונים

עכשיו צריך להגדיר את מערך הנתונים והכלים של BigQuery בקובץ tools.yaml שנדרש על ידי MCP Toolbox for Database. הקובץ tools.yaml הוא הדרך העיקרית להגדיר את Toolbox.

יוצרים קובץ בשם tools.yaml באותה תיקייה, כלומר mcp-toolbox, עם התוכן שמוצג בהמשך.

אפשר להשתמש בעורך nano שזמין ב-Cloud Shell. הפקודה nano היא: "nano tools.yaml".

חשוב להחליף את הערך YOUR_PROJECT_ID במזהה הפרויקט ב-Google Cloud.

sources:
 my-bq-source:
   kind: bigquery
   project: YOUR_PROJECT_ID

tools:
 search_release_notes_bq:
   kind: bigquery-sql
   source: my-bq-source
   statement: |
    SELECT
     product_name,description,published_at
    FROM
      `bigquery-public-data`.`google_cloud_release_notes`.`release_notes`
    WHERE
     DATE(published_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
    GROUP BY product_name,description,published_at
    ORDER BY published_at DESC
   description: |
    Use this tool to get information on Google Cloud Release Notes.

toolsets:
 my_bq_toolset:
   - search_release_notes_bq

אנחנו צריכים לקבל ממך תיאור קצר של הקובץ:

  1. מקורות מייצגים את מקורות הנתונים השונים שאיתם הכלי יכול ליצור אינטראקציה. מקור מייצג מקור נתונים שכלי יכול ליצור איתו אינטראקציה. אפשר להגדיר את המקורות כמפה בקטע sources בקובץ tools.yaml. בדרך כלל, הגדרת מקור תכיל את כל המידע שנדרש כדי להתחבר למסד הנתונים ולקיים איתו אינטראקציה. בדוגמה שלנו, הגדרנו מקור BigQuery‏ my-bq-source ואתם צריכים לספק את מזהה הפרויקט שלכם ב-Google Cloud. מידע נוסף זמין במאמר בנושא מקורות.
  2. כלים מגדירים פעולות שהסוכן יכול לבצע – כמו קריאה וכתיבה במקור. כלי מייצג פעולה שהסוכן יכול לבצע, כמו הפעלת הצהרת SQL. אפשר להגדיר את הכלי כמפה בקטע Tools בקובץ tools.yaml. בדרך כלל, כלי יצטרך מקור כדי לפעול. במקרה שלנו, אנחנו מגדירים כלי אחד search_release_notes_bq. ההפניה הזו היא למקור BigQuery‏ my-bq-source שהגדרנו בשלב הראשון. הוא כולל גם את ההצהרה וההוראה שישמשו את לקוחות סוכן ה-AI. מידע נוסף זמין במאמר בנושא כלים.
  3. לבסוף, יש לנו את ערכת הכלים, שמאפשרת לכם להגדיר קבוצות של כלים שאתם רוצים לטעון יחד. האפשרות הזו יכולה להיות שימושית להגדרת קבוצות שונות על סמך סוכן או אפליקציה. במקרה שלנו, יש לנו הגדרה של ערכת כלים שבה הגדרנו כרגע רק כלי קיים אחד search_release_notes_bq שהגדרנו. יכולים להיות לכם כמה ערכות כלים, שכל אחת מהן כוללת שילוב של כלים שונים.

לכן, בשלב הזה הגדרנו רק כלי אחד שמקבל את הערות הגרסה של 7 הימים האחרונים בהתאם לשאילתה. אבל אפשר גם ליצור שילובים שונים עם פרמטרים.

אפשר לעיין בפרטים נוספים על ההגדרה ( מקור, כלים) בהגדרת מקור הנתונים של BigQuery ב-MCP Toolbox for Databases.

8. בדיקה של ארגז הכלים של MCP למסדי נתונים

הורדנו והגדרנו את ערכת הכלים עם הקובץ tools.yaml בתיקייה mcp-toolbox. קודם נריץ אותו באופן מקומי.

מריצים את הפקודה הבאה:

./toolbox --tools-file="tools.yaml"

אם ההפעלה תצליח, תראו שהשרת מופעל עם פלט לדוגמה שדומה לזה שמופיע בהמשך:

2025-09-08T03:56:45.772489914Z INFO "Initialized 1 sources." 
2025-09-08T03:56:45.772682659Z INFO "Initialized 0 authServices." 
2025-09-08T03:56:45.772735103Z INFO "Initialized 1 tools." 
2025-09-08T03:56:45.772774639Z INFO "Initialized 2 toolsets." 
2025-09-08T03:56:45.777711644Z INFO "Server ready to serve!"  

שרת MCP Toolbox פועל כברירת מחדל ביציאה 5000. אם אתם מגלים שהיציאה 5000 כבר בשימוש, אתם יכולים להשתמש ביציאה אחרת (למשל 7000) בהתאם לפקודה שמוצגת למטה. במקום יציאת 5000 בפקודות הבאות, צריך להשתמש ב-7000.

./toolbox --tools-file "tools.yaml" --port 7000

נשתמש ב-Cloud Shell כדי לבדוק את זה.

לוחצים על Web Preview ב-Cloud Shell כמו שמוצג למטה:

f990712162e8e924.png

לוחצים על Change port (שינוי היציאה) ומגדירים את היציאה ל-5000 כמו שמוצג למטה. לוחצים על Change and Preview (שינוי ותצוגה מקדימה).

d1b9de0c46ecef8a.png

הפלט הבא אמור להתקבל:

2fdcdac326034d41.png

בכתובת ה-URL של הדפדפן, מוסיפים את המחרוזת הבאה לסוף כתובת ה-URL:

/api/toolset

יוצגו הכלים שמוגדרים כרגע. דוגמה לפלט:

{
  "serverVersion": "0.13.0+binary.linux.amd64.1a6dfe8d37d0f42fb3fd3f75c50988534dbc1b85",
  "tools": {
    "search_release_notes_bq": {
      "description": "Use this tool to get information on Google Cloud Release Notes.\n",
      "parameters": [],
      "authRequired": []
    }
  }
}

בדיקת הכלים באמצעות ממשק המשתמש של ארגז הכלים של MCP למסדי נתונים

ארגז הכלים מספק ממשק חזותי (ממשק המשתמש של ארגז הכלים) ליצירת אינטראקציה ישירה עם כלים באמצעות שינוי פרמטרים, ניהול כותרות והפעלת שיחות, והכול בממשק משתמש פשוט באינטרנט.

כדי לבדוק את זה, אפשר להריץ את הפקודה הקודמת שבה השתמשנו כדי להפעיל את Toolbox Server עם האפשרות --ui.

כדי לעשות זאת, משביתים את המופע הקודם של MCP Toolbox for Databases Server שאולי פועל ומריצים את הפקודה הבאה:

./toolbox --tools-file "tools.yaml" --ui

הפלט שיוצג צריך להראות שהשרת הצליח להתחבר למקורות הנתונים שלנו ושהוא טען את ערכת הכלים והכלים. בהמשך מופיע פלט לדוגמה, שבו מצוין שממשק המשתמש של כלי העריכה פועל.

2025-09-08T03:59:34.856476253Z INFO "Initialized 1 sources." 
2025-09-08T03:59:34.856546526Z INFO "Initialized 0 authServices." 
2025-09-08T03:59:34.856577586Z INFO "Initialized 1 tools." 
2025-09-08T03:59:34.856641568Z INFO "Initialized 2 toolsets." 
2025-09-08T03:59:34.86133344Z INFO "Server ready to serve!" 
2025-09-08T03:59:34.861366205Z INFO "Toolbox UI is up and running at: http://localhost:5000/ui" 

לוחצים על כתובת ה-URL של ממשק המשתמש ומוודאים שמופיע בסוף כתובת ה-URL התו /ui. יוצג ממשק משתמש כמו שמוצג בהמשך:

f95c15dd0e97f3c7.png

לוחצים על האפשרות Tools (כלים) בצד ימין כדי לראות את הכלים שהוגדרו. במקרה שלנו, אמור להיות רק כלי אחד, כלומר search_release_notes_bq, כמו שמוצג בהמשך:

20bc9f088b874e47.png

פשוט לוחצים על סמל הכלים (search_release_notes_bq) ומוצג דף שבו אפשר לבדוק את הכלי. מכיוון שאין פרמטרים להזנה, אפשר פשוט ללחוץ על הפעלת הכלי כדי לראות את התוצאה. דוגמה להרצה:

fc1ff8fbb15b230a.png

ב-MCP Toolkit for Databases מוסבר גם על דרך שמתאימה ל-Python לאימות ולבדיקה של הכלים, והתיעוד מופיע כאן. בקטע הבא נדלג על זה ונעבור ישירות לערכת פיתוח הסוכן (ADK) שבה נשתמש בכלים האלה.

9. כתיבת הסוכן באמצעות ערכה לפיתוח סוכנים (ADK)

התקנת ערכת פיתוח סוכנים (ADK)

פותחים כרטיסייה חדשה במסוף ב-Cloud Shell ויוצרים תיקייה בשם my-agents באופן הבא. עוברים גם לתיקייה my-agents.

mkdir my-agents
cd my-agents

עכשיו ניצור סביבה וירטואלית של Python באמצעות venv באופן הבא:

python -m venv .venv

מפעילים את הסביבה הווירטואלית באופן הבא:

source .venv/bin/activate

מתקינים את חבילות ה-ADK ואת MCP Toolbox for Databases יחד עם התלות של langchain באופן הבא:

pip install google-adk toolbox-core

עכשיו תוכלו להפעיל את כלי השירות adk באופן הבא.

adk

תוצג רשימה של פקודות.

$ adk
Usage: adk [OPTIONS] COMMAND [ARGS]...

  Agent Development Kit CLI tools.

Options:
  --help  Show this message and exit.

Commands:
  api_server  Starts a FastAPI server for agents.
  create      Creates a new app in the current folder with prepopulated agent template.
  deploy      Deploys agent to hosted environments.
  eval        Evaluates an agent given the eval sets.
  run         Runs an interactive CLI for a certain agent.
  web         Starts a FastAPI server with Web UI for agents.

יצירת אפליקציית הנציג הראשונה

עכשיו נשתמש ב-adk כדי ליצור פיגום לאפליקציית Google Cloud Release Notes Agent באמצעות הפקודה adk create עם שם האפליקציה **(gcp-releasenotes-agent-app)**כמו בדוגמה שלמטה.

adk create gcp-releasenotes-agent-app

פועלים לפי השלבים ובוחרים באפשרויות הבאות:

  • מודל Gemini לבחירת מודל לסוכן הבסיסי.
  • בוחרים ב-Vertex AI עבור הקצה העורפי.
  • יוצגו מזהה הפרויקט ב-Google ואזור ברירת המחדל. בוחרים את ברירת המחדל עצמה.
Choose a model for the root agent:
1. gemini-2.0-flash-001
2. Other models (fill later)

Choose model (1, 2): 1
1. Google AI
2. Vertex AI
Choose a backend (1, 2): 2

You need an existing Google Cloud account and project, check out this link for details:
https://google.github.io/adk-docs/get-started/quickstart/#gemini---google-cloud-vertex-ai

Enter Google Cloud project ID [YOUR_GOOGLE_PROJECT_ID]: 
Enter Google Cloud region [us-central1]: 

Agent created in ../my-agents/gcp-releasenotes-agent-app:
- .env
- __init__.py
- agent.py

בודקים את התיקייה שבה נוצרו תבנית ברירת מחדל והקבצים הנדרשים לסוכן.

הקובץ הראשון הוא .env. התוכן של הקובץ מוצג בהמשך:

GOOGLE_GENAI_USE_VERTEXAI=1
GOOGLE_CLOUD_PROJECT=YOUR_GOOGLE_PROJECT_ID
GOOGLE_CLOUD_LOCATION=YOUR_GOOGLE_PROJECT_REGION

הערכים מציינים שנשתמש ב-Gemini דרך Vertex AI, יחד עם הערכים המתאימים של מזהה הפרויקט ב-Google Cloud והמיקום.

אחר כך יש את הקובץ __init__.py שמסמן את התיקייה כמודול, ויש בו הצהרה אחת שמייבאת את הסוכן מהקובץ agent.py.

from . import agent

לסיום, נבדוק את הקובץ agent.py. התוכן מוצג בהמשך:

from google.adk.agents import Agent

root_agent = Agent(
    model='gemini-2.0-flash-001',
    name='root_agent',
    description='A helpful assistant for user questions.',
    instruction='Answer user questions to the best of your knowledge',
)

זהו הסוכן הפשוט ביותר שאפשר לכתוב באמצעות ADK. לפי התיעוד של ADK בדף, סוכן הוא יחידת ביצוע עצמאית שנועדה לפעול באופן אוטונומי כדי להשיג מטרות ספציפיות. סוכנים יכולים לבצע משימות, ליצור אינטראקציה עם משתמשים, להשתמש בכלים חיצוניים ולתאם עם סוכנים אחרים.

בפרט, סוכן LLM, שמכונה בדרך כלל סוכן, משתמש במודלים גדולים של שפה (LLM) כמנוע הליבה שלו כדי להבין שפה טבעית, להסיק מסקנות, לתכנן, ליצור תשובות ולהחליט באופן דינמי איך להמשיך או באילו כלים להשתמש. לכן הוא אידיאלי למשימות גמישות שמתמקדות בשפה. מידע נוסף על סוכני LLM

כך מסיימים את תהליך ה-scaffolding ליצירת סוכן בסיסי באמצעות ערכת פיתוח סוכנים (ADK). עכשיו נחבר את הסוכן שלנו ל-MCP Toolbox, כדי שהוא יוכל להשתמש בכלי הזה כדי לענות על שאילתות מהמשתמש (במקרה הזה, אלה יהיו הערות הגרסה של Google Cloud).

10. חיבור הסוכן שלנו לכלים

אנחנו הולכים לחבר את הסוכן הזה לכלים עכשיו. במסגרת ADK, כלי מייצג יכולת ספציפית שמוענקת לסוכן AI, ומאפשרת לו לבצע פעולות ולקיים אינטראקציה עם העולם מעבר ליכולות הליבה שלו של יצירת טקסט וניתוח.

במקרה שלנו, נצייד את הסוכן שלנו בכלים שהגדרנו בארגז הכלים של MCP למסדי נתונים.

משנים את הקובץ agent.py באמצעות הקוד הבא. שימו לב שאנחנו משתמשים ביציאה 5000 כברירת מחדל בקוד, אבל אם אתם משתמשים במספר יציאה חלופי, אתם צריכים להשתמש בו.

from google.adk.agents import Agent
from toolbox_core import ToolboxSyncClient

toolbox = ToolboxSyncClient("http://127.0.0.1:5000")

# Load all the tools
tools = toolbox.load_toolset('my_bq_toolset')

root_agent = Agent(
    name="gcp_releasenotes_agent",
    model="gemini-2.0-flash",
    description=(
        "Agent to answer questions about Google Cloud Release notes."
    ),
    instruction=(
        "You are a helpful agent who can answer user questions about the Google Cloud Release notes. Use the tools to answer the question"
    ),
    tools=tools,
)

עכשיו אפשר לבדוק את הסוכן שיאחזר נתונים אמיתיים ממערך הנתונים שלנו ב-BigQuery, שהוגדר באמצעות MCP Toolbox for Databases.

כדי לעשות את זה, צריך לפעול לפי הרצף הבא:

בטרמינל אחד של Cloud Shell, מפעילים את MCP Toolbox for Databases. יכול להיות שהיא כבר פועלת באופן מקומי ביציאה 5000, כמו שבדקנו קודם. אם לא, מריצים את הפקודה הבאה (מהתיקייה mcp-toolbox) כדי להפעיל את השרת:

./toolbox --tools_file "tools.yaml"

הפלט שיוצג צריך להראות שהשרת הצליח להתחבר למקורות הנתונים שלנו ושהוא טען את ערכת הכלים והכלים. דוגמה לפלט:

./toolbox --tools-file "tools.yaml"
2025-06-17T07:48:52.989710733Z INFO "Initialized 1 sources." 
2025-06-17T07:48:52.989805642Z INFO "Initialized 0 authServices." 
2025-06-17T07:48:52.989847035Z INFO "Initialized 1 tools." 
2025-06-17T07:48:52.989889742Z INFO "Initialized 2 toolsets." 
2025-06-17T07:48:52.990357879Z INFO "Server ready to serve!" 

אחרי שהשרת של MCP יופעל בהצלחה, מריצים את הסוכן במסוף אחר באמצעות הפקודה adk run (מהתיקייה my-agents) שמוצגת בהמשך. אפשר גם להשתמש בפקודה adk web.

$ adk run gcp-releasenotes-agent-app/

Log setup complete: /tmp/agents_log/agent.20250423_170001.log
To access latest log: tail -F /tmp/agents_log/agent.latest.log
Running agent gcp_releasenotes_agent, type exit to exit.

[user]: get me the google cloud release notes


[gcp_releasenotes_agent]: Here are the Google Cloud Release Notes.

Google SecOps SOAR: Release 6.3.49 is being rolled out to the first phase of regions. This release contains internal and customer bug fixes. Published: 2025-06-14

Compute Engine: Dynamic NICs let you add or remove network interfaces to or from an instance without having to restart or recreate the instance. You can also use Dynamic NICs when you need more network interfaces. The maximum number of vNICs for most machine types in Google Cloud is 10; however, you can configure up to 16 total interfaces by using Dynamic NICs. Published: 2025-06-13

Compute Engine: General purpose C4D machine types, powered by the fifth generation AMD EPYC processors (Turin) and Google Titanium, are generally available. Published: 2025-06-13

Google Agentspace: Google Agentspace Enterprise: App-level feature management. As an Agentspace administrator, you can choose to turn the following features on or off for your end users in the web app: Agents gallery, Prompt gallery, No-code agent, NotebookLM Enterprise. Published: 2025-06-13

Cloud Load Balancing: Cloud Load Balancing supports load balancing to multi-NIC instances that use Dynamic NICs. This capability is in Preview. Published: 2025-06-13

Virtual Private Cloud: Dynamic Network Interfaces (NICs) are available in Preview. Dynamic NICs let you update an instance to add or remove network interfaces without having to restart or recreate the instance. Published: 2025-06-13

Security Command Center: The following Event Threat Detection detectors for Vertex AI have been released to Preview:
- `Persistence: New Geography for AI Service`
- `Privilege Escalation: Anomalous Multistep Service Account Delegation for AI Admin Activity`
- `Privilege Escalation: Anomalous Multistep Service Account Delegation for AI Data Access`
- `Privilege Escalation: Anomalous Service Account Impersonator for AI Admin Activity`
- `Privilege Escalation: Anomalous Service Account Impersonator for AI Data Access`
- `Privilege Escalation: Anomalous Impersonation of Service Account for AI Admin Activity`
- `Persistence: New AI API Method`
......
......

שימו לב שהסוכן משתמש בכלי שהגדרנו בארגז הכלים של MCP למסדי נתונים (search_release_notes_bq), מאחזר את הנתונים ממערך הנתונים של BigQuery ומעצב את התשובה בהתאם.

11. מזל טוב

הגדרתם בהצלחה את MCP Toolbox for Databases והגדרתם מערך נתונים ב-BigQuery לגישה בתוך לקוחות MCP.

מאמרי עזרה