Strumento: diff-repo-commit
Ottieni la differenza tra due commit in un repository Git. Per recuperare i blocchi di patch riga per riga, passa path_filters (ad esempio, ['**'] per tutti i file).
Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP diff-repo-commit.
| 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": "diff-repo-commit", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
Messaggio di richiesta per DiffGitRepositoryLinkCommit.
DiffGitRepositoryLinkCommitRequest
| Rappresentazione JSON |
|---|
{ "name": string, "baseSha": string, "headSha": string, "pathFilters": [ string ] } |
| Campi | |
|---|---|
name |
Obbligatorio. Il nome della risorsa GitRepositoryLink. |
baseSha |
Obbligatorio. Lo SHA o il riferimento del commit di base. |
headSha |
Obbligatorio. La SHA o il riferimento del commit head. |
pathFilters[] |
Facoltativo. Pattern di percorso o percorsi esatti per filtrare i file restituiti. Quando viene specificato |
Schema di output
Messaggio di risposta per DiffGitRepositoryLinkCommit.
DiffGitRepositoryLinkCommitResponse
| Rappresentazione JSON |
|---|
{
"files": [
{
object ( |
| Campi | |
|---|---|
files[] |
La differenza tra i file estratta dalla differenza unificata. |
FileDiff
| Rappresentazione JSON |
|---|
{ "path": string, "status": string, "patch": string } |
| Campi | |
|---|---|
path |
Percorso relativo del file nel repository. |
status |
Stato della modifica: "ADDED", "MODIFIED", "REMOVED", "RENAMED". |
patch |
Sezione di patch diff unificata standard per il file. Compilato solo quando |
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: ❌