Herramienta: create-repo-link
Crea un nuevo GitRepositoryLink en un proyecto y una ubicación determinados.
En la siguiente muestra de código, se indica cómo usar curl para llamar a la herramienta de MCP create-repo-link.
| Solicitud de 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 }' |
Esquema de entrada
Mensaje para crear un GitRepositoryLink
CreateGitRepositoryLinkRequest
| Representación JSON |
|---|
{
"parent": string,
"gitRepositoryLink": {
object ( |
| Campos | |
|---|---|
parent |
Obligatorio. Valor para el elemento superior. |
gitRepositoryLink |
Obligatorio. Es el recurso que se está creando. |
gitRepositoryLinkId |
Obligatorio. Es el ID que se usará para el repositorio, que se convertirá en el componente final del nombre del recurso del repositorio. Este ID debe ser único en la conexión. Permite caracteres alfanuméricos y cualquiera de los siguientes: -._~%!$&'()*+,;=@. |
requestId |
Es opcional. Un ID de solicitud opcional para identificar solicitudes. Especifica un ID de solicitud único para que, si debes reintentar la solicitud, el servidor sepa que debe ignorarla si ya se completó. El servidor lo garantizará durante, al menos, 60 minutos después de la primera solicitud. Por ejemplo, imagina una situación en la que haces una solicitud inicial y se agota el tiempo de espera. Si vuelves a hacer la solicitud con el mismo ID, el servidor puede verificar si se recibió la operación original con el mismo ID y, de ser así, ignorar la segunda solicitud. Esto evita que los clientes creen compromisos duplicados por accidente. El ID de solicitud debe ser un UUID válido, con la excepción de que no se admite ningún UUID cero (00000000-0000-0000-0000-000000000000). |
validateOnly |
Es opcional. Si se configura, valida la solicitud, pero no la publica. |
GitRepositoryLink
| Representación 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 } |
| Campos | |
|---|---|
name |
Es el identificador. Es el nombre del recurso del repositorio, en el formato |
cloneUri |
Obligatorio. Es el URI de clonación de Git. |
createTime |
Solo salida. Marca de tiempo de la fecha de creación. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
updateTime |
Solo salida. Es la marca de tiempo de la actualización. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
deleteTime |
Solo salida. Borrar marca de tiempo. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
labels |
Opcional. Etiquetas como pares clave-valor Un objeto que contiene una lista de pares |
etag |
Es opcional. El servidor calcula esta suma de comprobación según el valor de otros campos y se puede enviar en las solicitudes de actualización y eliminación para garantizar que el cliente tenga un valor actualizado antes de continuar. |
reconciling |
Solo salida. Se establece en verdadero cuando la conexión se configura o actualiza en segundo plano. |
annotations |
Es opcional. Permite que los clientes almacenen pequeñas cantidades de datos arbitrarios. Un objeto que contiene una lista de pares |
uid |
Solo salida. Es un identificador único asignado por el sistema para el GitRepositoryLink. |
webhookId |
Solo salida. Es el ID externo del webhook creado para el repositorio. |
gitProxyUri |
Solo salida. Es el URI para acceder al repositorio vinculado a través del proxy de Git. Este campo solo se completa si el proxy de Git está habilitado para la conexión. |
Marca de tiempo
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa los segundos del horario UTC desde el tiempo Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z). |
nanos |
Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Deben ser valores de 0 a 999,999,999 inclusive. |
LabelsEntry
| Representación JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| Representación JSON |
|---|
{ "key": string, "value": string } |
| Campos | |
|---|---|
key |
|
value |
|
Esquema de salida
Este recurso representa una operación de larga duración que es el resultado de una llamada a la API de la red.
Operación
| Representación JSON |
|---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
| Campos | |
|---|---|
name |
El nombre asignado por el servidor, que solo es único dentro del mismo servicio que lo muestra en un principio. Si usas la asignación HTTP predeterminada, el |
metadata |
Metadatos específicos del servicio asociados con la operación. Por lo general, contiene información de progreso y metadatos comunes, como la fecha de creación. Puede que algunos servicios no proporcionen estos metadatos. Cualquier método que muestra una operación de larga duración debe documentar el tipo de metadatos, si corresponde. Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
done |
Si el valor es |
Campo de unión result. El resultado de la operación, que puede ser un error o una response válida. Si done == false, no se establecen error ni response. Si done == true, se puede establecer error o response. Es posible que algunos servicios no proporcionen el resultado. result puede ser solo uno de los siguientes: |
|
error |
El resultado de error de la operación en caso de falla o cancelación. |
response |
Es la respuesta normal y correcta de la operación. Si el método original no devuelve datos en caso de éxito, como Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
Cualquiera
| Representación JSON |
|---|
{ "typeUrl": string, "value": string } |
| Campos | |
|---|---|
typeUrl |
Identifica el tipo de mensaje de Protobuf serializado con una referencia de URI que consta de un prefijo que termina en una barra diagonal y el nombre de tipo completamente calificado. Ejemplo: type.googleapis.com/google.protobuf.StringValue Esta cadena debe contener al menos un carácter El prefijo es arbitrario y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último Todas las cadenas de URL de tipo deben ser referencias de URI legales con la restricción adicional (para el formato de texto) de que el contenido de la referencia debe constar solo de caracteres alfanuméricos, escapes codificados con porcentaje y caracteres del siguiente conjunto (sin incluir las comillas simples exteriores): En el diseño original de |
value |
Contiene una serialización de Protobuf del tipo que se describe en type_url. Es una cadena codificada en Base64. |
Estado
| Representación JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Campos | |
|---|---|
code |
El código de estado, que debe ser un valor enum de |
message |
Un mensaje de error dirigido al desarrollador, que debe estar en inglés. Cualquier mensaje de error dirigido al usuario debe localizarse y enviarse al campo |
details[] |
Una lista de mensajes que contienen los detalles del error. Hay un conjunto común de tipos de mensajes para que usen las API. Un objeto que contiene campos de un tipo arbitrario. Un campo adicional |
Anotaciones de herramientas
Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se puede enviar un mensaje de confirmación a un usuario.
Junto con la cadena de título, las siguientes sugerencias booleanas se definen de la siguiente manera:
readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.
Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌