MCP Tools Reference: developerconnect.googleapis.com

Strumento: fetch-repo-file-blame

Recupera le informazioni di attribuzione per un file specifico in un repository Git.

Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP fetch-repo-file-blame.

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

Schema di input

Messaggio di richiesta per FetchGitRepositoryLinkFileBlame.

FetchGitRepositoryLinkFileBlameRequest

Rappresentazione JSON
{
  "name": string,
  "ref": string,
  "path": string,
  "firstLine": integer,
  "lastLine": integer
}
Campi
name

string

Obbligatorio. Il nome risorsa di GitRepositoryLink nel formato projects/*/locations/*/connections/*/gitRepositoryLinks/*.

ref

string

Obbligatorio. Lo SHA del commit SCM o la revisione simbolica (ad esempio, nome del branch, tag) da cui recuperare l'attribuzione.

path

string

Obbligatorio. Il percorso del file all'interno del repository.

firstLine

integer

Facoltativo. Il numero di riga iniziale indicizzato a partire da 1 dell'intervallo da attribuire (incluso). Se non specificato, l'attribuzione inizia dalla riga 1.

lastLine

integer

Facoltativo. Il numero di riga finale indicizzato a partire da 1 dell'intervallo da attribuire (incluso). Se non specificato, l'attribuzione si estende fino alla fine del file.

Schema di output

Messaggio di risposta per FetchGitRepositoryLinkFileBlame.

FetchGitRepositoryLinkFileBlameResponse

Rappresentazione JSON
{
  "ranges": [
    {
      object (BlameRange)
    }
  ]
}
Campi
ranges[]

object (BlameRange)

L'elenco degli intervalli di attribuzione per il file.

BlameRange

Rappresentazione JSON
{
  "firstLine": integer,
  "lastLine": integer,
  "commit": {
    object (SCMCommit)
  }
}
Campi
firstLine

integer

Il numero di riga iniziale dell'intervallo (incluso), indicizzato a partire da 1.

lastLine

integer

Il numero di riga finale dell'intervallo (incluso), indicizzato a partire da 1.

commit

object (SCMCommit)

I metadati del commit per questo intervallo di righe.

SCMCommit

Rappresentazione JSON
{
  "sha": string,
  "message": string,
  "author": string,
  "authorEmail": string,
  "commitTime": string,
  "url": string
}
Campi
sha

string

SHA del commit SCM completo di 40 caratteri.

message

string

Testo del messaggio di commit.

author

string

Il nome visualizzato dell'autore.

authorEmail

string

L'indirizzo email dell'autore.

commitTime

string (Timestamp format)

Timestamp della creazione del commit.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

url

string

Il link all'URL HTML del provider SCM per questo commit.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi dell'ora UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (che corrisponde a un intervallo compreso tra 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori dei secondi negativi con frazioni devono comunque avere valori di nanosecondi non negativi che avanzano nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

Annotazioni dello strumento

Le annotazioni degli strumenti vengono inviate ai client MCP per descrivere il rischio di base di un determinato strumento. La maggior parte dei client considera questi suggerimenti non attendibili, ma possono essere utilizzati per decidere quando inviare un prompt di conferma a un utente.

Oltre alla stringa del titolo, i seguenti suggerimenti booleani sono definiti come segue:

  • readOnlyHint: se true, lo strumento non modifica il suo ambiente. Valore predefinito: false.
  • destructiveHint: se true, lo strumento può eseguire azioni distruttive. Se false, lo strumento può eseguire solo azioni additive. Valore predefinito: true.
  • idempotentHint: se true, la chiamata ripetuta dello strumento con gli stessi argomenti non avrà alcun effetto aggiuntivo sul suo ambiente. Valore predefinito: false.
  • openWorldHint: se true, lo strumento può interagire con un "open world" di entità esterne. Se è false, lo strumento può interagire solo con entità interne. Ad esempio, uno strumento di ricerca web sarebbe open world, mentre uno strumento di memoria non lo sarebbe.

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌