MCP Tools Reference: dataform.googleapis.com

כלי: list_repositories

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

ערך הפרמטר parent צריך להיות בפורמט projects/{project_id}/locations/{location}.

בדוגמה הבאה אפשר לראות איך משתמשים ב-curl כדי להפעיל את כלי ה-MCP‏ list_repositories.

בקשת Curl
                  
curl --location 'https://dataform.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_repositories",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

סכימת הקלט

ListRepositories הזמנה לצ'אט.

ListRepositoriesRequest

ייצוג JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "orderBy": string,
  "filter": string
}
שדות
parent

string

חובה. המיקום שבו רוצים להציג את רשימת המאגרים. חייב להיות בפורמט projects/*/locations/*.

pageSize

integer

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

pageToken

string

זה שינוי אופציונלי. טוקן של דף שהתקבל מקריאה קודמת של ListRepositories. צריך להזין את הטוקן כדי לאחזר את הדף הבא.

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

orderBy

string

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

filter

string

זה שינוי אופציונלי. מסנן לרשימה שמוחזרת.

סכימת הפלט

ListRepositories הודעת תגובה.

ListRepositoriesResponse

ייצוג JSON
{
  "repositories": [
    {
      object (Repository)
    }
  ],
  "nextPageToken": string,
  "unreachable": [
    string
  ]
}
שדות
repositories[]

object (Repository)

רשימת המאגרים.

nextPageToken

string

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

unreachable[]

string

מיקומים שלא הייתה אפשרות להגיע אליהם.

מאגר

ייצוג JSON
{
  "name": string,
  "createTime": string,
  "displayName": string,
  "gitRemoteSettings": {
    object (GitRemoteSettings)
  },
  "npmrcEnvironmentVariablesSecretVersion": string,
  "workspaceCompilationOverrides": {
    object (WorkspaceCompilationOverrides)
  },
  "labels": {
    string: string,
    ...
  },
  "setAuthenticatedUserAdmin": boolean,
  "serviceAccount": string,
  "kmsKeyName": string,
  "dataEncryptionState": {
    object (DataEncryptionState)
  },

  // Union field _containing_folder can be only one of the following:
  "containingFolder": string
  // End of list of possible types for union field _containing_folder.

  // Union field _team_folder_name can be only one of the following:
  "teamFolderName": string
  // End of list of possible types for union field _team_folder_name.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
שדות
name

string

מזהה. שם המאגר.

createTime

string (Timestamp format)

פלט בלבד. חותמת הזמן של מועד יצירת המאגר.

הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

displayName

string

זה שינוי אופציונלי. השם הידידותי למשתמש של המאגר.

gitRemoteSettings

object (GitRemoteSettings)

זה שינוי אופציונלי. אם ההגדרה מוגדרת, המאגר הזה מקושר למאגר Git מרוחק.

npmrcEnvironmentVariablesSecretVersion

string

זה שינוי אופציונלי. השם של הגרסה הסודית ב-Secret Manager שתשמש להצבת משתנים בקובץ ‎ .npmrc לפעולות התקנת חבילות. חייב להיות בפורמט projects/*/secrets/*/versions/*. הקובץ עצמו צריך להיות בפורמט JSON.

workspaceCompilationOverrides

object (WorkspaceCompilationOverrides)

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

labels

map (key: string, value: string)

זה שינוי אופציונלי. תוויות משתמשים במאגר.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

setAuthenticatedUserAdmin

boolean

זה שינוי אופציונלי. קלט בלבד. אם המדיניות מוגדרת כ-True, למשתמש המאומת יוקצה התפקיד roles/dataform.admin במאגר שנוצר. כדי לשנות את הגישה למאגר שנוצר, צריך להחיל את setIamPolicy מכתובת https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories

serviceAccount

string

זה שינוי אופציונלי. חשבון השירות שדרכו יופעלו קריאות להפעלת תהליכי עבודה.

kmsKeyName

string

זה שינוי אופציונלי. ההפניה למפתח הצפנה של KMS. אם תספקו אותו, הוא ישמש להצפנת נתוני המשתמש במאגר ובכל משאבי הצאצאים. אי אפשר להוסיף או לעדכן את מפתח ההצפנה אחרי שיוצרים את המאגר. לדוגמה: projects/{kms_project}/locations/{location}/keyRings/{key_location}/cryptoKeys/{key}

dataEncryptionState

object (DataEncryptionState)

פלט בלבד. מצב הצפנת הנתונים של מאגר Git אם המאגר מוגן על ידי מפתח KMS.

שדה איחוד _containing_folder.

הערך _containing_folder יכול להיות רק אחד מהבאים:

containingFolder

string

זה שינוי אופציונלי. השם של התיקייה שמכילה את המאגר. השדה הזה הוא קבוע ואי אפשר לשנות אותו, אלא באמצעות פעולת MoveRepository. פורמט: projects/*/locations/*/folders/* או projects/*/locations/*/teamFolders/*.

שדה איחוד _team_folder_name.

הערך _team_folder_name יכול להיות רק אחד מהבאים:

teamFolderName

string

פלט בלבד. שם המשאב של תיקיית הצוות שאליה משויך המאגר הזה. הפורמט צריך להיות: projects/{project}/locations/{location}/teamFolders/{teamFolder}. אם לא מגדירים את זה, המאגר לא משויך לתיקייה משותפת.

שדה איחוד _internal_metadata.

הערך _internal_metadata יכול להיות רק אחד מהבאים:

internalMetadata

string

פלט בלבד. כל פרטי המטא-נתונים שמשמשים באופן פנימי להצגת המשאב. לדוגמה: חותמות זמן, דגלים, שדות סטטוס וכו'. הפורמט של השדה הזה הוא מחרוזת JSON.

חותמת הזמן

ייצוג JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ‏1970-01-01T00:00:00Z. הערך חייב להיות בין ‎-62135596800 ל-‎253402300799, כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z).

nanos

integer

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

GitRemoteSettings

ייצוג JSON
{
  "url": string,
  "defaultBranch": string,
  "effectiveDefaultBranch": string,
  "authenticationTokenSecretVersion": string,
  "sshAuthenticationConfig": {
    object (SshAuthenticationConfig)
  },
  "tokenStatus": enum (TokenStatus),

  // Union field _git_repository_link can be only one of the following:
  "gitRepositoryLink": string
  // End of list of possible types for union field _git_repository_link.
}
שדות
url

string

חובה. כתובת ה-URL של ה-remote ב-Git.

defaultBranch

string

זה שינוי אופציונלי. שם הענף שמוגדר כברירת מחדל ב-Git remote. אם לא מגדירים את המדיניות, המערכת תשתמש ב-main.

effectiveDefaultBranch

string

פלט בלבד. שם הענף שמוגדר כברירת מחדל ב-Git remote. זהו שם הענף שמוגדר כברירת מחדל ב-Git remote, אם הוא מוגדר. אחרת, זהו main.

authenticationTokenSecretVersion

string

זה שינוי אופציונלי. השם של גרסת הסוד ב-Secret Manager שבה רוצים להשתמש כאסימון אימות לפעולות Git. חייב להיות בפורמט projects/*/secrets/*/versions/*.

sshAuthenticationConfig

object (SshAuthenticationConfig)

זה שינוי אופציונלי. שדות אימות לכתובות URI מרוחקות באמצעות פרוטוקול SSH.

tokenStatus
(deprecated)

enum (TokenStatus)

פלט בלבד. הוצא משימוש: השדה לא מכיל מידע על סטטוס הטוקן. במקום זאת, אפשר להשתמש בכתובת https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus

שדה איחוד _git_repository_link.

הערך _git_repository_link יכול להיות רק אחד מהבאים:

gitRepositoryLink

string

זה שינוי אופציונלי. שם המשאב של GitRepositoryLink שמשמש לאישורי מכונה. חייב להיות בפורמט projects/*/locations/*/connections/*/gitRepositoryLinks/*

SshAuthenticationConfig

ייצוג JSON
{
  "userPrivateKeySecretVersion": string,
  "hostPublicKey": string
}
שדות
userPrivateKeySecretVersion

string

חובה. השם של הגרסה הסודית ב-Secret Manager שבה רוצים להשתמש כמפתח פרטי של SSH לפעולות Git. חייב להיות בפורמט projects/*/secrets/*/versions/*.

hostPublicKey

string

חובה. תוכן של מפתח ציבורי SSH לאימות הזהות של מארח Git מרוחק.

WorkspaceCompilationOverrides

ייצוג JSON
{
  "defaultDatabase": string,
  "schemaSuffix": string,
  "tablePrefix": string
}
שדות
defaultDatabase

string

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

schemaSuffix

string

זה שינוי אופציונלי. הסיומת שצריך לצרף לכל השמות של הסכימות (מזהה מערך הנתונים ב-BigQuery).

tablePrefix

string

זה שינוי אופציונלי. הקידומת שצריך להוסיף לפני כל שמות הטבלאות.

LabelsEntry

ייצוג JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

DataEncryptionState

ייצוג JSON
{
  "kmsKeyVersionName": string
}
שדות
kmsKeyVersionName

string

חובה. שם גרסת מפתח ה-KMS שבאמצעותה מוצפנים נתונים של משאב.

TokenStatus

הסטטוס של טוקן האימות.

טיפוסים בני מנייה (enum)
TOKEN_STATUS_UNSPECIFIED ערך ברירת המחדל. הערך הזה לא בשימוש.
NOT_FOUND לא נמצא טוקן ב-Secret Manager (או שלחשבון השירות של Dataform לא הייתה הרשאה לגשת אליו).
INVALID אי אפשר להשתמש בטוקן כדי לבצע אימות מול שרת Git מרוחק.
VALID הטוקן שימש לאימות מול שרת Git מרוחק.

הערות על כלים

רמז הרסני: ❌ | רמז אידמפוטנטי: ✅ | רמז לקריאה בלבד: ✅ | רמז לעולם פתוח: ❌