MCP Tools Reference: developerconnect.googleapis.com

ツール: 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

string

必須。GitRepositoryLink のリソース名。

baseSha

string

必須。ベース commit SHA または ref。

headSha

string

必須。ヘッド commit SHA または ref。

pathFilters[]

string

省略可。返されるファイルをフィルタするパスパターンまたは正確なパス。path_filters が指定されている場合、一致するすべてのファイルに FileDiff.patch が入力されます(変更されたすべてのファイルのパッチを含めるには、["**"] を使用します)。path_filters が省略されているか空の場合、FileDiff の完全なリストがパッチ差分なしで返されます(FileDiff.patch は空です)。

出力スキーマ

DiffGitRepositoryLinkCommit のレスポンス メッセージ。

DiffGitRepositoryLinkCommitResponse

JSON 表現
{
  "files": [
    {
      object (FileDiff)
    }
  ]
}
フィールド
files[]

object (FileDiff)

統合差分から抽出されたファイルの差分。

FileDiff

JSON 表現
{
  "path": string,
  "status": string,
  "patch": string
}
フィールド
path

string

リポジトリ内のファイルへの相対パス。

status

string

変更のステータス: 「ADDED」、「MODIFIED」、「REMOVED」、「RENAMED」。

patch

string

ファイルの標準の統合差分パッチハンク。リクエストで path_filters が指定されている場合にのみ入力されます。それ以外の場合は空です。

ツールのアノテーション

ツールのアノテーションは、特定のツールの基本的なリスクを説明するために MCP クライアントに送信されます。ほとんどのクライアントは、これらのヒントを信頼できないものとして扱いますが、確認プロンプトをユーザーに送信するタイミングを決定するために使用できます。

タイトル文字列とともに、次のブール値のヒントが定義されています。

  • readOnlyHint: true の場合、ツールは環境を変更しません。デフォルトは false です。
  • destructiveHint: true の場合、ツールは破壊的なアクションを実行できます。false の場合、ツールは追加アクションのみを実行できます。デフォルト値は true です。
  • idempotentHint: true の場合、同じ引数でツールを繰り返し呼び出しても、環境に副次的影響は発生しません。デフォルトは false です。
  • openWorldHint: true の場合、ツールは外部エンティティの「オープンワールド」とやり取りできます。false の場合、ツールは内部エンティティとのみやり取りできます。たとえば、ウェブ検索ツールはオープン ワールドですが、メモリツールはオープン ワールドではありません。

破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌