工具:list-connections
列出给定项目和位置中的连接。
以下代码示例展示了如何使用 curl 调用 list-connections 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": "list-connections", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
输入架构
用于请求连接列表的消息
ListConnectionsRequest
| JSON 表示法 |
|---|
{ "parent": string, "pageSize": integer, "pageToken": string, "filter": string, "orderBy": string } |
| 字段 | |
|---|---|
parent |
必需。ListConnectionsRequest 的父级值 |
pageSize |
可选。请求的页面大小。 服务器返回的项可能要比请求的少。如果未指定,服务器将选择合适的默认值。 |
pageToken |
可选。标识服务器应返回的结果页面的令牌。 |
filter |
可选。过滤结果。 |
orderBy |
可选。有关如何对结果进行排序的提示。 |
输出架构
对列出连接的响应消息
ListConnectionsResponse
| JSON 表示法 |
|---|
{
"connections": [
{
object ( |
| 字段 | |
|---|---|
connections[] |
连接列表。 |
nextPageToken |
标识服务器应返回的结果页面的令牌。 |
unreachable[] |
无法到达的位置。 |
连接
| JSON 表示法 |
|---|
{ "name": string, "createTime": string, "updateTime": string, "deleteTime": string, "labels": { string: string, ... }, "installationState": { object ( |
| 字段 | |
|---|---|
name |
标识符。连接的资源名称,格式为 |
createTime |
仅限输出。创建时间戳。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
updateTime |
仅限输出。更新时间戳。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
deleteTime |
仅限输出。删除时间戳。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
labels |
可选。标签作为键值对 包含一系列 |
installationState |
仅限输出。连接的安装状态。 |
disabled |
可选。如果 disabled 设置为 true,则此连接的功能会被停用。此连接中代码库的基于代码库的 API 方法和 Webhook 处理将被停用。 |
reconciling |
仅限输出。在后台设置或更新连接时,此参数会设为 true。 |
annotations |
可选。允许客户端存储少量任意数据。 包含一系列 |
etag |
可选。此校验和由服务器根据其他字段的值计算得出,可在遇到更新和删除请求时发送,以确保客户端在继续操作之前具有最新值。 |
uid |
仅限输出。系统为连接分配的唯一标识符。 |
cryptoKeyConfig |
可选。加密密钥配置。此字段由客户管理的加密密钥 (CMEK) 功能使用。 |
gitProxyConfig |
可选。Git 代理功能的配置。启用 Git 代理后,客户端可以对连接中关联的代码库执行 Git 操作。了解详情。 |
联合字段 connection_config。连接的配置,具体取决于提供商的类型。connection_config 只能是下列其中一项: |
|
githubConfig |
与 github.com 的连接的配置。 |
githubEnterpriseConfig |
与 GitHub Enterprise 实例的连接的配置。 |
gitlabConfig |
与 gitlab.com 的连接的配置。 |
gitlabEnterpriseConfig |
与 GitLab Enterprise 实例的连接的配置。 |
bitbucketDataCenterConfig |
与 Bitbucket 数据中心实例的连接的配置。 |
bitbucketCloudConfig |
用于连接到 Bitbucket Cloud 实例的配置。 |
secureSourceManagerInstanceConfig |
与 Secure Source Manager 实例的连接配置。 |
httpConfig |
可选。与 HTTP 服务提供商的连接的配置。 |
GitHubConfig
| JSON 表示法 |
|---|
{ "githubApp": enum ( |
| 字段 | |
|---|---|
githubApp |
必需。不可变。已安装到 GitHub 用户或组织的 GitHub 应用。 |
authorizerCredential |
可选。已授权 GitHub 应用的账号的 OAuth 凭证。建议使用机器人账号,而不是真人用户账号。OAuth 令牌必须与此配置的 GitHub 应用相关联。 |
appInstallationId |
可选。GitHub 应用安装 ID。 |
installationUri |
仅限输出。要前往的 URI,以便管理与此 GitHubConfig 关联的安装。 |
OAuthCredential
| JSON 表示法 |
|---|
{ "oauthTokenSecretVersion": string, "username": string } |
| 字段 | |
|---|---|
oauthTokenSecretVersion |
必需。一个 SecretManager 资源,其中包含用于授权连接的 OAuth 令牌。格式: |
username |
仅限输出。与此令牌关联的用户名。 |
GitHubEnterpriseConfig
| JSON 表示法 |
|---|
{
"hostUri": string,
"appId": string,
"appSlug": string,
"privateKeySecretVersion": string,
"webhookSecretSecretVersion": string,
"appInstallationId": string,
"installationUri": string,
"serviceDirectoryConfig": {
object ( |
| 字段 | |
|---|---|
hostUri |
必需。此连接所针对的 GitHub Enterprise 主机的 URI。 |
appId |
可选。根据清单创建的 GitHub 应用的 ID。 |
appSlug |
仅限输出。GitHub 应用的网址友好名称。 |
privateKeySecretVersion |
可选。包含 GitHub 应用私钥的 SecretManager 资源,格式为 |
webhookSecretSecretVersion |
可选。包含 GitHub 应用的网络钩子 Secret 的 SecretManager 资源,格式为 |
appInstallationId |
可选。GitHub 应用的安装 ID。 |
installationUri |
仅限输出。要导航到的 URI,以便管理与此 GitHubEnterpriseConfig 关联的安装。 |
serviceDirectoryConfig |
可选。使用 Service Directory 私密连接到 GitHub Enterprise 服务器的配置。仅当 GitHub Enterprise 服务器托管在本地且无法通过公共互联网访问时,才应设置此字段。如果此字段留空,系统将通过公共互联网调用 GitHub Enterprise 服务器。 |
serverVersion |
仅限输出。在 host_uri 安装的 GitHub Enterprise 版本。 |
sslCaCertificate |
可选。用于向 GitHub Enterprise 发出请求的 SSL 证书。 |
organization |
可选。不可变。创建 GitHub 应用的 GitHub Enterprise 组织。 |
ServiceDirectoryConfig
| JSON 表示法 |
|---|
{ "service": string } |
| 字段 | |
|---|---|
service |
必需。Service Directory 服务名称。格式:projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}。 |
GitLabConfig
| JSON 表示法 |
|---|
{ "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| 字段 | |
|---|---|
webhookSecretSecretVersion |
必需。不可变。包含 GitLab 项目的 webhook 密钥的 SecretManager 资源,格式为 |
readAuthorizerCredential |
必需。具有最低 |
authorizerCredential |
必需。具有最低 |
UserCredential
| JSON 表示法 |
|---|
{ "userTokenSecretVersion": string, "username": string } |
| 字段 | |
|---|---|
userTokenSecretVersion |
必需。一个 SecretManager 资源,其中包含用于向 Developer Connect 连接授权的用户令牌。格式: |
username |
仅限输出。与此令牌关联的用户名。 |
GitLabEnterpriseConfig
| JSON 表示法 |
|---|
{ "hostUri": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| 字段 | |
|---|---|
hostUri |
必需。此连接所针对的 GitLab Enterprise 主机的 URI。 |
webhookSecretSecretVersion |
必需。不可变。包含 GitLab 项目的 webhook 密钥的 SecretManager 资源,格式为 |
readAuthorizerCredential |
必需。具有最低 |
authorizerCredential |
必需。具有最低 |
serviceDirectoryConfig |
可选。使用 Service Directory 私密连接到 GitLab Enterprise 实例的配置。仅当 GitLab Enterprise 服务器托管在本地且无法通过公共互联网访问时,才应设置此字段。如果此字段留空,系统将通过公共互联网调用 GitLab Enterprise 服务器。 |
sslCaCertificate |
可选。用于向 GitLab Enterprise 实例发出请求的 SSL 证书授权机构证书。 |
serverVersion |
仅限输出。在 |
BitbucketDataCenterConfig
| JSON 表示法 |
|---|
{ "hostUri": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| 字段 | |
|---|---|
hostUri |
必需。此连接所针对的 Bitbucket 数据中心主机的 URI。 |
webhookSecretSecretVersion |
必需。不可变。包含用于验证 Webhook 事件的 Webhook 密钥的 SecretManager 资源,格式为 |
readAuthorizerCredential |
必需。具有最低 |
authorizerCredential |
必需。具有最低 |
serviceDirectoryConfig |
可选。使用 Service Directory 私密连接到 Bitbucket 数据中心 实例的配置。仅当 Bitbucket 数据中心托管在本地且无法通过公共互联网访问时,才应设置此项。如果此字段留空,系统将通过公共互联网调用 Bitbucket 数据中心。 |
sslCaCertificate |
可选。向 Bitbucket 数据中心发出请求时要信任的 SSL 证书授权机构。 |
serverVersion |
仅限输出。在 |
BitbucketCloudConfig
| JSON 表示法 |
|---|
{ "workspace": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| 字段 | |
|---|---|
workspace |
必需。要连接到 Google Cloud Platform 的 Bitbucket Cloud 工作区 ID。 |
webhookSecretSecretVersion |
必需。不可变。包含用于验证 Webhook 事件的 Webhook 密钥的 SecretManager 资源,格式为 |
readAuthorizerCredential |
必需。具有最低 |
authorizerCredential |
必需。具有最低 |
SecureSourceManagerInstanceConfig
| JSON 表示法 |
|---|
{ "instance": string } |
| 字段 | |
|---|---|
instance |
必需。不可变。Secure Source Manager 实例资源,格式为 |
GenericHTTPEndpointConfig
| JSON 表示法 |
|---|
{ "hostUri": string, "serviceDirectoryConfig": { object ( |
| 字段 | |
|---|---|
hostUri |
必需。不可变。服务提供商的 HTTPS 端点。 |
serviceDirectoryConfig |
可选。使用 Service Directory 私密连接到 HTTP 服务提供商的配置。仅当 HTTP 服务提供商托管在本地且无法通过公共互联网访问时,才应设置此字段。如果此字段留空,则系统将通过公共互联网调用 HTTP 服务提供商。 |
sslCaCertificate |
可选。用于向 HTTP 服务提供商发送请求的 SSL 证书。 |
联合字段 authentication。用于向 HTTP 服务提供商发送请求的身份验证机制。authentication 只能是下列其中一项: |
|
basicAuthentication |
可选。使用用户名和密码进行基本身份验证。 |
bearerTokenAuthentication |
可选。使用令牌进行不记名令牌身份验证。 |
BasicAuthentication
| JSON 表示法 |
|---|
{ "username": string, // Union field |
| 字段 | |
|---|---|
username |
必需。要进行身份验证的用户名。 |
联合字段 password。用于进行身份验证的密码。password 只能是下列其中一项: |
|
passwordSecretVersion |
用于进行身份验证的密码 SecretManager 密文版本。 |
BearerTokenAuthentication
| JSON 表示法 |
|---|
{ // Union field |
| 字段 | |
|---|---|
联合字段 token。用于进行身份验证的令牌。token 只能是下列其中一项: |
|
tokenSecretVersion |
可选。要作为其进行身份验证的令牌 SecretManager 密钥版本。 |
时间戳
| JSON 表示法 |
|---|
{ "seconds": string, "nanos": integer } |
| 字段 | |
|---|---|
seconds |
表示世界协调时间 (UTC) 的秒数(从 Unix 纪元 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 |
|
InstallationState
| JSON 表示法 |
|---|
{
"stage": enum ( |
| 字段 | |
|---|---|
stage |
仅限输出。安装流程的当前步骤。 |
message |
仅限输出。说明用户接下来应采取哪些措施来继续安装的消息。如果安装已完成,则为空字符串。 |
actionUri |
仅限输出。Link to follow for next action. 如果安装已完成,则为空字符串。 |
AnnotationsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 字段 | |
|---|---|
key |
|
value |
|
CryptoKeyConfig
| JSON 表示法 |
|---|
{ "keyReference": string } |
| 字段 | |
|---|---|
keyReference |
必需。用于加密/解密客户数据的密钥的名称。对于 Cloud KMS 中的密钥,密钥应采用 |
GitProxyConfig
| JSON 表示法 |
|---|
{ "enabled": boolean, "httpProxyBaseUri": string } |
| 字段 | |
|---|---|
enabled |
可选。如果将此项设置为 true,则可以使用 Git 代理对连接中关联的代码库执行 Git 操作。 |
httpProxyBaseUri |
仅限输出。HTTP 代理端点的基本 URI。格式为 |
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 |
安装流程已完成。 |
工具注释
工具注解会发送到 MCP 客户端,用于描述给定工具的基本风险。大多数客户端会将这些提示视为不可信,但可用于决定何时向用户发送确认提示。
除了标题字符串之外,还定义了以下布尔值提示:
readOnlyHint:如果为 true,则该工具不会修改其环境。默认值:false。destructiveHint:如果为 true,则该工具可以执行破坏性操作。如果为 false,则该工具只能执行添加操作。默认值:true。idempotentHint:如果为 true,则使用相同参数重复调用该工具不会对其环境产生额外影响。默认值:false。openWorldHint:如果为 true,则该工具可以与外部实体的“开放世界”进行交互。如果为 false,则该工具只能与内部实体交互。例如,网页搜索工具是开放世界,而记忆工具不是开放世界。
破坏性提示:❌ | 等幂性提示:✅ | 只读提示:✅ | 开放世界提示:❌