כלי: create-repo-link
יצירת GitRepositoryLink חדש בפרויקט ובמיקום נתונים.
בדוגמת הקוד הבאה מוסבר איך להשתמש ב-curl כדי להפעיל את כלי ה-MCP create-repo-link.
| בקשת Curl |
|---|
curl --location 'https://developerconnect.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create-repo-link", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
הודעה ליצירת GitRepositoryLink
CreateGitRepositoryLinkRequest
| ייצוג ב-JSON |
|---|
{
"parent": string,
"gitRepositoryLink": {
object ( |
| שדות | |
|---|---|
parent |
חובה. ערך להורה. |
gitRepositoryLink |
חובה. המשאב שנוצר |
gitRepositoryLinkId |
חובה. המזהה של המאגר, שיהפוך לרכיב האחרון בשם המשאב של המאגר. המזהה הזה צריך להיות ייחודי בחיבור. אפשר להשתמש בתווים אלפאנומריים ובתווים הבאים: -._~%!$&'()*+,;=@. |
requestId |
זה שינוי אופציונלי. מזהה בקשה אופציונלי לזיהוי בקשות. ציינו מזהה בקשה ייחודי, כדי שאם תצטרכו לנסות שוב לשלוח את הבקשה, השרת יידע להתעלם ממנה אם היא כבר הושלמה. השרת יבטיח זאת למשך 60 דקות לפחות מהבקשה הראשונה. לדוגמה, נניח ששלחתם בקשה ראשונית ופג הזמן הקצוב שלה. אם תשלחו שוב את הבקשה עם אותו מזהה בקשה, השרת יוכל לבדוק אם התקבלה הפעולה המקורית עם אותו מזהה בקשה, ואם כן, הוא יתעלם מהבקשה השנייה. כך הלקוחות לא יוצרים בטעות התחייבויות כפולות. מזהה הבקשה חייב להיות UUID תקין, אבל אין תמיכה ב-UUID עם אפסים (00000000-0000-0000-0000-000000000000). |
validateOnly |
זה שינוי אופציונלי. אם מוגדר, הבקשה מאומתת אבל לא מתפרסמת בפועל. |
GitRepositoryLink
| ייצוג ב-JSON |
|---|
{ "name": string, "cloneUri": string, "createTime": string, "updateTime": string, "deleteTime": string, "labels": { string: string, ... }, "etag": string, "reconciling": boolean, "annotations": { string: string, ... }, "uid": string, "webhookId": string, "gitProxyUri": string } |
| שדות | |
|---|---|
name |
מזהה. שם המשאב של המאגר, בפורמט |
cloneUri |
חובה. URI של Git Clone. |
createTime |
פלט בלבד. חותמת זמן היצירה. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה מנורמל ל-Z וישתמש ב-0, 3, 6 או 9 ספרות אחרי הנקודה העשרונית. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. לדוגמה: |
updateTime |
פלט בלבד. עדכון חותמת הזמן. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה מנורמל ל-Z וישתמש ב-0, 3, 6 או 9 ספרות אחרי הנקודה העשרונית. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. לדוגמה: |
deleteTime |
פלט בלבד. מחיקת חותמת הזמן. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה מנורמל ל-Z וישתמש ב-0, 3, 6 או 9 ספרות אחרי הנקודה העשרונית. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. לדוגמה: |
labels |
זה שינוי אופציונלי. תוויות כצמדי מפתח/ערך אובייקט שמכיל רשימה של זוגות |
etag |
זה שינוי אופציונלי. סיכום הביקורת הזה מחושב על ידי השרת על סמך הערך של שדות אחרים, ויכול להיות שיישלח בבקשות עדכון ומחיקה כדי לוודא שללקוח יש ערך עדכני לפני שממשיכים. |
reconciling |
פלט בלבד. צריך להגדיר את הערך כ-true כשהחיבור מוגדר או מתעדכן ברקע. |
annotations |
זה שינוי אופציונלי. מאפשר ללקוחות לאחסן כמויות קטנות של נתונים שרירותיים. אובייקט שמכיל רשימה של זוגות |
uid |
פלט בלבד. מזהה ייחודי שהמערכת מקצה ל-GitRepositoryLink. |
webhookId |
פלט בלבד. המזהה החיצוני של ה-webhook שנוצר למאגר. |
gitProxyUri |
פלט בלבד. URI לגישה למאגר המקושר דרך שרת ה-proxy של Git. השדה הזה מאוכלס רק אם שרת ה-proxy של Git מופעל בחיבור. |
חותמת הזמן
| ייצוג ב-JSON |
|---|
{ "seconds": string, "nanos": integer } |
| שדות | |
|---|---|
seconds |
מייצג שניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) 1970-01-01T00:00:00Z. הערך חייב להיות בין -62135596800 ל-253402300799, כולל (טווח שמתאים ל-0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z). |
nanos |
שברים לא שליליים של שנייה ברזולוציה של ננו-שנייה. השדה הזה הוא החלק של הננו-שניות במשך הזמן, ולא חלופה לשניות. ערכי שניות שליליים עם שברים עדיין צריכים לכלול ערכי ננו-שניות לא שליליים שנספרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל. |
LabelsEntry
| ייצוג ב-JSON |
|---|
{ "key": string, "value": string } |
| שדות | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| ייצוג ב-JSON |
|---|
{ "key": string, "value": string } |
| שדות | |
|---|---|
key |
|
value |
|
סכימת הפלט
המשאב הזה מייצג פעולה ממושכת שמוחזרת מקריאות ל-API ברשת.
פעולה
| ייצוג ב-JSON |
|---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
| שדות | |
|---|---|
name |
השם שהוקצה על ידי השרת, שהוא ייחודי רק בתוך אותו שירות שמחזיר אותו במקור. אם משתמשים במיפוי ברירת המחדל של HTTP, הערך של |
metadata |
מטא-נתונים ספציפיים לשירות שמשויכים לפעולה. בדרך כלל הוא מכיל מידע על ההתקדמות ומטא-נתונים נפוצים, כמו זמן היצירה. יכול להיות ששירותים מסוימים לא יספקו מטא-נתונים כאלה. כל שיטה שמחזירה פעולה ממושכת צריכה לתעד את סוג המטא-נתונים, אם יש כאלה. אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף, |
done |
אם הערך הוא |
שדה של איחוד result. תוצאת הפעולה, שיכולה להיות error או response חוקי. אם done == false, לא מוגדרים error וגם response. אם done == true, אפשר להגדיר רק אחד מהשדות error או response. יכול להיות שחלק מהשירותים לא יספקו את התוצאה. הערך result יכול להיות רק אחד מהבאים: |
|
error |
תוצאת השגיאה של הפעולה במקרה של כישלון או ביטול. |
response |
התגובה הרגילה והמוצלחת של הפעולה. אם ה-method המקורית לא מחזירה נתונים כשהיא מצליחה, כמו אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף, |
הכול
| ייצוג ב-JSON |
|---|
{ "typeUrl": string, "value": string } |
| שדות | |
|---|---|
typeUrl |
מזהה את הסוג של הודעת Protobuf שעברה סריאליזציה באמצעות הפניה ל-URI שמורכבת מתחילית שמסתיימת בלוכסן ומשם הסוג המלא. דוגמה: type.googleapis.com/google.protobuf.StringValue המחרוזת הזו חייבת להכיל לפחות תו הקידומת היא שרירותית, וההטמעות של Protobuf אמורות פשוט להסיר את כל מה שמופיע עד ל- כל המחרוזות של כתובות ה-URL של הסוגים חייבות להיות הפניות חוקיות ל-URI, עם הגבלה נוספת (לפורמט הטקסט) שלפיה התוכן של ההפניה חייב לכלול רק תווים אלפאנומריים, תווי בריחה (escape) בקידוד אחוזים ותווים בקבוצה הבאה (לא כולל הגרשים ההפוכים החיצוניים): בעיצוב המקורי של |
value |
מכיל סריאליזציה של Protobuf מהסוג שמתואר על ידי type_url. מחרוזת בקידוד Base64. |
סטטוס
| ייצוג ב-JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| שדות | |
|---|---|
code |
קוד הסטטוס, שצריך להיות ערך enum של |
message |
הודעת שגיאה שמיועדת למפתחים, וצריכה להיות באנגלית. כל הודעת שגיאה שגלויה למשתמשים צריכה להיות מותאמת לשוק המקומי ולהישלח בשדה |
details[] |
רשימת הודעות עם פרטי השגיאה. יש קבוצה נפוצה של סוגי הודעות לשימוש בממשקי API. אובייקט שמכיל שדות מסוג שרירותי. שדה נוסף, |
הערות לגבי הכלים
הערות הכלים נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כלא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש בקשה לאישור.
בנוסף למחרוזת הכותרת, הרמזים הבוליאניים הבאים מוגדרים כך:
-
readOnlyHint: אם הערך הוא True, הכלי לא משנה את הסביבה שלו. ברירת המחדל: false. -
destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא False, הכלי יכול לבצע רק פעולות הוספה. ברירת המחדל: true. -
idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת המחדל: false. -
openWorldHint: אם הערך הוא True, הכלי יכול לקיים אינטראקציה עם "עולם פתוח" של ישויות חיצוניות. אם הערך הוא false, הכלי יכול לקיים אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי חיפוש באינטרנט הוא כלי בעולם פתוח, אבל כלי זיכרון הוא לא כלי בעולם פתוח.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌