MCP Tools Reference: developerconnect.googleapis.com

Herramienta: open-repo-pull-request

Abre una solicitud de extracción en el repositorio de SCM remoto.

En la siguiente muestra de código, se indica cómo usar curl para llamar a la herramienta de MCP open-repo-pull-request.

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

Esquema de entrada

Mensaje para abrir la solicitud de extracción de SCM.

OpenGitRepositoryLinkPullRequestRequest

Representación JSON
{
  "name": string,
  "pullRequest": {
    object (PullRequest)
  }
}
Campos
name

string

Obligatorio. Es el nombre del recurso GitRepositoryLink en el formato projects/*/locations/*/connections/*/gitRepositoryLinks/*.

pullRequest

object (PullRequest)

Obligatorio. Los detalles de la solicitud de extracción que se abrirán. Campos de entrada utilizados: title, body, head_ref, base_ref.

PullRequest

Representación JSON
{
  "id": string,
  "title": string,
  "body": string,
  "headRef": string,
  "baseRef": string,
  "author": string,
  "createTime": string,
  "updateTime": string,
  "mergeTime": string,
  "closeTime": string,
  "declineTime": string,
  "state": enum (State),
  "mergeability": enum (Mergeability),
  "htmlUrl": string
}
Campos
id

string

Obligatorio. Es el ID de la PR.

title

string

Obligatorio. Es el título de la solicitud de extracción.

body

string

Es opcional. Es la descripción del cuerpo de la PR.

headRef

string

Obligatorio. Es el SHA de confirmación de origen de la rama principal.

baseRef

string

Obligatorio. Es el SHA de confirmación de destino de la rama base.

author

string

Solo salida. Es el nombre de usuario del autor.

createTime

string (Timestamp format)

Solo salida. Cuándo se creó la solicitud de extracció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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Cuándo se actualizó la solicitud de extracció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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

mergeTime

string (Timestamp format)

Solo salida. Cuándo se combinó la PR

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

closeTime

string (Timestamp format)

Solo salida. Cuándo se cerró la PR.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

declineTime

string (Timestamp format)

Solo salida. Cuando se rechazó la PR Solo se establece para los proveedores de SCM que admiten el rechazo de solicitudes de extracción. Nunca se establece para GitHub, GitHub Enterprise, GitLab o GitLab Enterprise, donde una solicitud de extracción cerrada sin combinarse es CLOSED.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

state

enum (State)

Solo salida. El estado actual de la solicitud de extracción.

mergeability

enum (Mergeability)

Solo salida. El estado de fusión de la solicitud de extracción.

htmlUrl

string

Solo salida. Es la URL HTML de la solicitud de extracción en el proveedor de SCM.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

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

integer

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.

Estado

Es el estado de la PR.

Enums
STATE_UNSPECIFIED Valor predeterminado.
OPEN La PR está abierta.
CLOSED La PR se cierra.
MERGED Se combina la PR.
DECLINED Se rechaza la PR. Solo lo usan los proveedores de SCM que admiten el rechazo de solicitudes de extracción. Nunca se usa para GitHub, GitHub Enterprise, GitLab o GitLab Enterprise, donde una solicitud de extracción cerrada sin combinarse es CLOSED.

Posibilidad de combinación

El estado de capacidad de combinación de una solicitud de extracción.

Enums
MERGEABILITY_UNSPECIFIED No se especificó el estado de la capacidad de combinación.
MERGEABLE La solicitud de extracción se puede combinar sin problemas y sin conflictos de Git.
CONFLICTING La solicitud de extracción tiene conflictos de combinación y no se puede combinar de forma limpia.
COMPUTING El proveedor de SCM ascendente está calculando de forma asíncrona el estado de fusión.

Esquema de salida

Es un mensaje que representa una solicitud de extracción de SCM.

PullRequest

Representación JSON
{
  "id": string,
  "title": string,
  "body": string,
  "headRef": string,
  "baseRef": string,
  "author": string,
  "createTime": string,
  "updateTime": string,
  "mergeTime": string,
  "closeTime": string,
  "declineTime": string,
  "state": enum (State),
  "mergeability": enum (Mergeability),
  "htmlUrl": string
}
Campos
id

string

Obligatorio. Es el ID de la PR.

title

string

Obligatorio. Es el título de la solicitud de extracción.

body

string

Es opcional. Es la descripción del cuerpo de la PR.

headRef

string

Obligatorio. Es el SHA de confirmación de origen de la rama principal.

baseRef

string

Obligatorio. Es el SHA de confirmación de destino de la rama base.

author

string

Solo salida. Es el nombre de usuario del autor.

createTime

string (Timestamp format)

Solo salida. Cuándo se creó la solicitud de extracció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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo salida. Cuándo se actualizó la solicitud de extracció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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

mergeTime

string (Timestamp format)

Solo salida. Cuándo se combinó la PR

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

closeTime

string (Timestamp format)

Solo salida. Cuándo se cerró la PR.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

declineTime

string (Timestamp format)

Solo salida. Cuando se rechazó la PR Solo se establece para los proveedores de SCM que admiten el rechazo de solicitudes de extracción. Nunca se establece para GitHub, GitHub Enterprise, GitLab o GitLab Enterprise, donde una solicitud de extracción cerrada sin combinarse es CLOSED.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

state

enum (State)

Solo salida. El estado actual de la solicitud de extracción.

mergeability

enum (Mergeability)

Solo salida. El estado de fusión de la solicitud de extracción.

htmlUrl

string

Solo salida. Es la URL HTML de la solicitud de extracción en el proveedor de SCM.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

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

integer

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.

Estado

Es el estado de la PR.

Enums
STATE_UNSPECIFIED Valor predeterminado.
OPEN La PR está abierta.
CLOSED La PR se cierra.
MERGED Se combina la PR.
DECLINED Se rechaza la PR. Solo lo usan los proveedores de SCM que admiten el rechazo de solicitudes de extracción. Nunca se usa para GitHub, GitHub Enterprise, GitLab o GitLab Enterprise, donde una solicitud de extracción cerrada sin combinarse es CLOSED.

Posibilidad de combinación

El estado de capacidad de combinación de una solicitud de extracción.

Enums
MERGEABILITY_UNSPECIFIED No se especificó el estado de la capacidad de combinación.
MERGEABLE La solicitud de extracción se puede combinar sin problemas y sin conflictos de Git.
CONFLICTING La solicitud de extracción tiene conflictos de combinación y no se puede combinar de forma limpia.
COMPUTING El proveedor de SCM ascendente está calculando de forma asíncrona el estado de fusión.

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: ❌