שימוש בשרת MCP מרוחק של Bigtable
במאמר הזה נסביר איך להשתמש בשרת Model Context Protocol (MCP) מרוחק של Bigtable כדי להתחבר לאפליקציות מבוססות-AI, כולל Gemini CLI, ChatGPT, Claude ואפליקציות בהתאמה אישית שאתם מפתחים. שרתי ה-MCP המרוחקים של Bigtable מאפשרים לכם לנהל טבלאות ומופעים של Bigtable ולבצע שאילתות על הנתונים. משתמשים בשרת ה-MCP של Admin למשימות ניהול, ובשרת ה-MCP של Data כדי להריץ שאילתות בטבלאות מתוך אפליקציית ה-AI. שרת ה-MCP המרוחק של Bigtable מופעל כשמפעילים את ממשקי ה-API של Bigtable.Model Context Protocol (MCP) הוא תקן שקובע איך מודלים גדולים של שפה (LLM) ואפליקציות או סוכני AI מתחברים למקורות נתונים חיצוניים. שרתי MCP מאפשרים להשתמש בכלים, במשאבים ובהנחיות שלהם כדי לבצע פעולות ולקבל נתונים מעודכנים משירות ה-Backend שלהם.
מה ההבדל בין שרתי MCP מקומיים לבין שרתי MCP מרחוק?
- שרתי MCP מקומיים
- בדרך כלל מריצים אותם במחשב המקומי ומשתמשים בזרמי הקלט והפלט הרגילים (stdio) לתקשורת בין שירותים באותו מכשיר.
- שרתי MCP מרוחקים
- פועל בתשתית של השירות ומציע נקודת קצה של HTTP לאפליקציות AI לצורך תקשורת בין לקוח ה-MCP של ה-AI לבין שרת ה-MCP. מידע נוסף על ארכיטקטורת MCP זמין במאמר ארכיטקטורת MCP.
ליבה בלי שמירת מצב
בגרסה MCP version 2026-07-28, פרוטוקול MCP משתנה מפרוטוקול דו-כיווני עם שמירת מצב לפרוטוקול בלי שמירת מצב.
כל בקשת MCP מתארת את עצמה ואפשר לנתב אותה באמצעות כותרות. אין צורך ב-initialize/initialized handshake או ב-Mcp-Session-Id כי כל בקשה כוללת את כל המידע שנדרש בכותרות HTTP או בפרמטר _meta. שרתי MCP יכולים לבקש מידע נוסף שנדרש על ידי כלי מסוים באמצעות בקשות מרובות הלוך ושוב (MRTR).
כדי שנוכל לנתב ולעבד בקשות בלי לנתח את גוף הבקשה, צריך לכלול כמה כותרות של MCP, כולל הכותרות הבאות:
- כותרות שנדרשות על פי מפרט ה-MCP, כמו כותרת גרסת הפרוטוקול וכותרות בקשה רגילות.
- כותרות בהתאמה אישית שמוגדרות על ידי שרת ה-MCP. הכותרות האלה משוכפלות בכותרות HTTP
מתוך סכימת הקלט של הכלי באמצעות המאפיין
x-mcp-header. לדוגמה, שרת MCP יכול להגדיר כותרת מותאמת אישית כדי לציין את Google Cloud האזור או מזהה הפרויקט.
מידע נוסף על ארכיטקטורת MCP זמין במפרט ובשינויים העיקריים של MCP גרסה 2026-07-28.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Bigtable Admin and Bigtable Data APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Bigtable Admin and Bigtable Data APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.- מריצים את הפקודה הבאה כדי להתקין את
cbtCLI :gcloud components install cbt
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לשימוש בשרתי Bigtable MCP, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שבו אתם רוצים להשתמש בשרת Bigtable MCP:
-
ביצוע קריאות לכלי ה-MCP:
משתמש בכלי ה-MCP (
roles/mcp.toolUser) -
שימוש בשרת ה-MCP של האדמין:
Bigtable Administrator (
roles/bigtable.admin) -
שימוש בשרת MCP של הנתונים:
Bigtable Reader (
roles/bigtable.reader)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות לשימוש בשרתי Bigtable MCP. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להשתמש בשרתי Bigtable MCP, נדרשות ההרשאות הבאות:
-
ביצוע קריאות לכלי MCP:
mcp.tools.call -
שימוש בשרת ה-MCP של האדמין:
-
bigtable.instances.create -
bigtable.instances.delete -
bigtable.instances.get -
bigtable.instances.list -
bigtable.tables.create -
bigtable.tables.delete -
bigtable.tables.get -
bigtable.tables.list
-
-
שימוש בשרת ה-MCP של הנתונים:
bigtable.instances.executeQuery
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
אימות והרשאה
שרתי Bigtable MCP משתמשים בפרוטוקול OAuth 2.0 עם ניהול זהויות והרשאות גישה (IAM) לאימות ולהרשאה. כל Google Cloud הזהויות נתמכות לצורך אימות לשרתי MCP.
שרת ה-MCP המרוחק של Bigtable לא מקבל מפתחות API.
אנחנו ממליצים ליצור זהות נפרדת לסוכנים באמצעות כלי MCP, כדי שתוכלו לשלוט בגישה למשאבים ולעקוב אחריה. מידע נוסף על אימות זמין במאמר אימות לשרתי MCP.
היקפי הרשאות OAuth של Bigtable MCP
ב-OAuth 2.0 משתמשים בהיקפי הרשאות ובפרטי כניסה כדי לקבוע אם לגורם מאומת יש הרשאה לבצע פעולה ספציפית במשאב. מידע נוסף על היקפי ההרשאות של OAuth 2.0 ב-Google זמין במאמר שימוש ב-OAuth 2.0 לגישה ל-Google APIs.
ל-Bigtable יש את היקפי ההרשאות הבאים ל-OAuth בכלי MCP:
| היקף URI ל-CLI של gcloud | תיאור |
|---|---|
https://www.googleapis.com/auth/bigtable.admin |
התפקיד הזה מעניק גישה מלאה למשאבי Bigtable ומאפשר להקצות תפקידי IAM ב-Bigtable. |
https://www.googleapis.com/auth/bigtable.data |
מאפשרת גישת קריאה וכתיבה לנתונים שמאוחסנים בטבלאות של Bigtable. |
יכול להיות שיידרשו היקפי הרשאות נוספים במשאבים שאליהם ניגשים במהלך הפעלת כלי. כדי לראות רשימה של היקפי ההרשאות שנדרשים ל-Bigtable, אפשר לעיין בהיקפי ההרשאות של OAuth ב-Bigtable.
הגדרת לקוח MCP לשימוש בשרתי MCP של Bigtable
אפליקציות וסוכנים מבוססי-AI, כמו Claude או Antigravity, יכולים ליצור מופע של לקוח MCP שמתחבר לשרת MCP יחיד. לאפליקציית AI יכולים להיות כמה לקוחות שמתחברים לשרתי MCP שונים. אם האפליקציה שלכם לא מופיעה בהנחיות הספציפיות ללקוח, תוכלו להשתמש במידע הבא כדי להתחבר מרוב האפליקציות.
באפליקציית ה-AI, מחפשים דרך להוסיף או להתחבר לשרת MCP מרוחק. בשרתי Bigtable MCP, מזינים את הפרטים הבאים, לפי הצורך:
- שם השרת:
- שרת Bigtable Admin MCP
- שרת MCP של נתוני Bigtable
- כתובת URL של השרת או נקודת קצה:
- Admin API: https://bigtableadmin.googleapis.com/mcp
- Data API: https://bigtable.googleapis.com/mcp
- העברה: Streamable HTTP
- פרטי אימות: בהתאם לשיטת האימות שרוצים להשתמש בה, אפשר להזין את Google Cloud פרטי הכניסה, מזהה לקוח וסוד לקוח של OAuth, או זהות ופרטי כניסה של סוכן. מידע נוסף על אימות זמין במאמר אימות לשרתי MCP.
- היקף הרשאות OAuth: היקף הרשאות OAuth של Bigtable שרוצים להשתמש בו כשמתחברים לשרתי ה-MCP של Bigtable.
URI של הפניה לכתובת אחרת
באפליקציות מבוססות-אינטרנט ובחלק מהאפליקציות למחשב, צריך להוסיף לרשימת ההיתרים URI להפניה אוטומטית כשיוצרים מזהה לקוח וסוד לאימות. שרת ההרשאות משתמש בכתובות URL להפניה אוטומטית כדי לשלוח אסימונים לאפליקציה שלכם. במסמכי התיעוד של האפליקציה צריך לציין את ה-URI להפניה אוטומטית שבו צריך להשתמש. אין תמיכה בכתובות URI מותאמות אישית להפניה אוטומטית.
הנחיות ספציפיות לאפליקציות לגבי הגדרה והתחברות לשרת MCP מפורטות במאמר הנחיות ספציפיות ללקוחות.
הנחיות כלליות נוספות זמינות במקורות המידע הבאים:
באילו כלים אפשר להשתמש
כדי לראות פרטים על כלי MCP זמינים ותיאורים שלהם בשרת MCP של Bigtable, אפשר לעיין בהפניה ל-Bigtable MCP.
כלים ליצירת רשימות
אפשר להשתמש בכלי לבדיקת MCP כדי להציג רשימה של כלים, או לשלוח בקשת HTTP tools/list ישירות לשרת MCP מרוחק של Bigtable. בשיטה tools/list לא נדרש אימות.
לשרת ה-MCP של האדמין, שולחים את הבקשה אל:
curl -X POST https://bigtableadmin.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"]
}
}
}
}
}
}'
לשרת ה-MCP של הנתונים, שולחים את הבקשה אל:
curl -X POST https://bigtable.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 אחרי שם השירות. לדוגמה, ב-Bigtable, יכול להיות שזה יהיהmcp/toolset-name. -
MCP_PROTOCOL_VERSION: גרסת פרוטוקול ה-MCP. לדוגמה,2026-07-28.
פרומפטים לדוגמה
אפשר להשתמש בפרומפטים לדוגמה הבאים כדי ליצור או למחוק משאבי Bigtable ולקבל מידע עליהם.
פרומפטים לדוגמה לאדמינים
- "Create an instance INSTANCE_ID in project PROJECT_ID in zone ZONE_ID with NODES nodes."
- "List instances in project." (הצגת רשימת המופעים בפרויקט PROJECT_ID)
- "Get instance INSTANCE_ID in project PROJECT_ID".
- "Delete instance INSTANCE_ID in project PROJECT_ID."
- "Create a table TABLE_ID in instance INSTANCE_ID in project PROJECT_ID."
- "List tables in instance INSTANCE_ID project PROJECT_ID."
- "Get table TABLE_ID in INSTANCE_ID project PROJECT_ID."
- "Delete table TABLE_ID in instance INSTANCE_ID project PROJECT_ID."
בפרומפטים, מחליפים את הערכים הבאים:
- PROJECT_ID במזהה הפרויקט ב- Google Cloud .
- INSTANCE_ID במזהה של מופע Bigtable.
- ZONE_ID עם האזור שבו האשכול פועל.
- TABLE_ID במזהה הטבלה ב-Bigtable.
- אם רוצים לשלוט במספר הצמתים באשכול, מחליפים את NODES במספר הצמתים שרוצים באשכול. אם לא מציינים ערך, ברירת המחדל היא
1.
פרומפטים לדוגמה לשאילתות על נתונים
- "תריץ שאילתה כדי לאחזר עד 10 שורות מהטבלה TABLE_ID במופע INSTANCE_ID בפרויקט PROJECT_ID".
- הרץ שאילתת SQL מול מכונה INSTANCE_ID תחת פרויקט PROJECT_ID:
SELECT _key, column_family, value FROM TABLE_ID WHERE row_key LIKE USER_ID. - "אחזר נתונים ממופע Bigtable INSTANCE_ID, פרויקט PROJECT_ID באמצעות פרופיל אפליקציה APP_PROFILE_ID עם השאילתה:
SELECT * FROM TABLE_ID WHERE cf1['status'] = 'ERROR'".
בפרומפטים, מחליפים את הערכים הבאים:
- TABLE_ID במזהה הטבלה ב-Bigtable.
- INSTANCE_ID במזהה של מופע Bigtable.
- PROJECT_ID במזהה הפרויקט ב- Google Cloud .
- USER_ID עם התבנית או מפתח השורה של המשתמש שרוצים לשלוח לו שאילתה.
- APP_PROFILE_ID במזהה פרופיל האפליקציה.
הגדרות אבטחה ובטיחות אופציונליות
השימוש ב-MCP כרוך בסיכוני אבטחה חדשים ובשיקולים חדשים, בגלל המגוון הרחב של הפעולות שאפשר לבצע באמצעות כלי ה-MCP. כדי למזער את הסיכונים האלה ולנהל אותם,Google Cloud מציע הגדרות ברירת מחדל ומדיניות שניתנת להתאמה אישית כדי לשלוט בשימוש בכלי MCP בארגון או בפרויקט שלכם ב- Google Cloud.
מידע נוסף על אבטחה וניהול של MCP זמין במאמר בנושא אבטחה ובטיחות של AI.
שימוש בהגנה מוגברת על המודל
Model Armor הואGoogle Cloud שירות שנועד לשפר את האבטחה והבטיחות של אפליקציות ה-AI שלכם. ההגנה פועלת על ידי סינון יזום של הנחיות ותשובות של מודלים גדולים של שפה (LLM), כדי להגן מפני סיכונים שונים ולתמוך בשיטות עבודה אחראיות של AI. בין אם אתם פורסים AI בסביבת הענן שלכם או אצל ספקי שירותי ענן חיצוניים, הגנה מוגברת על המודל יכול לעזור לכם למנוע קלט זדוני, לאמת את בטיחות התוכן, להגן על מידע אישי רגיש, לשמור על תאימות ולאכוף את מדיניות הבטיחות והאבטחה של ה-AI באופן עקבי בסביבת ה-AI המגוונת שלכם.
כשמפעילים את Model Armor עם הפעלת רישום ביומן, המערכת רושמת ביומן את כל מטען הנתונים. יכול להיות שהפעולה הזו תחשוף מידע רגיש ביומנים שלכם.
ניתוב בקשות של MCP אל Model Armor
Model Armor זמין באזורים מסוימים. כש-Model Armor מופעל ואתם משתמשים בשרת MCP בתחום שיפוט ש-Model Armor לא תומך בו, יכול להיות שהתנהגות הניתוב של השיחה תהיה שונה עבור שרתי MCP שונים, ושהיא תפגע בתאימות של נתוני השימוש והנתונים במעבר לדרישות של שמירת נתונים. מידע נוסף על ההתנהגות של שרתי MCP בודדים זמין במאמר הגנה מוגברת על המודל: מוצרים נתמכים.הפעלת הגנה מוגברת על המודל
כדי להשתמש בהגנה מוגברת על המודל, צריך להפעיל קודם את ממשקי ה-API של הגנה מוגברת על המודל.
המסוף
מפעילים את הגנה מוגברת על המודל API, אם הוא עדיין לא מופעל.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםבוחרים את הפרויקט שבו רוצים להפעיל את הגנה מוגברת על המודל.
gcloud
לפני שמתחילים, צריך לבצע את השלבים הבאים באמצעות Google Cloud CLI עם Model Armor API:
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
-
מריצים את הפקודה הבאה כדי להגדיר את נקודת קצה ל-API לשירות הגנה מוגברת על המודל.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
מחליפים את
LOCATIONבאזור שבו רוצים להשתמש בהגנה מוגברת על המודל.
הגדרת הגנה לשרתי MCP של Google ושרתי Google Cloud MCP מרוחקים
כדי להגן על השיחות עם כלי ה-MCP והתגובות שלו, אפשר להשתמש בהגדרות של Model Armor. הגדרת רמת הבסיס מגדירה את מסנני האבטחה המינימליים שחלים על הפרויקט. ההגדרה הזו מחילה קבוצה עקבית של מסננים על כל הקריאות והתשובות של כלי 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 אחראי – מסוכן'. אפשר לשנות את ההגדרה הזו, אבל ערכים נמוכים יותר עלולים להוביל ליותר תוצאות חיוביות כוזבות. מידע נוסף זמין במאמר בנושא רמות הסמך של הגנה מוגברת על המודל.
השבתת סריקת תנועת נתונים של MCP באמצעות Model Armor
כדי להפסיק את הסריקה האוטומטית של התנועה אל השרתים של Google MCP וממנה על ידי Model Armor, על סמך הגדרות הרצפה של הפרויקט, מריצים את הפקודה הבאה:
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. Model Armor משולב עם שירותים כמו Vertex AI, ולכן כל שינוי שתבצעו בהגדרות של רמת הבסיס יכול להשפיע על סריקת התנועה ועל התנהגויות הבטיחות בכל השירותים המשולבים, ולא רק ב-MCP.
שליטה בשימוש ב-MCP באמצעות מדיניות IAM
כללי מדיניות הדחייה וכללי מדיניות ההרשאה של ניהול הזהויות והרשאות הגישה (IAM) עוזרים לכם לאבטח את שרתי Google Cloud ו-Google MCP.
אתם יכולים לשלב כמה קריטריונים כדי ליצור מדיניות אבטחה ומדיניות ניהול בהתאמה אישית, על ידי מתן או דחייה של גישה על סמך הקריטריונים הבאים:
- הקרן.
- מאפייני כלי כמו מאפיין הקריאה בלבד.
- שם השירות או שם הכלי.
- מזהה הלקוח של האפליקציה ב-OAuth.
מידע נוסף זמין במאמר שליטה בשימוש ב-MCP באמצעות ניהול זהויות וגישה.
המאמרים הבאים
- מאמרי העזרה של Bigtable MCP
- מידע נוסף על השרתים של Google Cloud MCP
- שיטות מומלצות לאבטחת אינטראקציות של סוכנים עם Model Context Protocol.