שרת ה-MCP המרוחק של Cloud Run מופעל כשמפעילים את Cloud Run Admin API.
Model Context Protocol (MCP) הוא תקן שקובע איך מודלים גדולים של שפה (LLM) ואפליקציות או סוכני AI מתחברים למקורות נתונים חיצוניים. שרתי MCP מאפשרים לכם להשתמש בכלים, במשאבים ובהנחיות שלהם כדי לבצע פעולות ולקבל נתונים מעודכנים משירות ה-Backend שלהם.
מה ההבדל בין שרתי MCP מקומיים לבין שרתי MCP מרחוק?
- שרתי MCP מקומיים
- בדרך כלל פועלים במחשב המקומי ומשתמשים בזרמי הקלט והפלט הרגילים (stdio) לתקשורת בין שירותים באותו מכשיר.
- שרתי MCP מרוחקים
- פועל בתשתית של השירות ומציע נקודת קצה של HTTP לאפליקציות AI לצורך תקשורת בין לקוח ה-MCP של ה-AI לבין שרת ה-MCP. מידע נוסף על ארכיטקטורת ה-MCP זמין במאמר ארכיטקטורת ה-MCP.
מידע על שרת ה-MCP המקומי של Cloud Run זמין במאמר שרת ה-MCP של Cloud Run ב-GitHub.
Google ושרתי MCP מרוחקים Google Cloud
לשרתי MCP מרוחקים של Google יש את התכונות והיתרונות הבאים: Google Cloud- גילוי פשוט ומרכזי
- נקודות קצה (endpoints) מנוהלות של HTTP ברמה הגלובלית או האזורית
- הרשאות פרטניות
- אבטחת הנחיות ותשובות אופציונלית באמצעות הגנה מוגברת על המודל
- רישום מרכזי ביומן הביקורת
מידע על שרתי MCP אחרים ועל אמצעי אבטחה ובקרה שזמינים לשרתי Google Cloud MCP מופיע במאמר סקירה כללית על שרתי Google Cloud MCP.
כדאי להשתמש בשרת MCP מקומי של Cloud Run מהסיבות הבאות:
- פיתוח ובדיקה מקומיים
- שימוש ב-MCP במצב אופליין
לפני שמתחילים
- נכנסים לחשבון 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.
-
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.
מפעילים את Cloud Run API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק 'שימוש בשירות'' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים- מתקינים ומפעילים את ה-CLI של gcloud.
-
עדכון רכיבים:
gcloud components update
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לשימוש בשרת MCP ב-Cloud Run, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שבו אתם רוצים להשתמש בשרת MCP ב-Cloud Run:
-
יצירת שירותים של Cloud Run:
Cloud Run Developer (
roles/run.developer) -
הפעלת פעולות כחשבון השירות: משתמש בחשבון שירות (
roles/iam.serviceAccountUser) -
גישה למאגר Artifact Registry של קובץ אימג' של קונטיינר שנפרס:
roles/artifactregistry.reader(Artifact Registry Reader ) -
שימוש בחשבון שירות חוצה-פרויקטים כדי לפרוס שירות: יצירת אסימונים בחשבון שירות (
roles/iam.serviceAccountTokenCreator) -
ביצוע קריאות לכלי MCP:
משתמש בכלי MCP (
roles/mcp.toolUser)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות לשימוש בשרת MCP של Cloud Run. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי להשתמש בשרת MCP של Cloud Run, נדרשות ההרשאות הבאות:
-
ביצוע קריאות לכלי ה-MCP:
mcp.tools.call -
קבלת הנחיות ל-Cloud Run:
run.prompts.get -
רשימת שירותי Cloud Run:
run.services.list -
יוצרים שירותים חדשים של Cloud Run:
run.services.create -
מורידים את קובץ האימג' של הקונטיינר של שירות Cloud Run:
artifactregistry.repositories.downloadArtifacts
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם שירות Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח ב-Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.
אימות והרשאה
שרת ה-MCP המרוחק של Cloud Run משתמש בפרוטוקול OAuth 2.0 עם ניהול זהויות והרשאות גישה (IAM) לאימות ולהרשאה. כל Google Cloud הזהויות נתמכות לצורך אימות לשרתי MCP.שרת ה-MCP המרוחק של Cloud Run לא מקבל מפתחות API.
אנחנו ממליצים ליצור זהות נפרדת לסוכנים שמשתמשים בכלים של MCP, כדי שתוכלו לשלוט בגישה למשאבים ולעקוב אחריה. מידע נוסף על אימות זמין במאמר אימות לשרתי MCP.
היקפי הרשאות OAuth של MCP ב-Cloud Run
ב-OAuth 2.0 משתמשים בהיקפי הרשאות ובפרטי כניסה כדי לקבוע אם לגורם מאומת מסוים יש הרשאה לבצע פעולה ספציפית במשאב. מידע נוסף על היקפי OAuth 2.0 ב-Google זמין במאמר שימוש ב-OAuth 2.0 לגישה ל-Google APIs.
אלה היקפי ההרשאות של כלי ה-MCP ב-Cloud Run:
| URI של היקף ל-CLI של gcloud | תיאור |
|---|---|
https://www.googleapis.com/auth/run.readonly |
היקף ההרשאות הזה מאפשר גישה רק לקריאת נתונים. |
https://www.googleapis.com/auth/run |
היקף ההרשאות הזה מאפשר לקרוא ולשנות נתונים. |
יכול להיות שיידרשו היקפי הרשאות נוספים במשאבים שאליהם ניגשים במהלך הפעלת כלי. רשימת ההיקפים שנדרשים ל-Cloud Run זמינה במאמר בנושא Cloud Run Admin API.
הגדרת לקוח MCP לשימוש בשרת MCP ב-Cloud Run
אפליקציות וסוכנים מבוססי-AI, כמו Claude או Antigravity, יכולים ליצור מופע של לקוח MCP שמתחבר לשרת MCP יחיד. לאפליקציית AI יכולים להיות כמה לקוחות שמתחברים לשרתי MCP שונים. אם האפליקציה שלכם לא מופיעה בהנחיות הספציפיות ללקוח, תוכלו להשתמש במידע הבא כדי להתחבר מרוב האפליקציות.
באפליקציית ה-AI, מחפשים דרך להוסיף או להתחבר לשרת MCP מרוחק. בשרת ה-MCP של Cloud Run, מזינים את הפרטים הבאים לפי הצורך:
- Server name (שם השרת): שרת Cloud Run MCP
- כתובת URL של השרת או נקודת קצה:
https://run.googleapis.com/mcpאוhttps://run.REGION.rep.googleapis.com/mcp(גרסת Preview) - Transport: HTTP
- פרטי אימות: בהתאם לשיטת האימות שבה רוצים להשתמש, אפשר להזין את Google Cloud פרטי הכניסה, את מזהה הלקוח וסוד הלקוח של OAuth, או את הזהות ופרטי הכניסה של סוכן. מידע נוסף על אימות זמין במאמר אימות לשרתי MCP.
URI של הפניה אוטומטית
באפליקציות מבוססות-אינטרנט ובחלק מהאפליקציות למחשב, צריך להוסיף לרשימת ההיתרים URI להפניה אוטומטית כשיוצרים מזהה לקוח וסוד לאימות. שרת ההרשאות משתמש בכתובות ה-URI להפניה אוטומטית כדי לשלוח טוקנים לאפליקציה שלכם. במסמכי התיעוד של האפליקציה צריך לציין את ה-URI להפניה אוטומטית שבו צריך להשתמש. אין תמיכה בכתובות URI מותאמות אישית להפניה אוטומטית.
הנחיות ספציפיות לאפליקציות לגבי הגדרה וחיבור לשרת MCP מפורטות במאמר הנחיות ספציפיות ללקוחות.
הנחיות כלליות נוספות זמינות במקורות המידע הבאים:
כלים זמינים
כדי לראות פרטים על כלי MCP זמינים והתיאורים שלהם לשרת MCP של Cloud Run, אפשר לעיין בהפניה ל-MCP של Cloud Run.
תרחישים לדוגמה
אלה תרחישים לדוגמה לשימוש בשרת MCP של Cloud Run:
לאפשר לסוכן לפרוס שירות Cloud Run בפרויקט.
אפשר לסוכן לפרוס אפליקציות עם קוד ויברציות ב-Cloud Run מקוד מקור או מקובץ zip.
קבלת רשימה של שירותי Cloud Run ופרטי השירות לפי שם, פרויקט ואזור.
פריסה של שירות אינטרנט ציבורי או פרטי ב-Cloud Run מקובץ אימג' של Docker שנבנה מראש מ-Artifact Registry או מ-Docker Hub עם קבוצה של משתני סביבה ספציפיים לפרויקט ולאזור.
פרומפטים לדוגמה
אפשר להשתמש בהנחיות לדוגמה הבאות כדי לקבל מידע על שירותי Cloud Run ולנתח את יומני השירות של Cloud Run:
- פרוס שירות Cloud Run פרטי בשם
SERVICE_NAMEמקובץ אימג' של Dockerus-docker.pkg.dev/cloudrun/container/helloלפרויקטPROJECT_ID. - "List the services in project
PROJECT_ID." - "Find the details of a service that I deployed on project
PROJECT_IDusing the MCP server in theREGIONregion."
בהנחיות, מחליפים את מה שכתוב בשדות הבאים:
-
SERVICE_NAME: השם של שירות Cloud Run -
PROJECT_ID: מזהה הפרויקט Google Cloud -
REGION: שם האזור
שימוש בפרומפט /deploy
אתם יכולים להשתמש בהנחיה /deploy כדי לפרוס במהירות שירות Cloud Run באמצעות שרת ה-MCP של Cloud Run. יכול להיות שתצטרכו לנווט בתפריט של הצ'אטבוט כדי למצוא את הכלי או ההנחיה שאתם צריכים.
כדי לפרוס את ספריית העבודה הנוכחית ב-Cloud Run, מריצים את ההנחיה
/deployהבאה:/deploy
SERVICE_NAME\ --projectPROJECT_ID\ --regionREGION\מחליפים את מה שכתוב בשדות הבאים:
-
SERVICE_NAME: השם של שירות Cloud Run -
PROJECT_ID: מזהה הפרויקט Google Cloud -
REGION: שם האזור
-
הגדרות אבטחה ובטיחות אופציונליות
השימוש ב-MCP מציג סיכוני אבטחה חדשים ושיקולים חדשים, בגלל המגוון הרחב של הפעולות שאפשר לבצע באמצעות כלי MCP. כדי למזער את הסיכונים האלה ולנהל אותם,Google Cloud מציע הגדרות ברירת מחדל ומדיניות שניתנת להתאמה אישית כדי לשלוט בשימוש בכלי MCP בארגון או בפרויקט שלכם ב- Google Cloud.
מידע נוסף על אבטחה וניהול של MCP זמין במאמר בנושא אבטחה ובטיחות של AI.
שימוש בהגנה מוגברת על המודל
Model Armor הואGoogle Cloud שירות שנועד לשפר את האבטחה והבטיחות של אפליקציות ה-AI שלכם. היא פועלת על ידי סינון יזום של הנחיות ותשובות של מודלים גדולים של שפה (LLM), הגנה מפני סיכונים שונים ותמיכה בשיטות עבודה אחראיות בתחום ה-AI. בין אם אתם פורסים AI בסביבת הענן שלכם או אצל ספקי שירותי ענן חיצוניים, הגנה מוגברת על המודל יכול לעזור לכם למנוע קלט זדוני, לאמת את בטיחות התוכן, להגן על מידע אישי רגיש, לשמור על תאימות ולאכוף את מדיניות הבטיחות והאבטחה של ה-AI באופן עקבי בסביבת ה-AI המגוונת שלכם.
כשמפעילים את Model Armor עם הפעלת רישום ביומן, המערכת רושמת ביומן את כל מטען הנתונים. הפעולה הזו עלולה לחשוף מידע רגיש ביומני הרישום.
הפעלת הגנה מוגברת על המודל
כדי להשתמש ב-Model Armor, צריך להפעיל את ממשקי ה-API של Model Armor.
המסוף
מפעילים את הגנה מוגברת על המודל API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק 'שימוש בשירות'' (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 ושרתי MCP מרוחקים Google Cloud
כדי להגן על השיחות והתגובות של כלי ה-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: רמת הסמך של ההגדרות של המסנן 'אתיקה של בינה מלאכותית – מסוכן'. אפשר לשנות את ההגדרה הזו, אבל ערכים נמוכים יותר עלולים להוביל ליותר תוצאות חיוביות כוזבות. מידע נוסף זמין במאמר בנושא רמות הסמך של הגנה מוגברת על המודל.
השבתת סריקת תעבורת נתונים של MCP באמצעות הגנה מוגברת על המודל
כדי להפסיק את הסריקה האוטומטית של התנועה אל השרתים של 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.
הגדרות הסף התחתון של Model Armor וההגדרה הכללית יכולות להשפיע על יותר דברים מאשר רק על MCP. Model Armor משולב עם שירותים כמו Vertex AI, ולכן כל שינוי שתבצעו בהגדרות של רמת הבסיס יכול להשפיע על סריקת התנועה ועל התנהגויות הבטיחות בכל השירותים המשולבים, ולא רק ב-MCP.
שליטה בשימוש ב-MCP באמצעות מדיניות IAM
כללי מדיניות הדחייה ומדיניות ההרשאות של ניהול הזהויות והרשאות הגישה (IAM) עוזרים לכם לאבטח Google Cloud שרתים של Google MCP.
אתם יכולים לשלב כמה קריטריונים כדי ליצור מדיניות אבטחה ומדיניות ניהול בהתאמה אישית, על ידי מתן או דחייה של גישה על סמך הקריטריונים הבאים:
- החשבון הראשי.
- מאפייני כלי כמו מאפיין הקריאה בלבד.
- שם השירות או שם הכלי.
- מזהה הלקוח ב-OAuth של האפליקציה.
מידע נוסף זמין במאמר שליטה בשימוש ב-MCP באמצעות ניהול זהויות וגישה.