MCP Tools Reference: developerconnect.googleapis.com

Ferramenta: fetch-repo-pull-request-list

Busca uma lista de solicitações de pull de um repositório Git.

O exemplo de código abaixo mostra como usar curl para chamar a ferramenta MCP fetch-repo-pull-request-list.

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

Esquema de entrada

Mensagem de solicitação para FetchGitRepositoryLinkPullRequestList.

FetchGitRepositoryLinkPullRequestListRequest

Representação JSON
{
  "name": string,
  "filter": string,
  "pageSize": integer,
  "pageToken": string
}
Campos
name

string

Obrigatório. O nome do recurso GitRepositoryLink no formato projects/*/locations/*/connections/*/gitRepositoryLinks/*.

filter

string

Opcional. Uma expressão de filtro que filtra as solicitações de pull retornadas na resposta. Somente uma comparação de igualdade em state é aceita, por exemplo, state = "OPEN". Os valores com suporte são OPEN, CLOSED e MERGED. DECLINED só é compatível com provedores de SCM que aceitam a recusa de solicitações de pull e retorna INVALID_ARGUMENT para GitHub, GitHub Enterprise, GitLab e GitLab Enterprise. Outros valores ou expressões retornam INVALID_ARGUMENT. O padrão será state = "OPEN" se não for especificado.

pageSize

integer

Opcional. Número de resultados a serem retornados na lista. O padrão é 20. O máximo é 100. Uma página pode conter menos de page_size resultados, mesmo quando há mais resultados disponíveis. Use next_page_token para verificar se há mais páginas.

pageToken

string

Opcional. Um token de página recebido de uma chamada FetchGitRepositoryLinkPullRequestList anterior. Forneça isso para recuperar a página subsequente.

Esquema de saída

Mensagem de resposta para FetchGitRepositoryLinkPullRequestList.

FetchGitRepositoryLinkPullRequestListResponse

Representação JSON
{
  "pullRequests": [
    {
      object (PullRequest)
    }
  ],
  "nextPageToken": string
}
Campos
pullRequests[]

object (PullRequest)

A lista de solicitações de pull.

nextPageToken

string

Um token, que pode ser enviado como page_token para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

PullRequest

Representação 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

Obrigatório. O ID da solicitação de envio.

title

string

Obrigatório. O título da solicitação de envio.

body

string

Opcional. A descrição do corpo da solicitação de envio.

headRef

string

Obrigatório. O SHA de commit de origem da ramificação principal.

baseRef

string

Obrigatório. O SHA de commit de destino da ramificação de base.

author

string

Apenas saída. O nome de usuário do autor.

createTime

string (Timestamp format)

Apenas saída. Quando a solicitação de envio foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Quando a solicitação de envio foi atualizada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

mergeTime

string (Timestamp format)

Apenas saída. Quando a solicitação de envio foi mesclada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

closeTime

string (Timestamp format)

Apenas saída. Quando a solicitação de envio foi fechada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

declineTime

string (Timestamp format)

Apenas saída. Quando a solicitação de pull foi recusada. Definido apenas para provedores de SCM que aceitam a recusa de solicitações de pull. Nunca definido para o GitHub, GitHub Enterprise, GitLab ou GitLab Enterprise, em que uma solicitação de envio fechada sem ser mesclada é CLOSED.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

state

enum (State)

Apenas saída. O estado atual da solicitação de envio.

mergeability

enum (Mergeability)

Apenas saída. O estado de mesclabilidade da solicitação de envio.

htmlUrl

string

Apenas saída. O URL HTML da solicitação de envio no provedor de SCM.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799, inclusive (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999.

Estado

O estado da solicitação de envio.

Tipos enumerados
STATE_UNSPECIFIED Valor padrão.
OPEN A solicitação de envio está aberta.
CLOSED A PR está fechada.
MERGED A solicitação de envio é mesclada.
DECLINED A solicitação de pull é recusada. Usado apenas por provedores de SCM que aceitam a recusa de solicitações de pull. Nunca é usado para o GitHub, GitHub Enterprise, GitLab ou GitLab Enterprise, em que uma solicitação de envio fechada sem ser mesclada é CLOSED.

Capacidade de mesclagem

O estado de mesclabilidade de uma solicitação de envio.

Tipos enumerados
MERGEABILITY_UNSPECIFIED O estado de mesclagem não foi especificado.
MERGEABLE A solicitação de envio pode ser mesclada sem conflitos do Git.
CONFLICTING A solicitação de envio tem conflitos de mesclagem e não pode ser mesclada de forma limpa.
COMPUTING O estado de mesclabilidade está sendo calculado de forma assíncrona pelo provedor de SCM upstream.

Anotações de ferramentas

As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.

Além da string de título, as seguintes dicas booleanas são definidas:

  • readOnlyHint: se for verdadeiro, a ferramenta não modifica o ambiente. Padrão: false.
  • destructiveHint: se for verdadeiro, a ferramenta poderá realizar ações destrutivas. Se for falso, a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.
  • idempotentHint: se for verdadeiro, chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente. Padrão: false.
  • openWorldHint: se for verdadeiro, a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for falso, a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.

Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de jogos de mundo aberto: ❌