MCP Tools Reference: dataform.googleapis.com

ツール: list_repositories

指定された Google Cloud プロジェクトとロケーションの Dataform リポジトリを一覧表示します。

parent パラメータの値は projects/{project_id}/locations/{location} 形式にする必要があります。

次のサンプルは、curl を使用して list_repositories MCP ツールを呼び出す方法を示しています。

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 呼び出しから受け取ったページトークン。後続のページを取得するにはこれを指定します。

ページ分割を行う場合、page_size を除く ListRepositories に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

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

ID。リポジトリの名前。

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

省略可。パッケージ インストール オペレーションの .npmrc ファイルに変数を補間するために使用する Secret Manager シークレット バージョンの名前。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 ロールが付与されます。作成したリポジトリへのアクセス権を後で変更するには、https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories から setIamPolicy を適用します。

serviceAccount

string

省略可。ワークフロー呼び出しの実行に使用するサービス アカウント。

kmsKeyName

string

省略可。KMS 暗号鍵への参照。指定された場合、リポジトリとすべての子リソースのユーザーデータの暗号化に使用されます。リポジトリの作成後に暗号鍵を追加または更新することはできません。例: projects/{kms_project}/locations/{location}/keyRings/{key_location}/cryptoKeys/{key}

dataEncryptionState

object (DataEncryptionState)

出力専用。このリポジトリが KMS 鍵で保護されている場合、Git リポジトリのデータ暗号化状態。

共用体フィールド _containing_folder

_containing_folder は次のいずれかになります。

containingFolder

string

省略可。リポジトリの親フォルダの名前。このフィールドは不変であり、MoveRepository オペレーションで変更できます。形式: projects/*/locations/*/folders/*。または projects/*/locations/*/teamFolders/*

共用体フィールド _team_folder_name

_team_folder_name は次のいずれかになります。

teamFolderName

string

出力専用。このリポジトリが関連付けられている TeamFolder のリソース名。形式は projects/{project}/locations/{location}/teamFolders/{teamFolder} にする必要があります。設定されていない場合、リポジトリは TeamFolder に関連付けられません。

共用体フィールド _internal_metadata

_internal_metadata は次のいずれかになります。

internalMetadata

string

出力専用。リソースの提供に内部で使用されるすべてのメタデータ情報。たとえば、タイムスタンプ、フラグ、ステータス フィールドなどです。このフィールドの形式は JSON 文字列です。

タイムスタンプ

JSON 表現
{
  "seconds": string,
  "nanos": integer
}
フィールド
seconds

string (int64 format)

UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。

nanos

integer

ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。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

必須。Git リモートの URL。

defaultBranch

string

省略可。Git リモートのデフォルトのブランチ名。設定しない場合、main が使用されます。

effectiveDefaultBranch

string

出力専用。Git リモートの有効なデフォルト ブランチ名。設定されている場合は Git リモートのデフォルトのブランチ名。設定されていない場合は main

authenticationTokenSecretVersion

string

省略可。Git オペレーションの認証トークンとして使用する Secret Manager シークレット バージョンの名前。projects/*/secrets/*/versions/* の形式で指定してください。

sshAuthenticationConfig

object (SshAuthenticationConfig)

省略可。SSH プロトコルを使用するリモート URI の認証フィールド。

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

必須。Git オペレーションの SSH 秘密鍵として使用する Secret Manager シークレット バージョンの名前。projects/*/secrets/*/versions/* の形式で指定してください。

hostPublicKey

string

必須。リモート Git ホストの ID を確認するための公開 SSH 鍵の内容。

WorkspaceCompilationOverrides

JSON 表現
{
  "defaultDatabase": string,
  "schemaSuffix": string,
  "tablePrefix": string
}
フィールド
defaultDatabase

string

省略可。デフォルト データベース(Google Cloud プロジェクト ID)。

schemaSuffix

string

省略可。すべてのスキーマ(BigQuery データセット ID)名に追加する接尾辞。

tablePrefix

string

省略可。すべてのテーブル名の先頭に追加する接頭辞。

LabelsEntry

JSON 表現
{
  "key": string,
  "value": string
}
フィールド
key

string

value

string

DataEncryptionState

JSON 表現
{
  "kmsKeyVersionName": string
}
フィールド
kmsKeyVersionName

string

必須。リソースのデータの暗号化に使用される KMS 鍵バージョンの名前。

TokenStatus

認証トークンのステータス。

列挙型
TOKEN_STATUS_UNSPECIFIED デフォルト値。この値は使用されません。
NOT_FOUND トークンが Secret Manager に見つかりませんでした(または、Dataform サービス アカウントにアクセス権がありませんでした)。
INVALID このトークンを使用して Git リモートに対する認証を行うことができませんでした。
VALID トークンは、Git リモートに対する認証に正常に使用されました。

ツールのアノテーション

破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌