ツール: diff-repo-commit
Git リポジトリ内の 2 つの commit 間の差分を取得します。行ごとのパッチハンクを取得するには、path_filters(すべてのファイルの場合は ['**'] など)を渡します。
次のコードサンプルは、curl を使用して diff-repo-commit MCP ツールを呼び出す方法を示しています。
| 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 }' |
入力スキーマ
DiffGitRepositoryLinkCommit のリクエスト メッセージ。
DiffGitRepositoryLinkCommitRequest
| JSON 表現 |
|---|
{ "name": string, "baseSha": string, "headSha": string, "pathFilters": [ string ] } |
| フィールド | |
|---|---|
name |
必須。GitRepositoryLink のリソース名。 |
baseSha |
必須。ベース commit SHA または ref。 |
headSha |
必須。ヘッド commit SHA または ref。 |
pathFilters[] |
省略可。返されるファイルをフィルタするパスパターンまたは正確なパス。 |
出力スキーマ
DiffGitRepositoryLinkCommit のレスポンス メッセージ。
DiffGitRepositoryLinkCommitResponse
| JSON 表現 |
|---|
{
"files": [
{
object ( |
| フィールド | |
|---|---|
files[] |
統合差分から抽出されたファイルの差分。 |
FileDiff
| JSON 表現 |
|---|
{ "path": string, "status": string, "patch": string } |
| フィールド | |
|---|---|
path |
リポジトリ内のファイルへの相対パス。 |
status |
変更のステータス: 「ADDED」、「MODIFIED」、「REMOVED」、「RENAMED」。 |
patch |
ファイルの標準の統合差分パッチハンク。リクエストで |
ツールのアノテーション
ツールのアノテーションは、特定のツールの基本的なリスクを説明するために MCP クライアントに送信されます。ほとんどのクライアントは、これらのヒントを信頼できないものとして扱いますが、確認プロンプトをユーザーに送信するタイミングを決定するために使用できます。
タイトル文字列とともに、次のブール値のヒントが定義されています。
readOnlyHint: true の場合、ツールは環境を変更しません。デフォルトは false です。destructiveHint: true の場合、ツールは破壊的なアクションを実行できます。false の場合、ツールは追加アクションのみを実行できます。デフォルト値は true です。idempotentHint: true の場合、同じ引数でツールを繰り返し呼び出しても、環境に副次的影響は発生しません。デフォルトは false です。openWorldHint: true の場合、ツールは外部エンティティの「オープンワールド」とやり取りできます。false の場合、ツールは内部エンティティとのみやり取りできます。たとえば、ウェブ検索ツールはオープン ワールドですが、メモリツールはオープン ワールドではありません。
破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌