MCP Tools Reference: developerconnect.googleapis.com

ツール: fetch-repo-file-blame

Git リポジトリ内の特定のファイルの blame 情報を取得します。

次のコードサンプルは、curl を使用して fetch-repo-file-blame 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": "fetch-repo-file-blame",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

入力スキーマ

FetchGitRepositoryLinkFileBlame のリクエスト メッセージ。

FetchGitRepositoryLinkFileBlameRequest

JSON 表現
{
  "name": string,
  "ref": string,
  "path": string,
  "firstLine": integer,
  "lastLine": integer
}
フィールド
name

string

必須。GitRepositoryLink のリソース名(projects/*/locations/*/connections/*/gitRepositoryLinks/* 形式)。

ref

string

必須。SCM commit SHA、または blame を取得するシンボリック リビジョン(ブランチ名、タグなど)。

path

string

必須。リポジトリ内のファイルパス。

firstLine

integer

省略可。blame の対象範囲の開始行番号(1 から始まるインデックス、この行を含む)。指定しない場合、blame は 1 行目から開始されます。

lastLine

integer

省略可。blame の範囲の終了行番号(1 から始まるインデックス、この行を含む)。指定しない場合、blame はファイルの末尾まで拡張されます。

出力スキーマ

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

FetchGitRepositoryLinkFileBlameResponse

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

object (BlameRange)

ファイルの blame 範囲のリスト。

BlameRange

JSON 表現
{
  "firstLine": integer,
  "lastLine": integer,
  "commit": {
    object (SCMCommit)
  }
}
フィールド
firstLine

integer

範囲の 1 から始まる開始行番号(この行を含む)。

lastLine

integer

範囲の 1 から始まる終了行番号(この値を含む)。

commit

object (SCMCommit)

この行範囲の commit メタデータ。

SCMCommit

JSON 表現
{
  "sha": string,
  "message": string,
  "author": string,
  "authorEmail": string,
  "commitTime": string,
  "url": string
}
フィールド
sha

string

40 文字の完全な SCM commit SHA。

message

string

commit メッセージのテキスト。

author

string

作成者の表示名。

authorEmail

string

作成者のメールアドレス。

commitTime

string (Timestamp format)

commit が作成されたときのタイムスタンプ。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z"、"2014-10-02T15:01:23+05:30"。

url

string

この commit の SCM プロバイダの HTML URL リンク。

タイムスタンプ

JSON 表現
{
  "seconds": string,
  "nanos": integer
}
フィールド
seconds

string (int64 format)

UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。

nanos

integer

ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。

ツールのアノテーション

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

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

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

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