MCP Tools Reference: developerconnect.googleapis.com

Outil : fetch-repo-file-blame

Récupérez les informations de blame pour un fichier spécifique dans un dépôt Git.

L'exemple de code suivant montre comment utiliser curl pour appeler l'outil MCP fetch-repo-file-blame.

Requête 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
}'

Schéma d'entrée

Message de requête pour FetchGitRepositoryLinkFileBlame.

FetchGitRepositoryLinkFileBlameRequest

Représentation JSON
{
  "name": string,
  "ref": string,
  "path": string,
  "firstLine": integer,
  "lastLine": integer
}
Champs
name

string

Obligatoire. Nom de ressource du GitRepositoryLink au format projects/*/locations/*/connections/*/gitRepositoryLinks/*.

ref

string

Obligatoire. SHA du commit SCM ou révision symbolique (par exemple, nom de la branche, tag) à partir duquel récupérer le blame.

path

string

Obligatoire. Chemin d'accès au fichier dans le dépôt.

firstLine

integer

Facultatif. Numéro de ligne de début (indexé sur 1) de la plage à blâmer (inclus). Si aucune valeur n'est spécifiée, l'annotation commence à la ligne 1.

lastLine

integer

Facultatif. Numéro de ligne de fin (indexé à partir de 1) de la plage à blâmer (inclus). Si ce paramètre n'est pas spécifié, l'annotation s'étend jusqu'à la fin du fichier.

Schéma de sortie

Message de réponse pour FetchGitRepositoryLinkFileBlame.

FetchGitRepositoryLinkFileBlameResponse

Représentation JSON
{
  "ranges": [
    {
      object (BlameRange)
    }
  ]
}
Champs
ranges[]

object (BlameRange)

Liste des plages de blâme pour le fichier.

BlameRange

Représentation JSON
{
  "firstLine": integer,
  "lastLine": integer,
  "commit": {
    object (SCMCommit)
  }
}
Champs
firstLine

integer

Numéro de ligne de début de la plage (indexé sur 1, inclus).

lastLine

integer

Numéro de ligne de fin de la plage (indexé sur 1, inclusif).

commit

object (SCMCommit)

Métadonnées de commit pour cette plage de lignes.

SCMCommit

Représentation JSON
{
  "sha": string,
  "message": string,
  "author": string,
  "authorEmail": string,
  "commitTime": string,
  "url": string
}
Champs
sha

string

SHA de commit SCM complet de 40 caractères.

message

string

Texte du message de commit.

author

string

Nom à afficher de l'auteur.

authorEmail

string

Adresse e-mail de l'auteur.

commitTime

string (Timestamp format)

Horodatage de la création du commit.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

url

string

Lien URL HTML du fournisseur de gestion de code source pour ce commit.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. Doit être compris entre -62135596800 et 253402300799 inclus (ce qui correspond à la période allant du 01/01/0001 à 00:00:00 UTC au 31/12/9999 à 23:59:59 UTC).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 (inclus).

Annotations d'outils

Les annotations d'outil sont envoyées aux clients MCP pour décrire le risque de base d'un outil donné. La plupart des clients considèrent ces indications comme non fiables, mais elles peuvent être utilisées pour décider quand envoyer une invite de confirmation à un utilisateur.

En plus de la chaîne de titre, les indices booléens suivants sont définis comme suit :

  • readOnlyHint : si la valeur est "true", l'outil ne modifie pas son environnement. Valeur par défaut : "false".
  • destructiveHint : si la valeur est "true", l'outil peut effectuer des actions destructrices. Si la valeur est "false", l'outil ne peut effectuer que des actions d'ajout. Valeur par défaut : "true".
  • idempotentHint : si la valeur est "true", l'appel répété de l'outil avec les mêmes arguments n'aura aucun effet supplémentaire sur son environnement. Valeur par défaut : "false".
  • openWorldHint : si la valeur est "true", l'outil peut interagir avec un "monde ouvert" d'entités externes. Si la valeur est "false", l'outil ne peut interagir qu'avec des entités internes. Par exemple, un outil de recherche sur le Web serait en monde ouvert, tandis qu'un outil de mémoire ne le serait pas.

Indice "Destructive" : ❌ | Indice "Idempotent" : ✅ | Indice "Read Only" : ✅ | Indice "Open World" : ❌