MCP Tools Reference: developerconnect.googleapis.com

ツール: create-connection

指定されたプロジェクトとロケーションで新しい Connection を作成します。

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

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-connection",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

入力スキーマ

Connection を作成するためのメッセージ

CreateConnectionRequest

JSON 表現
{
  "parent": string,
  "connectionId": string,
  "connection": {
    object (Connection)
  },
  "requestId": string,
  "validateOnly": boolean
}
フィールド
parent

string

必須。親の値。

connectionId

string

必須。接続に使用する ID。これは接続のリソース名の最終的なコンポーネントになります。

connection

object (Connection)

必須。作成中のリソース

requestId

string

省略可。リクエストを識別するリクエスト ID(省略可)。一意のリクエスト ID を指定することで、リクエストの再試行が必要なときに、リクエストが完了していれば、サーバーがリクエストを無視できるようになります。サーバーは、最初のリクエストから少なくとも 60 分間はこれを保証します。

たとえば、最初のリクエストを行い、そのリクエストがタイムアウトしたとします。同じリクエスト ID で再度リクエストを行うと、サーバーは元のオペレーションを同じリクエスト ID で受信していたかどうかを確認できます。受信していた場合は、2 回目のリクエストは無視されます。これにより、クライアントが重複するコミットを誤って作成することを防ぐことができます。

リクエスト ID は有効な UUID でなければなりません。ただし、ゼロ UUID(00000000-0000-0000-0000-000000000000)はサポートされていません。

validateOnly

boolean

省略可。設定されている場合、リクエストを検証しますが、実際の投稿は行いません。

接続

JSON 表現
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "labels": {
    string: string,
    ...
  },
  "installationState": {
    object (InstallationState)
  },
  "disabled": boolean,
  "reconciling": boolean,
  "annotations": {
    string: string,
    ...
  },
  "etag": string,
  "uid": string,
  "cryptoKeyConfig": {
    object (CryptoKeyConfig)
  },
  "gitProxyConfig": {
    object (GitProxyConfig)
  },

  // Union field connection_config can be only one of the following:
  "githubConfig": {
    object (GitHubConfig)
  },
  "githubEnterpriseConfig": {
    object (GitHubEnterpriseConfig)
  },
  "gitlabConfig": {
    object (GitLabConfig)
  },
  "gitlabEnterpriseConfig": {
    object (GitLabEnterpriseConfig)
  },
  "bitbucketDataCenterConfig": {
    object (BitbucketDataCenterConfig)
  },
  "bitbucketCloudConfig": {
    object (BitbucketCloudConfig)
  },
  "secureSourceManagerInstanceConfig": {
    object (SecureSourceManagerInstanceConfig)
  },
  "httpConfig": {
    object (GenericHTTPEndpointConfig)
  }
  // End of list of possible types for union field connection_config.
}
フィールド
name

string

ID。接続のリソース名(projects/{project}/locations/{location}/connections/{connection_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"。

updateTime

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"。

deleteTime

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"。

labels

map (key: string, value: string)

省略可。Key-Value ペアとしてのラベル

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

installationState

object (InstallationState)

出力専用。接続のインストール状態。

disabled

boolean

省略可。disabled が true に設定されている場合、この接続の機能は無効になります。この接続のリポジトリに対するリポジトリベースの API メソッドと Webhook 処理は無効になります。

reconciling

boolean

出力専用。バックグラウンドで接続が設定または更新されている場合は、true に設定します。

annotations

map (key: string, value: string)

省略可。クライアントが任意の少量のデータを保存できるようにします。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

etag

string

省略可。このチェックサムは、他のフィールドの値に基づいてサーバーによって計算されて、更新リクエストと削除リクエストで送信され、続行する前にクライアントが最新の値を持っていることを確認できます。

uid

string

出力専用。システムによって Connection に割り当てられる固有識別子。

cryptoKeyConfig

object (CryptoKeyConfig)

省略可。暗号鍵の構成。このフィールドは、顧客管理の暗号鍵(CMEK)機能で使用されます。

gitProxyConfig

object (GitProxyConfig)

省略可。Git プロキシ機能の構成。Git プロキシを有効にすると、クライアントは接続でリンクされたリポジトリに対して Git オペレーションを実行できます。詳細

共用体フィールド connection_config。プロバイダのタイプに応じた接続の構成。connection_config は次のいずれかになります。
githubConfig

object (GitHubConfig)

github.com への接続の構成。

githubEnterpriseConfig

object (GitHubEnterpriseConfig)

GitHub Enterprise のインスタンスへの接続の構成。

gitlabConfig

object (GitLabConfig)

gitlab.com への接続の構成。

gitlabEnterpriseConfig

object (GitLabEnterpriseConfig)

GitLab Enterprise のインスタンスへの接続の構成。

bitbucketDataCenterConfig

object (BitbucketDataCenterConfig)

Bitbucket Data Center のインスタンスへの接続の構成。

bitbucketCloudConfig

object (BitbucketCloudConfig)

Bitbucket Cloud のインスタンスへの接続の構成。

secureSourceManagerInstanceConfig

object (SecureSourceManagerInstanceConfig)

Secure Source Manager のインスタンスへの接続の構成。

httpConfig

object (GenericHTTPEndpointConfig)

省略可。HTTP サービス提供者への接続の構成。

GitHubConfig

JSON 表現
{
  "githubApp": enum (GitHubApp),
  "authorizerCredential": {
    object (OAuthCredential)
  },
  "appInstallationId": string,
  "installationUri": string
}
フィールド
githubApp

enum (GitHubApp)

必須。変更不可。GitHub ユーザーまたは組織にインストールされた GitHub アプリケーション。

authorizerCredential

object (OAuthCredential)

省略可。GitHub アプリを承認したアカウントの OAuth 認証情報。人間のユーザー アカウントではなく、ロボット アカウントを使用することをおすすめします。OAuth トークンは、この構成の GitHub アプリに関連付けられている必要があります。

appInstallationId

string (int64 format)

省略可。GitHub アプリのインストール ID。

installationUri

string

出力専用。この GitHubConfig に関連付けられたインストールを管理するために移動する URI。

OAuthCredential

JSON 表現
{
  "oauthTokenSecretVersion": string,
  "username": string
}
フィールド
oauthTokenSecretVersion

string

必須。接続を認可する OAuth トークンを含む SecretManager リソース。形式: projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/*(そのロケーションでリージョン シークレットがサポートされている場合)。

username

string

出力専用。このトークンに関連付けられているユーザー名。

GitHubEnterpriseConfig

JSON 表現
{
  "hostUri": string,
  "appId": string,
  "appSlug": string,
  "privateKeySecretVersion": string,
  "webhookSecretSecretVersion": string,
  "appInstallationId": string,
  "installationUri": string,
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "serverVersion": string,
  "sslCaCertificate": string,
  "organization": string
}
フィールド
hostUri

string

必須。この接続の対象となる GitHub Enterprise ホストの URI。

appId

string (int64 format)

省略可。マニフェストから作成された GitHub アプリの ID。

appSlug

string

出力専用。GitHub アプリの URL フレンドリーな名前。

privateKeySecretVersion

string

省略可。GitHub アプリの秘密鍵を含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/*(そのロケーションでリージョン シークレットがサポートされている場合)の形式で指定します。

webhookSecretSecretVersion

string

省略可。GitHub アプリの Webhook シークレットを含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/* の形式(そのロケーションでリージョン シークレットがサポートされている場合)。

appInstallationId

string (int64 format)

省略可。GitHub アプリのインストール ID。

installationUri

string

出力専用。この GitHubEnterpriseConfig に関連付けられているインストールを管理するために移動する URI。

serviceDirectoryConfig

object (ServiceDirectoryConfig)

省略可。Service Directory を使用して GitHub Enterprise サーバーにプライベート接続するための構成。これは、GitHub Enterprise サーバーがオンプレミスでホストされ、公共のインターネットからアクセスできない場合にのみ設定する必要があります。このフィールドを空のままにすると、GitHub Enterprise サーバーへの呼び出しは公共のインターネット経由で行われます。

serverVersion

string

出力専用。host_uri にインストールされている GitHub Enterprise のバージョン。

sslCaCertificate

string

省略可。GitHub Enterprise へのリクエストに使用する SSL 証明書。

organization

string

省略可。変更不可。GitHub アプリが作成される GitHub Enterprise 組織。

ServiceDirectoryConfig

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

string

必須。Service Directory サービス名。形式: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}

GitLabConfig

JSON 表現
{
  "webhookSecretSecretVersion": string,
  "readAuthorizerCredential": {
    object (UserCredential)
  },
  "authorizerCredential": {
    object (UserCredential)
  }
}
フィールド
webhookSecretSecretVersion

string

必須。変更不可。GitLab プロジェクトの Webhook シークレットを含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/* の形式(そのロケーションでリージョン シークレットがサポートされている場合)。これは Webhook の検証に使用されます。

readAuthorizerCredential

object (UserCredential)

必須。最小限の read_api スコープ アクセスと reporter の最小ロールを持つ GitLab 個人アクセス トークン。この個人用アクセス トークンに表示される GitLab プロジェクトによって、Developer Connect がアクセスできるプロジェクトが制御されます。

authorizerCredential

object (UserCredential)

必須。最小限の api スコープ アクセスと maintainer の最小ロールを持つ GitLab 個人アクセス トークン。この個人用アクセス トークンに表示される GitLab プロジェクトによって、Developer Connect がアクセスできるプロジェクトが制御されます。

UserCredential

JSON 表現
{
  "userTokenSecretVersion": string,
  "username": string
}
フィールド
userTokenSecretVersion

string

必須。Developer Connect 接続を認可するユーザー トークンを含む SecretManager リソース。形式: projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/*(そのロケーションでリージョン シークレットがサポートされている場合)。

username

string

出力専用。このトークンに関連付けられているユーザー名。

GitLabEnterpriseConfig

JSON 表現
{
  "hostUri": string,
  "webhookSecretSecretVersion": string,
  "readAuthorizerCredential": {
    object (UserCredential)
  },
  "authorizerCredential": {
    object (UserCredential)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "sslCaCertificate": string,
  "serverVersion": string
}
フィールド
hostUri

string

必須。この接続の対象となる GitLab Enterprise ホストの URI。

webhookSecretSecretVersion

string

必須。変更不可。GitLab プロジェクトの Webhook シークレットを含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/* の形式(そのロケーションでリージョン シークレットがサポートされている場合)。これは Webhook の検証に使用されます。

readAuthorizerCredential

object (UserCredential)

必須。最小限の read_api スコープ アクセスと reporter の最小ロールを持つ GitLab 個人アクセス トークン。この個人用アクセス トークンに表示される GitLab プロジェクトによって、Developer Connect がアクセスできるプロジェクトが制御されます。

authorizerCredential

object (UserCredential)

必須。最小限の api スコープ アクセスと maintainer の最小ロールを持つ GitLab 個人アクセス トークン。この個人用アクセス トークンに表示される GitLab プロジェクトによって、Developer Connect がアクセスできるプロジェクトが制御されます。

serviceDirectoryConfig

object (ServiceDirectoryConfig)

省略可。Service Directory を使用して GitLab Enterprise インスタンスにプライベート接続するための構成。これは、GitLab Enterprise サーバーがオンプレミスでホストされ、公共のインターネットからアクセスできない場合にのみ設定する必要があります。このフィールドを空のままにすると、GitLab Enterprise サーバーへの呼び出しは公共のインターネット経由で行われます。

sslCaCertificate

string

省略可。GitLab Enterprise インスタンスへのリクエストに使用する SSL 認証局証明書。

serverVersion

string

出力専用。host_uri で実行されている GitLab Enterprise サーバーのバージョン。

BitbucketDataCenterConfig

JSON 表現
{
  "hostUri": string,
  "webhookSecretSecretVersion": string,
  "readAuthorizerCredential": {
    object (UserCredential)
  },
  "authorizerCredential": {
    object (UserCredential)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "sslCaCertificate": string,
  "serverVersion": string
}
フィールド
hostUri

string

必須。この接続の対象となる Bitbucket データセンター ホストの URI。

webhookSecretSecretVersion

string

必須。変更不可。Webhook イベントの検証に使用される Webhook シークレットを含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/* の形式(そのロケーションでリージョン シークレットがサポートされている場合)。これは Webhook の検証に使用されます。

readAuthorizerCredential

object (UserCredential)

必須。最小限の Repository read アクセス権を持つ HTTP アクセス トークン。認証情報の生成には、システム アカウントを使用することをおすすめします。

authorizerCredential

object (UserCredential)

必須。最小限の Repository admin スコープ アクセス権を持つ http アクセス トークン。これは、Webhook を作成するために必要です。これらの認証情報を生成するには、システム アカウントを使用することをおすすめします。

serviceDirectoryConfig

object (ServiceDirectoryConfig)

省略可。Service Directory を使用して Bitbucket Data Center インスタンスにプライベート接続するための構成。これは、Bitbucket データセンターがオンプレミスでホストされ、公共のインターネットからアクセスできない場合にのみ設定する必要があります。このフィールドを空のままにすると、Bitbucket データセンターへの呼び出しは公共のインターネット経由で行われます。

sslCaCertificate

string

省略可。Bitbucket データセンターへのリクエストを行う際に信頼する SSL 認証局。

serverVersion

string

出力専用。host_uri で実行されている Bitbucket データセンター サーバーのバージョン。

BitbucketCloudConfig

JSON 表現
{
  "workspace": string,
  "webhookSecretSecretVersion": string,
  "readAuthorizerCredential": {
    object (UserCredential)
  },
  "authorizerCredential": {
    object (UserCredential)
  }
}
フィールド
workspace

string

必須。Google Cloud Platform に接続する Bitbucket Cloud ワークスペース ID。

webhookSecretSecretVersion

string

必須。変更不可。Webhook イベントの検証に使用される Webhook シークレットを含む SecretManager リソース。projects/*/secrets/*/versions/* または projects/*/locations/*/secrets/*/versions/* の形式(そのロケーションでリージョン シークレットがサポートされている場合)。これは、Webhook の検証と作成に使用されます。

readAuthorizerCredential

object (UserCredential)

必須。最小限の repository アクセス権を持つアクセス トークン。ワークスペース、プロジェクト、リポジトリのいずれかのアクセス トークンを使用できます。認証情報の生成には、システム アカウントを使用することをおすすめします。

authorizerCredential

object (UserCredential)

必須。最小限の repository、pullrequest、webhook スコープ アクセス権を持つアクセス トークン。ワークスペース、プロジェクト、リポジトリのいずれかのアクセス トークンを使用できます。これは、Webhook を作成するために必要です。これらの認証情報を生成するには、システム アカウントを使用することをおすすめします。

SecureSourceManagerInstanceConfig

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

string

必須。変更不可。Secure Source Manager インスタンス リソース。projects/*/locations/*/instances/* の形式

GenericHTTPEndpointConfig

JSON 表現
{
  "hostUri": string,
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "sslCaCertificate": string,

  // Union field authentication can be only one of the following:
  "basicAuthentication": {
    object (BasicAuthentication)
  },
  "bearerTokenAuthentication": {
    object (BearerTokenAuthentication)
  }
  // End of list of possible types for union field authentication.
}
フィールド
hostUri

string

必須。変更不可。サービス提供者の HTTPS エンドポイント。

serviceDirectoryConfig

object (ServiceDirectoryConfig)

省略可。Service Directory を使用して HTTP サービス提供者にプライベート接続するための構成。これは、HTTP サービス提供者がオンプレミスでホストされ、パブリック インターネットからアクセスできない場合にのみ設定する必要があります。このフィールドを空のままにすると、HTTP サービス提供者への呼び出しは公共のインターネット経由で行われます。

sslCaCertificate

string

省略可。HTTP サービス提供者へのリクエストに使用する SSL 証明書。

共用体フィールド authentication。HTTP サービス提供者へのリクエストに使用する認証メカニズム。authentication は次のいずれかになります。
basicAuthentication

object (BasicAuthentication)

省略可。ユーザー名とパスワードによる基本認証。

bearerTokenAuthentication

object (BearerTokenAuthentication)

省略可。トークンを使用した署名なしトークン認証。

BasicAuthentication

JSON 表現
{
  "username": string,

  // Union field password can be only one of the following:
  "passwordSecretVersion": string
  // End of list of possible types for union field password.
}
フィールド
username

string

必須。認証に使用するユーザー名。

共用体フィールド password。認証に使用するパスワード。password は次のいずれかになります。
passwordSecretVersion

string

認証に使用するパスワードの SecretManager のシークレット バージョン。

BearerTokenAuthentication

JSON 表現
{

  // Union field token can be only one of the following:
  "tokenSecretVersion": string
  // End of list of possible types for union field token.
}
フィールド
共用体フィールド token。認証に使用するトークン。token は次のいずれかになります。
tokenSecretVersion

string

省略可。認証に使用するトークンの SecretManager のシークレット バージョン。

タイムスタンプ

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 にする必要があります(両端を含む)。

LabelsEntry

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

string

value

string

InstallationState

JSON 表現
{
  "stage": enum (Stage),
  "message": string,
  "actionUri": string
}
フィールド
stage

enum (Stage)

出力専用。インストール プロセスの現在のステップ。

message

string

出力専用。インストールを続行するためにユーザーが次に行うべき操作に関するメッセージ。インストールがすでに完了している場合は空の文字列。

actionUri

string

出力専用。次のアクションに進むためのリンク。インストールがすでに完了している場合は空の文字列。

AnnotationsEntry

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

string

value

string

CryptoKeyConfig

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

string

必須。顧客データの暗号化 / 復号に使用される鍵の名前。Cloud KMS の鍵の場合、鍵は projects/*/locations/*/keyRings/*/cryptoKeys/* の形式にする必要があります。

GitProxyConfig

JSON 表現
{
  "enabled": boolean,
  "httpProxyBaseUri": string
}
フィールド
enabled

boolean

省略可。これを true に設定すると、接続でリンクされたリポジトリで Git オペレーションを実行するために Git プロキシを使用できるようになります。

httpProxyBaseUri

string

出力専用。HTTP プロキシ エンドポイントのベース URI。https://{generatedID}-c-h-{shortRegion}.developerconnect.dev 形式。enabled が true に設定されている場合にのみ入力されます。このエンドポイントは、Developer Connect と統合されている他の Google サービスで使用されます。

GitHubApp

GitHub ユーザーまたは組織にインストールして Developer Connect で使用できるさまざまな GitHub アプリケーションを表します。

列挙型
GIT_HUB_APP_UNSPECIFIED GitHub アプリが指定されていません。
DEVELOPER_CONNECT Developer Connect GitHub アプリケーション。
FIREBASE Firebase GitHub アプリケーション。
GEMINI_CODE_ASSIST Gemini Code Assist アプリケーション。
DATAFORM Dataform GitHub アプリケーション。

ステージ

インストール プロセスのステージ。

列挙型
STAGE_UNSPECIFIED ステージが指定されていません。
PENDING_CREATE_APP GitHub Enterprise の場合のみ。アプリの作成がリクエストされました。ユーザーは、GitHub Enterprise ホストで作成を確認する必要があります。
PENDING_USER_OAUTH ユーザーは OAuth を介して GitHub(または Enterprise)アプリを承認する必要があります。
PENDING_INSTALL_APP ユーザーはリンクをたどって GitHub(または Enterprise)アプリをインストールする必要があります。
COMPLETE インストール プロセスが完了しました。

出力スキーマ

このリソースは、ネットワーク API 呼び出しの結果である長時間実行オペレーションを表します。

オペレーション

JSON 表現
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
フィールド
name

string

サーバーによって割り当てられる名前。最初にその名前を返すサービスと同じサービス内でのみ一意になります。デフォルトの HTTP マッピングを使用している場合は、name を operations/{unique_id} で終わるリソース名にします。

metadata

object

オペレーションに関連付けられているサービス固有のメタデータ。通常は進捗情報や、作成日時などの共通メタデータが含まれます。一部のサービスでは、このようなメタデータが提供されないこともあります。メタデータがある場合、長時間実行オペレーションを返すメソッドでは、メタデータの型をドキュメント化しておく必要があります。

任意の型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

done

boolean

値が false の場合は、オペレーションが進行中であることを意味します。true の場合、オペレーションは完了しており、error または response が利用可能です。

共用体フィールド result。オペレーションの結果。error または有効な response になります。done == false の場合、error も response も設定されません。done == true の場合、error または response のどちらか 1 つだけが設定されます。一部のサービスでは結果が返されない場合があります。result は次のいずれかになります。
error

object (Status)

失敗またはキャンセルされた場合のオペレーションのエラー結果。

response

object

オペレーションの通常の成功レスポンス。元のメソッドで成功時にデータが返されない場合(Delete など)、レスポンスは google.protobuf.Empty になります。元のメソッドが標準の Get/Create/Update である場合、レスポンスはリソースになります。他のメソッドについては、レスポンスの型が XxxResponse(Xxx は元のメソッド名)になります。たとえば、元のメソッド名が TakeSnapshot() であれば、レスポンスの型は TakeSnapshotResponse になると推測できます。

任意の型のフィールドを含むオブジェクト。型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

すべて

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

string

シリアル化された Protobuf メッセージのタイプを、スラッシュで終わる接頭辞と完全修飾タイプ名で構成される URI 参照で識別します。

例: type.googleapis.com/google.protobuf.StringValue

この文字列には少なくとも 1 つの / 文字が含まれている必要があります。最後の / の後のコンテンツは、先頭にドットを付けずに、正規形式の型の完全修飾名にする必要があります。クライアントがこれらの URI 参照にアクセスしようとしないように、これらの URI 参照にスキームを記述しないでください。

接頭辞は任意であり、Protobuf の実装では、最後の / までのすべてを削除して型を識別することが想定されています。type.googleapis.com/ は、一部の以前の実装で必要となる一般的なデフォルトの接頭辞です。この接頭辞はタイプのオリジンを示すものではなく、この接頭辞を含む URI がリクエストに応答することは想定されていません。

すべてのタイプ URL 文字列は、有効な URI 参照である必要があります。また、参照の内容は、英数字、パーセント エンコードされたエスケープ、および次のセットの文字(外側のバッククォートを除く)のみで構成されている必要があります(テキスト形式の場合)。/-.~_!$&()*+,;=パーセント エンコードは許可されていますが、既存のパーサーとの混同を避けるため、実装ではエスケープを解除しないでください。たとえば、type.googleapis.com%2FFoo は拒否される必要があります。

Any の元の設計では、これらのタイプ URL でタイプ解決サービスを起動する可能性が考慮されていましたが、Protobuf はこれを実装しておらず、これらの URL へのアクセスは問題であり、セキュリティ上の問題となる可能性があると考えています。URL を入力してアクセスしようとしないでください。

value

string (bytes format)

type_url で記述された型の Protobuf シリアル化を保持します。

Base64 でエンコードされた文字列。

ステータス

JSON 表現
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
フィールド
code

integer

ステータス コード。google.rpc.Code の列挙値である必要があります。

message

string

デベロッパー向けのエラー メッセージ。英語で記述します。ユーザー向けのエラー メッセージは、ローカライズして google.rpc.Status.details フィールドで送信するか、クライアントでローカライズする必要があります。

details[]

object

エラーの詳細を保持するメッセージのリスト。API が使用する共通のメッセージ タイプのセットがあります。

任意のデータ型のフィールドを含むオブジェクトであり、型を識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

ツールのアノテーション

ツールのアノテーションは、特定のツールの基本的なリスクを説明するために MCP クライアントに送信されます。ほとんどのクライアントは、これらのヒントを信頼できないものとして扱いますが、確認プロンプトをユーザーに送信するタイミングを決定するために使用できます。

タイトル文字列とともに、次のブール値のヒントが定義されています。

  • readOnlyHint: true の場合、ツールは環境を変更しません。デフォルトは false です。
  • destructiveHint: true の場合、ツールは破壊的なアクションを実行できます。false の場合、ツールは追加アクションのみを実行できます。デフォルト値は true です。
  • idempotentHint: true の場合、同じ引数でツールを繰り返し呼び出しても、環境に副次的影響は発生しません。デフォルトは false です。
  • openWorldHint: true の場合、ツールは外部エンティティの「オープンワールド」とやり取りできます。false の場合、ツールは内部エンティティとのみやり取りできます。たとえば、ウェブ検索ツールはオープン ワールドですが、メモリツールはオープン ワールドではありません。

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