שימוש בשרת ה-MCP של BigQuery

במאמר הזה מוסבר איך להשתמש בשרת Model Context Protocol‏ (MCP) מרוחק של BigQuery כדי להתחבר לאפליקציות AI, כולל Antigravity, ‏ ChatGPT, ‏ Claude ואפליקציות בהתאמה אישית שאתם מפתחים. אתם יכולים להשתמש בשרת MCP מרוחק של BigQuery כדי לבצע משימות כמו הרצת שאילתות, קבלת מטא-נתונים והצגת רשימת משאבים. שרת ה-MCP המרוחק של BigQuery מופעל כשמפעילים את BigQuery API.

‫Model Context Protocol (‏MCP) הוא תקן שמגדיר איך מודלים גדולים של שפה (LLM) ואפליקציות או סוכנים של AI מתחברים למקורות נתונים חיצוניים. שרתי MCP מאפשרים לכם להשתמש בכלים, במשאבים ובהנחיות שלהם כדי לבצע פעולות ולקבל נתונים מעודכנים משירות הקצה העורפי שלהם.

מה ההבדל בין שרתי MCP מקומיים לשרתי MCP מרוחקים?

שרתי MCP מקומיים
בדרך כלל פועלים במחשב המקומי ומשתמשים בזרמי הקלט והפלט הסטנדרטיים (stdio) לתקשורת בין שירותים באותו מכשיר.
שרתי MCP מרוחקים
הם פועלים בתשתית של השירות ומציעים נקודת קצה (endpoint) מסוג HTTP לאפליקציות AI, כדי לאפשר תקשורת בין לקוח ה-MCP של ה-AI לבין שרת ה-MCP. מידע נוסף על ארכיטקטורת MCP

ליבה ללא שמירת מצב

בגרסת MCP‏ 2026-07-28, פרוטוקול MCP משתנה מפרוטוקול דו-כיווני עם שמירת מצב (stateful) לפרוטוקול ללא שמירת מצב (stateless). כל בקשת MCP מתארת את עצמה ואפשר לנתב אותה באמצעות כותרות. אין צורך בלחיצת היד של initialize/initialized או ב-Mcp-Session-Id כי כל בקשה כוללת את כל המידע שנדרש בכותרות HTTP או בפרמטר _meta. שרתי MCP יכולים לבקש מידע נוסף שנדרש לכלי באמצעות בקשות הלוך ושוב (MRTR).

כדי לנתב ולעבד בקשות בלי לנתח את גוף הבקשה, נדרשות כמה כותרות MCP, כולל:

למידע נוסף על הארכיטקטורה של MCP, קראו את המפרט של MCP בגרסה 2026-07-28 ואת השינויים העיקריים.

יכול להיות שתשתמשו בשרת MCP המקומי של BigQuery מהסיבות הבאות:

  • אתם צריכים ליצור כלי בהתאמה אישית על סמך שאילתת SQL עם פרמטרים.
  • אין לכם הרשאות להפעיל את שרת ה-MCP או להשתמש בו בפרויקט.

כדי לאפשר לנציגים לגשת ליכולות מתקדמות של BigQuery כמו תזמון, ניהול הרשאות וניהול הזמנות, משתמשים בכלי run_bq_command שזמין בשרת Google Cloud CLI MCP. מידע נוסף מופיע במאמר שימוש בשרת MCP מרוחק של Google Cloud CLI.

במאמר קישור של מודלי LLM ל-BigQuery באמצעות MCP מוסבר איך משתמשים בשרת MCP מקומי. הקטעים הבאים רלוונטיים רק לשרת ה-MCP המרוחק של BigQuery.

שרתי MCP של Google ושרתי MCP מרוחקים של Google Cloud

לשרתי MCP מרוחקים של Google ושל Google Cloud יש את התכונות והיתרונות הבאים:

  • חיפוש פשוט ומרוכז
  • נקודות קצה (endpoints) מנוהלות של HTTP גלובלי או אזורי
  • הרשאה פרטנית
  • אבטחה אופציונלית של הנחיות ותשובות באמצעות הגנה מוגברת על המודל
  • רישום מרכזי ביומן הביקורת

במאמר סקירה כללית על שרתי Google Cloud MCP מוסבר על שרתי MCP אחרים ועל אמצעי הבקרה לאבטחה ולמשילות שזמינים לשרתי Google Cloud MCP.

לפני שמתחילים

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  3. מפעילים את BigQuery API, אם הוא עדיין לא מופעל.

    התפקידים שנדרשים כדי להפעיל ממשקי API

    כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, אתם יכולים לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים?

    להפעלת ה-API

    בפרויקטים חדשים, BigQuery API מופעל באופן אוטומטי.

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

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לשימוש בשרת BigQuery MCP, בקשו מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שבו אתם רוצים להשתמש בשרת BigQuery MCP:

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

התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות כדי להשתמש בשרת MCP של BigQuery. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:

ההרשאות הנדרשות

כדי להשתמש בשרת MCP של BigQuery, נדרשות ההרשאות הבאות:

  • מפעיל קריאות לכלי MCP: mcp.tools.call
  • הרצת משימות ב-BigQuery: bigquery.jobs.create
  • הרצת שאילתות על נתונים ב-BigQuery: bigquery.tables.getData

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

יכול להיות שתידרשו להרשאות נוספות ב-BigQuery, בהתאם למשימה. במאמר תפקידים והרשאות של IAM ב-BigQuery יש מידע נוסף על הרשאות ב-BigQuery.

אימות והרשאה

שרתי BigQuery MCP משתמשים בפרוטוקול OAuth 2.0 עם IAM לאימות ולהרשאה. כל Google Cloud הזהויות נתמכות לאימות בשרתי MCP.

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

היקפי ההרשאות של OAuth ב-BigQuery MCP

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

ל-BigQuery יש את היקפי ההרשאות הבאים של OAuth לכלי MCP:

URI של היקף ההרשאות ל-CLI של gcloud תיאור
https://www.googleapis.com/auth/bigquery הצגה וניהול של הנתונים שלך ב-BigQuery והצגת כתובת האימייל של חשבון Google שלך.

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

הגדרת לקוח MCP לשימוש בשרת MCP של BigQuery

אפליקציות וסוכני AI, כמו Claude או Antigravity, יכולים ליצור מופע של לקוח MCP שמתחבר לשרת MCP יחיד. לאפליקציית AI יכולים להיות כמה לקוחות שמתחברים לשרתי MCP שונים. אם האפליקציה שלכם לא מופיעה בהנחיות הספציפיות ללקוח, תוכלו להשתמש במידע הבא כדי להתחבר מרוב האפליקציות.

באפליקציית ה-AI, מחפשים דרך להוסיף שרת MCP מרוחק או להתחבר אליו. בשרת MCP של BigQuery, מזינים את הפרטים הבאים לפי הצורך:

  • שם השרת: שרת BigQuery MCP
  • כתובת ה-URL של השרת או נקודת הקצה (endpoint): https://bigquery.googleapis.com/mcp
  • תעבורה: HTTP שניתן להעביר בסטרימינג
  • פרטי אימות: בהתאם לשיטת האימות שאתם רוצים להשתמש בה, אתם יכולים להזין את Google Cloud פרטי הכניסה, את מזהה הלקוח והסוד של OAuth או את פרטי הכניסה והזהות של הנציג. מידע נוסף על אימות זמין במאמר אימות בשרתי MCP.
  • ‫OAuth scope: היקף ההרשאות של OAuth 2.0 שבו רוצים להשתמש כשמתחברים לשרת ה-MCP של BigQuery.

‫URI של הפניה אוטומטית

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

בקטע הנחיות ספציפיות ללקוח מוסבר איך להגדיר שרת MCP ולהתחבר אליו באפליקציות ספציפיות.

למידע כללי נוסף, אפשר לעיין במקורות המידע הבאים:

באילו כלים אפשר להשתמש

בחומרי העזר של BigQuery MCP מפורטים הכלים שזמינים בשרת ה-MCP של BigQuery והתיאורים שלהם.

מגבלות

כלי ה-MCP של BigQuery כפופים למגבלות הבאות:

  • הכלים execute_sql ו-execute_sql_readonly לא תומכים בשאילתות בטבלאות חיצוניות של Google Drive.
  • כברירת מחדל, הכלים execute_sql ו-execute_sql_readonly מגבילים את זמן עיבוד השאילתה ל-3 דקות. שאילתות שפועלות יותר משלוש דקות מבוטלות באופן אוטומטי.
  • תוצאות השאילתה מוגבלות ל-3,000 שורות לכל היותר.
  • הכלי execute_sql_readonly מאפשר רק פעולות לקריאה בלבד בנתונים. אין תמיכה במוטציות כמו הצהרות DML, הצהרות DDL ופונקציות UDF ב-Python.
  • הכלי execute_sql_readonly לא תומך בשאילתות שמשתמשות ב-Graph Query Language‏ (GQL).

כלים לרשימות

משתמשים ב-MCP inspector כדי להציג את רשימת הכלים, או שולחים בקשת HTTP מסוג tools/list ישירות לשרת ה-MCP המרוחק של BigQuery. השיטה tools/list לא דורשת אימות.

curl -X POST https://bigquery.googleapis.com/TOOLSET_ENDPOINT \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'MCP-Protocol-Version: MCP_PROTOCOL_VERSION' \
    -H 'Mcp-Method: tools/list' \
    -d '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "tools/list",
      "params": {
        "_meta": {
          "io.modelcontextprotocol/protocolVersion": "MCP_PROTOCOL_VERSION",
          "io.modelcontextprotocol/clientCapabilities": {
            "extensions": {
              "io.modelcontextprotocol/ui": {
                "mimeTypes": ["text/html;profile=mcp-app"]
              }
            }
          }
        }
      }
    }'

מחליפים את מה שכתוב בשדות הבאים:

  • ‫TOOLSET_ENDPOINT: החלק שנותר בנקודת הקצה של ה-MCP אחרי שם השירות. לדוגמה, ב-BigQuery זה יכול להיות mcp/toolset-name.
  • ‫MCP_PROTOCOL_VERSION: גרסת פרוטוקול ה-MCP. לדוגמה, 2026-07-28.

דחיית הגישה לכלי קריאה וכתיבה

כלי ה-MCP היחיד שהוא לא לקריאה בלבד הוא execute_sql. כדי להגביל את הגישה לכלי execute_sql, אתם יכולים ליצור מדיניות דחייה שמגבילה את השימוש בכלי MCP לקריאה וכתיבה.

תרחישים לדוגמה

הנה כמה דוגמאות לתרחישים לדוגמה של שרת BigQuery MCP:

  • ליצור תהליכי עבודה שמשתמשים בתובנות מנתוני BigQuery כדי להפעיל פעולות מסוימות, כמו יצירת בעיות וכתיבת אימיילים.

  • להשתמש ביכולות המתקדמות של BigQuery, כמו חיזוי, כדי לקבל תובנות ברמה גבוהה יותר.

  • אתם יכולים ליצור ממשק צ'אט עם AI למשתמשים שלכם באמצעות הוראות מותאמות אישית לסוכן.

  • צ'אט עם נתוני הגרף באמצעות GQL.

פרומפטים לדוגמה

אתם יכולים להשתמש בהנחיות הבאות לדוגמה כדי לקבל מידע על משאבים ב-BigQuery, להפיק תובנות ולנתח נתונים ב-BigQuery:

  • "הצג את מערכי הנתונים בפרויקט PROJECT_ID".
  • "מצא את כל השאילתות שהרצתי בפרויקט PROJECT_ID באמצעות שרת ה-MCP באזור REGION. כדי לזהות את משימות השאילתות שהופעלו דרך שרת ה-MCP, משתמשים בתג goog-mcp-server:true.
  • "מצא את ההזמנות המובילות לפי נפח מ-DATASET_ID בפרויקט PROJECT_ID. זהה את הטבלאות המתאימות, מצא את הסכימה הנכונה והצג את התוצאות".
  • "צור תחזית בטבלה PROJECT_ID.DATASET_ID.TABLE_ID לשנים הבאות. צריך להשתמש ב-COLUMN_NAME בתור עמודת הנתונים וב-COLUMN_NAME בתור עמודת חותמת הזמן. הצג את 10 התחזיות המובילות".

בהנחיות, מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud
  • ‫REGION: שם האזור
  • ‫DATASET_ID: שם מערך הנתונים
  • ‫TABLE_ID: שם הטבלה
  • ‫COLUMN_NAME: שם העמודה

הגדרות אופציונליות של אבטחה ובטיחות

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

מידע נוסף על אבטחה ופיקוח ב-MCP זמין במאמר אבטחה ובטיחות ב-AI.

שימוש ב-Model Armor

הגנה מוגברת על המודל היא שירות שלGoogle Cloud שנועד לשפר את האבטחה והבטיחות של אפליקציות ה-AI שלכם. הוא פועל באופן יזום כדי לסנן הנחיות ותשובות של מודלי LLM, להגן מפני סיכונים שונים ולתמוך בשיטות לפיתוח אחראי של AI. לא משנה אם אתם פורסים את ה-AI בסביבת הענן שלכם או אצל ספקי שירותי ענן חיצוניים, אתם יכולים להשתמש ב"הגנה מוגברת על המודל" כדי למנוע קלט זדוני, לוודא שהתוכן בטוח, להגן על מידע אישי רגיש, לשמור על תאימות ולאכוף את מדיניות הבטיחות והאבטחה של ה-AI באופן עקבי בכל סביבת ה-AI המגוונת שלכם.

כשהתכונה "הגנה מוגברת על המודל" מופעלת והרישום ביומן מופעל, התכונה מתעדת ביומן את כל המטען הייעודי (payload). זה עלול לחשוף מידע רגיש ביומנים.

ניתוב בקשות של MCP ל-Model Armor

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

הפעלת Model Armor

כדי להשתמש ב-Model Armor, צריך להפעיל את ממשקי ה-API של Model Armor.

המסוף

  1. מפעילים את Model Armor API, אם הוא עדיין לא מופעל.

    התפקידים שנדרשים כדי להפעיל ממשקי API

    כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, אתם יכולים לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים?

    להפעלת ה-API

  2. בוחרים את הפרויקט שבו רוצים להפעיל את Model Armor.

gcloud

לפני שמתחילים, מבצעים את השלבים הבאים באמצעות Google Cloud CLI עם Model Armor API:

  1. התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

    gcloud init

  2. מריצים את הפקודה הבאה כדי להגדיר את נקודת הקצה ל-API של שירות Model Armor.

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    מחליפים את LOCATION באזור שבו רוצים להשתמש ב-Model Armor.

הגדרת הגנה לשרתי MCP של Google ו Google Cloud שרתי MCP מרוחקים

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

מגדירים את ההגנה המוגברת על המודל עם הסרת תוכן זדוני או רגיש ב-MCP. מידע נוסף זמין במאמר הגדרת רמות הסינון של Model Armor.

דוגמה לפקודה:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

מחליפים את PROJECT_ID במזהה הפרויקט ב- Google Cloud .

שימו לב להגדרות הבאות:

  • ‫INSPECT_AND_BLOCK: סוג האכיפה שבודק את התוכן בשרת MCP של Google וחוסם הנחיות ותשובות שתואמות למסננים.
  • ‫ENABLED: ההגדרה שמפעילה סינון או אכיפה.
  • ‫MEDIUM_AND_ABOVE: רמת הסמך של הגדרות הסינון של AI אחראי – תוכן מסוכן. אפשר לשנות את ההגדרה הזו, אבל ערכים נמוכים יותר עלולים לגרום ליותר תוצאות חיוביות כוזבות. מידע נוסף מופיע במאמר רמות הסמך של Model Armor.

השבתת הסריקה של תנועת MCP באמצעות Model Armor

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

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

מחליפים את PROJECT_ID במזהה הפרויקט ב- Google Cloud . התכונה "הגנה מוגברת על המודל" לא מחילה באופן אוטומטי את הכללים שמוגדרים בהגדרות המינימום של הפרויקט הזה על תנועה בשרת MCP של Google.

הגדרות הסף וההגדרות הכלליות של Model Armor יכולות להשפיע על יותר מאשר רק MCP. מכיוון שהגנה מוגברת על המודל משתלבת עם שירותים כמו Vertex AI, כל שינוי שתבצעו בהגדרות של רף הסינון יכול להשפיע על סריקת התנועה ועל התנהגויות הבטיחות בכל השירותים המשולבים, ולא רק ב-MCP.

שליטה בשימוש ב-MCP באמצעות מדיניות IAM

כללי מדיניות הדחייה וכללי מדיניות ההרשאה של ניהול זהויות והרשאות גישה (IAM) עוזרים לכם לאבטח את Google Cloud ואת שרתי Google MCP.

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

  • חשבון המשתמש.
  • מאפייני כלים כמו המאפיין "לקריאה בלבד".
  • שם השירות או שם הכלי.
  • מזהה הלקוח ב-OAuth של האפליקציה.

מידע נוסף זמין במאמר שליטה בשימוש ב-MCP באמצעות ניהול זהויות והרשאות גישה.

מכסות ומגבלות

לשרת ה-MCP של BigQuery אין מכסות משלו. אין הגבלה על מספר הקריאות שאפשר לבצע לשרת ה-MCP.

אתם עדיין כפופים למכסות שנאכפות על ידי קריאות ל-API שמופעלות על ידי הכלים של שרת ה-MCP. הכלים של שרת ה-MCP קוראים לשיטות ה-API הבאות:

כלי שיטת ה-API מכסות
list_dataset_ids datasets.list מכסות ומגבלות של מערכי נתונים
list_table_ids tables.list מכסות ומגבלות של טבלאות
get_dataset_info datasets.get מכסות ומגבלות של מערכי נתונים
get_table_info tables.get מכסות ומגבלות של טבלאות
execute_sql jobs.Query מכסות ומגבלות של משימות שאילתה
execute_sql_readonly jobs.Query מכסות ומגבלות של משימות שאילתה

מידע נוסף על מכסות ב-BigQuery

המאמרים הבאים