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 |
Obligatoire. Nom de ressource du GitRepositoryLink au format |
ref |
Obligatoire. SHA du commit SCM ou révision symbolique (par exemple, nom de la branche, tag) à partir duquel récupérer le blame. |
path |
Obligatoire. Chemin d'accès au fichier dans le dépôt. |
firstLine |
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 |
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 ( |
| Champs | |
|---|---|
ranges[] |
Liste des plages de blâme pour le fichier. |
BlameRange
| Représentation JSON |
|---|
{
"firstLine": integer,
"lastLine": integer,
"commit": {
object ( |
| Champs | |
|---|---|
firstLine |
Numéro de ligne de début de la plage (indexé sur 1, inclus). |
lastLine |
Numéro de ligne de fin de la plage (indexé sur 1, inclusif). |
commit |
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 |
SHA de commit SCM complet de 40 caractères. |
message |
Texte du message de commit. |
author |
Nom à afficher de l'auteur. |
authorEmail |
Adresse e-mail de l'auteur. |
commitTime |
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 : |
url |
Lien URL HTML du fournisseur de gestion de code source pour ce commit. |
Horodatage
| Représentation JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Champs | |
|---|---|
seconds |
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 |
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" : ❌