正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。
ドキュメントに関する現在のご利用体験についてお聞かせください。アンケートにご協力ください。

GitLab MCPサーバーツール

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
  • ステータス: ベータ版

この機能に関するフィードバックを提供するには、イシュー561564にコメントしてください。

GitLab MCPサーバーは、既存のGitLabワークフローと連携して動作する一連のツールを提供します。これらのツールを使用して、GitLabと直接やり取りし、一般的なGitLabの操作を実行できます。

get_mcp_server_version

GitLab MCPサーバーの現在のバージョンを返します。

例:

What version of the GitLab MCP server am I connected to?

create_issue

GitLabプロジェクトに新しいイシューを作成します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
title文字列はいイシューのタイトル。
description文字列いいえイシューの説明。
assignee_ids整数の配列いいえ割り当てられたユーザーのIDの配列。
milestone_id整数いいえマイルストーンのID。
labels文字列の配列いいえラベル名の配列。
confidentialブール値いいえイシューを機密に設定します。デフォルトはfalseです。
epic_id整数いいえリンクされたエピックのID。

例:

Create a new issue titled "Fix login bug" in project 123 with description
"Users cannot log in with special characters in password"

get_issue

特定のGitLabイシューに関する詳細情報を取得します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
issue_iid整数はいイシューの内部ID。

例:

Get details for issue 42 in project 123

create_merge_request

GitLabプロジェクトにマージリクエストを作成します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
title文字列はいマージリクエストのタイトル。
source_branch文字列はいソースブランチの名前。
target_branch文字列はいターゲットブランチの名前。
target_project_id整数いいえターゲットプロジェクトのID。
assignee_ids整数の配列いいえマージリクエスト担当者のIDの配列。すべての担当者の割り当てを解除するには、0または空の値を設定します。
reviewer_ids整数の配列いいえマージリクエストのレビュアーのIDの配列。すべてのレビュアーの割り当てを解除するには、0または空の値を設定します。
description文字列いいえマージリクエストの説明。
labels文字列の配列いいえラベル名の配列。すべてのラベルの割り当てを解除するには、空の文字列を設定します。
milestone_id整数いいえマイルストーンのID。

例:

Create a merge request in project gitlab-org/gitlab titled "Bug fix broken specs"
from branch "fix/specs-broken" into "master" and enable squash

get_merge_request

マージリクエスト、およびオプションでその差分、コミット、ノート、パイプライン、またはディスカッションを取得する。includeパラメータで関連データを要求しない限り、ベースのマージリクエストのみが返されます。

パラメータタイプ必須説明
url文字列いいえGitLabのマージリクエストのURL。これ、またはproject_idとmerge_request_iidを指定します。
project_id文字列いいえプロジェクトのIDまたはURLエンコードされたパス。urlが指定されていない場合は必須。
merge_request_iid整数いいえマージリクエストの内部ID。urlが指定されていない場合は必須。
include配列いいえマージリクエストとともに返す関連ファセット。diffs、commits、notes、pipelines、discussionsのいずれかの呼び出しごとに1つのファセットに限定されます。
notes_after文字列いいえノートの順方向ページネーションのカーソル。includeが["notes"]の場合にのみ適用されます。
notes_first整数いいえカーソル以降に返すノートの数(最大100)。includeが["notes"]の場合にのみ適用されます。

diffsファセットは、変更統計(合計値とファイルごとの追加および削除)のみを返します。パッチテキストを取得するには、get_merge_request_diffsを使用します。

例:

Get merge request 15 in project gitlab-org/gitlab with its commits

list_duo_sessions

GitLab Duo Agent Platformのセッションをリスト表示します(Duo Chatセッションを除く)。各セッションには、個別のステータス、ゴールプレビュー、フロー定義、および作成日時が含まれます。プロジェクトセッションにはセッションURLも含まれます。ゴールプレビューは切り詰められている場合があります。

パラメータタイプ必須説明
url文字列いいえGitLabのプロジェクトのURL。セッションをフィルタリングするために使用します。project_idと一緒に使用しないでください。
project_id文字列いいえセッションをフィルタリングするプロジェクトの数値IDまたはフルパス。urlと一緒に使用しないでください。
status_group文字列いいえセッションステータスグループ。active、paused、awaiting_input、completed、failed、canceledのいずれか。
after文字列いいえ順方向ページネーションのカーソル。
first整数いいえ順方向ページネーションで返すセッションの数。デフォルトは20、最大は100です。

status_groupフィルターは、複数の個別のステータスを持つセッションを返すことができます。呼び出しごとに結果の単一ページが返されます。さらにページが存在する場合、レスポンスにはpageInfo.endCursorが含まれており、これをafterとして渡すことができます。

例:

List my active Duo Agent Platform sessions in gitlab-org/gitlab

list_merge_requests

GitLabプロジェクト内のマージリクエストをリスト表示または検索し、コンパクトなマージリクエストのメタデータを返します。

パラメータタイプ必須説明
url文字列いいえプロジェクトのURL。urlまたはproject_idのいずれか一方のみを指定してください。
project_id文字列いいえプロジェクトのIDまたはフルパス。urlまたはproject_idのいずれか一方のみを指定してください。
author_username文字列いいえマージリクエストの作成者のユーザー名でフィルタリングします。
assignee_username文字列いいえ割り当てられたユーザーのユーザー名でフィルタリングします。
reviewer_username文字列いいえレビュアーのユーザー名でフィルタリングします。
state文字列いいえ状態でフィルターします。opened、closed、merged、locked、allのいずれかの状態を含めるには省略します。
scope文字列いいえ認証済みユーザーを基準にフィルタリングします。created_by_me、assigned_to_me、review_requestedのいずれかです。そのフィールドでは、明示的なユーザー名が優先されます。
milestone文字列いいえマイルストーンのタイトルでフィルタリングします。
labels文字列いいえラベル名のコンマ区切りリスト。これらのラベルがすべて付いているマージリクエストのみが返されます。
search文字列いいえマージリクエストのタイトルと説明に対して一致した検索クエリ。
after文字列いいえ順方向ページネーションのカーソル。
first整数いいえ順方向ページネーションで返すマージリクエストの数。デフォルトは20、最大は100です。

単一のマージリクエストを詳細に取得するには、get_merge_requestを使用します。その差分、コミット、およびノートは、get_merge_request_diffs、get_merge_request_commits、およびget_merge_request_notesから入手できます。リソースタイプ全体の全文検索には、searchを使用します。

例:

List my open merge requests in gitlab-org/gitlab

get_merge_request_commits

特定のGitLabマージリクエスト内のコミットのリストを取得します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
merge_request_iid整数はいマージリクエストの内部ID。
per_page整数いいえページあたりのコミット数。
page整数いいえ現在のページ番号。

例:

Show me all commits in merge request 42 from project 123

get_merge_request_diffs

特定のGitLabマージリクエストの差分を取得します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
merge_request_iid整数はいマージリクエストの内部ID。
per_page整数いいえページあたりの差分数。
page整数いいえ現在のページ番号。

例:

What files were changed in merge request 25 in the gitlab project?

get_merge_request_pipelines

特定のGitLabマージリクエストのパイプラインを取得します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
merge_request_iid整数はいマージリクエストの内部ID。

例:

Show me all pipelines for merge request 42 in project gitlab-org/gitlab

create_merge_request_note

認証済みユーザーとして、GitLabマージリクエストのディスカッションにコメントまたは返信を追加します。

パラメータタイプ必須説明
url文字列いいえGitLabマージリクエストのURL。project_idおよびmerge_request_iidが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはURLエンコードされたパス。urlが指定されていない場合は必須。
merge_request_iid整数いいえマージリクエストの内部ID。urlが指定されていない場合は必須。
body文字列はいノートの内容。クイックアクションがトリガーされるのを避けるため、行の先頭に/を使用することはできません(例: /merge)。
discussion_id文字列いいえ返信先となるディスカッションのグローバルID(形式はgid://gitlab/Discussion/<id>)。指定されていない場合、新しいトップレベルのノートが作成されます。

例:

Reply "Thanks, fixed in the latest push" to merge request 42 in project gitlab-org/gitlab

get_merge_request_notes

特定のGitLabマージリクエストのノート(コメントおよびシステムノート)を取得します。

パラメータタイプ必須説明
url文字列いいえGitLabマージリクエストのURL。project_idおよびmerge_request_iidが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはURLエンコードされたパス。urlが指定されていない場合は必須。
merge_request_iid整数いいえマージリクエストの内部ID。urlが指定されていない場合は必須。
after文字列いいえ順方向ページネーションのカーソル。
before文字列いいえ逆方向ページネーションのカーソル。
first整数いいえ順方向ページネーションで返すノート数。
last整数いいえ逆方向ページネーションで返すノート数。

返される各ノートにはディスカッションIDが含まれるため、関連するノートをスレッドにまとめることができます。

例:

Show me all comments on merge request 5 in project gitlab-org/gitlab

save_merge_request_review

認証済みユーザーとしてマージリクエストのレビューアーティファクトを書き込みます。各呼び出しは、methodパラメータで選択された1つの操作のみを実行します:

方法Action
create_noteトップレベルのコメントを追加します。
reply_discussion既存のディスカッションに返信します。
create_diff_note特定の差分行にコメントします。
resolve_discussionディスカッションを解決するか未解決にするか。
submit_review複数の差分コメントとオプションの要約を1回の呼び出しで投稿します。
post_duo_reviewGitLab Duoにマージリクエストのレビューを依頼します。GitLab Duoコードレビューが必要です。
パラメータタイプ必須説明
url文字列いいえGitLabマージリクエストのURL。project_idおよびmerge_request_iidが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlが指定されていない場合は必須。
merge_request_iid整数いいえマージリクエストの内部ID。urlが指定されていない場合は必須。
method文字列はい実行する操作。別のメソッドに属するパラメータは拒否されます。
body文字列いいえノートテキスト。create_note、reply_discussion、およびcreate_diff_noteに必要です。クイックアクションがトリガーされるのを避けるため、行の先頭に/を使用することはできません(例: /merge)。
discussion_id文字列いいえ処理対象のディスカッション。reply_discussionとresolve_discussionに必要です。グローバルIDまたは裸のディスカッションIDを受け入れます。
internalブール値いいえcreate_noteの場合、ノートを内部としてマークします。
resolvedブール値いいえresolve_discussionの場合: trueは解決する、falseは未解決にする。そのメソッドに必要です。
old_path文字列いいえcreate_diff_noteの場合、変更前のファイルパス。old_pathまたはnew_path、あるいはその両方を指定します。
new_path文字列いいえcreate_diff_noteの場合、変更後のファイルパス。
old_line整数いいえcreate_diff_noteの場合、古いバージョンの行番号。old_lineまたはnew_line、あるいはその両方を指定します。
new_line整数いいえcreate_diff_noteの場合、新しいバージョンの行番号。
comments配列いいえsubmit_reviewの場合、1〜20個の差分コメント。各エントリはfileとbody(必須)、およびold_line、new_line、suggestion(オプション)を取ります。そのメソッドに必要です。fileは変更後のパスです。ファイル名を変更した場合は、代わりにcreate_diff_noteを使用してください。
verdict文字列いいえsubmit_reviewの場合、要約ノートの前にプレフィックスとして付けられる全体的な評決。
summary文字列いいえsubmit_reviewの場合、差分コメントの後に投稿される要約ノート。
summary_internalブール値いいえsubmit_reviewの場合、要約ノートを内部としてマークします。

例:

Review merge request 42 in project gitlab-org/gitlab and leave your findings as diff comments with a summary

add_branch

GitLabプロジェクトにソース参照からブランチを追加します。

パラメータタイプ必須説明
url文字列いいえGitLabのプロジェクトのURL。これ、またはproject_idを指定します。
project_id文字列いいえプロジェクトのIDまたはパス。urlが提供されない場合に必要です。
branch文字列はい新しいブランチの名前。
ref文字列はい新しいブランチを作成する元のブランチ名またはコミットSHA。

例:

Create a branch named feature/x from main in project gitlab-org/gitlab

get_repository_file

特定のrefにあるリポジトリから単一ファイルのコンテンツを取得する。

コンテンツはリポジトリから取得され、ローカルファイルシステムからは取得されません。ファイルはrefでコミットされた状態で返されるため、ローカルのチェックアウトにおける未コミットの変更は含まれません。

パラメータタイプ必須説明
url文字列いいえファイルのURL。https://gitlab.example.com/my-group/my-project/-/blob/main/app/models/user.rbなど。これ、またはproject_id、file_path、およびrefを指定します。
project_id文字列いいえプロジェクトのIDまたはフルパス。urlが提供されない場合に必要です。
file_path文字列いいえリポジトリのルートからの相対ファイルパス。urlが提供されない場合に必要です。
ref文字列いいえブランチ名、タグ名、またはコミットSHA。デフォルトブランチにはHEADを使用します。urlが提供されない場合に必要です。
offset整数いいえ読み取りを開始するゼロベースの行(オフセット)。デフォルトは0です。
limit整数いいえ返される行の最大数。デフォルトおよび最大値は2000です。

レスポンスには、total_lines、returned_lines、truncated、およびsize_bytesを含むmetadataオブジェクトが含まれています。レスポンスがファイルの一部のみをカバーする場合、system_instructionは次の呼び出しで使用するoffset(オフセット)を示します。

このツールはテキストのみを返します。バイナリファイルおよびGit LFSに保存されているファイルはエラーを返します。プロジェクトがGitLab Duoコンテキストから除外するファイルもエラーを返します。

例:

Show me app/models/user.rb from the main branch of my-group/my-project

get_commit

単一のコミットのメタデータ、およびオプションでその差分またはノートを取得する。

パラメータタイプ必須説明
url文字列いいえGitLabのコミットのURL。project_idとcommit_shaが提供されない場合に必要です。
project_id文字列いいえプロジェクトのIDまたはURLエンコードされたパス。urlが提供されない場合に必要です。
commit_sha文字列いいえコミットを検索します。フルまたはショートSHA、ブランチ名、またはタグ名を受け入れます。urlが提供されない場合に必要です。
include配列いいえ関連するファセットをフェッチしてインラインで表示します。呼び出しごとに1つ(diffまたはnotes)。ベースメタデータは常に返されます。
diff_detail文字列いいえコミット差分の詳細レベル。includeにdiffが含まれる場合にのみ適用されます。statsまたはfull_patchのいずれかになります。デフォルトはstatsです。
notes_after文字列いいえ次のノートページをフェッチするためのトークン。includeにnotesが含まれる場合にのみ適用されます。
notes_first整数いいえ1ページあたりに返すノートの数(最大100)。includeにnotesが含まれる場合にのみ適用されます。

diff_detailをstatsに設定すると、差分ファセットはファイルごとおよび要約の行数を返します。full_patchを使用すると、パッチテキストを返します。

例:

Show me commit abc123 in gitlab-org/gitlab with its diff stats

get_pipeline

パイプライン、およびオプションでそのジョブ、ダウンストリームパイプライン、またはブリッジ(トリガー)ジョブを取得する。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはフルパス。
pipeline_id整数はいパイプラインのID。
include配列いいえパイプラインに含めるファセット(呼び出しごとに1つ):jobs、downstream_pipelines、またはbridge_jobs。
job_status文字列いいえjobsファセットをステータスでフィルタリングします(例: failed)。includeがjobsの場合にのみ適用されます。
first整数いいえ選択されたincludeファセットに対して返すアイテムの数。デフォルトは20、最大は100です。
after文字列いいえ選択されたincludeファセットの順方向ページネーションのカーソル。以前のレスポンスのpage_info.end_cursorを使用します。

ブリッジジョブのdownstream_pipelineは、トリガージョブがまだダウンストリームパイプラインをトリガーしていない場合と、そのパイプラインにアクセスできない場合の両方で省略されます(null)。

ダウンストリームパイプラインは別のプロジェクトに属する可能性があるため、各ダウンストリームパイプラインにはproject_full_pathが含まれます。その値を後続の呼び出しのidとして使用します。

例:

  • パイプラインを取得する:

    Get the status of pipeline 12345 in project gitlab-org/gitlab
  • パイプラインの失敗したジョブを取得する:

    Show me the failed jobs in pipeline 12345 for project gitlab-org/gitlab
  • パイプラインのダウンストリームパイプラインを取得する:

    Show me the downstream pipelines triggered by pipeline 12345 in project gitlab-org/gitlab

get_pipeline_jobs

特定のGitLab CI/CDパイプラインのジョブを取得します。ジョブをパイプラインの他のデータとともに単一の呼び出しで取得するには、代わりにinclude: jobsを指定してget_pipelineツールを使用します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
pipeline_id整数はいパイプラインのID。
per_page整数いいえページあたりのジョブ数。
page整数いいえ現在のページ番号。

例:

Show me all jobs in pipeline 12345 for project gitlab-org/gitlab

get_job

CI/CDジョブのメタデータ、およびオプションでそのトレース/ログを取得する。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはフルパス。
job_id整数はいジョブのID。
include配列いいえジョブに含めるファセット(呼び出しごとに1つ):log。
byte_offset整数いいえジョブのログの読み取りを開始するバイトオフセット。includeがlogの場合にのみ適用されます。デフォルトは0です。
byte_limit整数いいえジョブのログで返すバイトの最大数。includeがlogの場合にのみ適用されます。デフォルトおよび最大値は512000です。

ログがbyte_limitより長い場合、レスポンスは合計サイズを報告し、次のウィンドウで使用するbyte_offset(オフセット)を通知します。

例:

  • ジョブのメタデータを取得する:

    Get the status of job 88 in project gitlab-org/gitlab
  • ジョブのログを取得する:

    Show me the log output for job 88 in project gitlab-org/gitlab

list_pipelines

GitLabプロジェクト内のパイプラインを、オプションのフィルターでリスト表示します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
ref文字列いいえブランチまたはタグ名。パイプラインをrefでフィルタリングします。
status文字列いいえパイプラインをステータスでフィルタリングします(例: running、success、failed)。
source文字列いいえパイプラインをソースでフィルタリングします(例: push、web、schedule)。
created_after文字列いいえ指定された日付時刻(ISO 8601形式)以降に作成されたパイプラインを返します。
created_before文字列いいえ指定された日付時刻(ISO 8601形式)より前に作成されたパイプラインを返します。
order_by文字列いいえパイプラインをid、status、ref、updated_at、またはuser_idで並べ替えます。デフォルトはidです。
sort文字列いいえソート方向。ascまたはdesc。デフォルトはdescです。
page整数いいえ現在のページ番号。デフォルトは1です。
per_page整数いいえ1ページあたりのアイテム数。デフォルトは20です。

子パイプラインはデフォルトで結果から除外されます。子パイプラインのみを返すには、sourceをparent_pipelineに設定します。

デフォルトの順序(id、desc)では、IDが最も大きいパイプラインが最初に返されます。IDの順序は通常作成順序と一致しますが、両者が一致することは保証されません。明示的な時間境界でフィルタリングするには、created_afterまたはcreated_beforeを使用します。呼び出し元は結果をページングし、対象範囲外の最初のパイプラインで停止できます。

例:

List all failed pipelines on the main branch for project gitlab-org/gitlab

save_pipeline

GitLabプロジェクトでCI/CDパイプラインを実行、再試行、またはキャンセルします。パイプラインのメタデータを更新するか、パイプラインを削除するには、代わりにmanage_pipelineツールを使用します。パイプラインをリスト表示するには、代わりにlist_pipelinesツールを使用します。

パラメータタイプ必須説明
url文字列いいえGitLabのプロジェクトのURL。パイプラインの作成にのみ使用されます。これ、またはproject_idを指定します。
project_id文字列いいえプロジェクトのIDまたはフルパス。パイプラインの作成にのみ使用されます。これ、またはurlを指定します。
pipeline_id整数いいえターゲットとする既存のパイプラインのID。設定されている場合、actionが必要です。新しいパイプラインを作成するには省略します。
action文字列いいえpipeline_idに対して実行するライフサイクルアクション: retryまたはcancel。pipeline_idが設定されている場合に必要です。
ref文字列いいえブランチまたはタグ名。パイプラインを作成する際に必要です(pipeline_idが存在しない場合)。
variables配列いいえ配列形式のパイプライン変数([{key, value, variable_type}])。
inputsハッシュいいえキー/バリューペアで指定するパイプラインインプットパラメータ。

例:

  • パイプラインを作成:

    Create a pipeline on the main branch for project gitlab-org/gitlab
  • パイプラインを再試行:

    Retry failed jobs in pipeline 12345 for project gitlab-org/gitlab
  • パイプラインをキャンセル:

    Cancel pipeline 12345 in project gitlab-org/gitlab

manage_pipeline

GitLabプロジェクト内のパイプラインのメタデータを更新するか、パイプラインを削除します。パイプラインを作成、再試行、またはキャンセルするには、代わりにsave_pipelineツールを使用します。パイプラインをリスト表示するには、代わりにlist_pipelinesツールを使用します。

パラメータタイプ必須説明
id文字列はいプロジェクトのIDまたはURLエンコードされたパス。
pipeline_id整数はいパイプラインのID。このパラメータのみが設定されている場合、パイプラインおよびすべての関連データを削除します。
name文字列いいえパイプラインの名前。このパラメータとpipeline_idが設定されている場合、パイプラインのメタデータを更新します。

例:

  • パイプラインを更新:

    Rename pipeline 12345 to "My deploy pipeline" in project gitlab-org/gitlab
  • パイプラインを削除:

    Delete pipeline 12345 in project gitlab-org/gitlab

create_workitem_note

GitLab作業アイテムに新しいノート(コメント)を作成します。

パラメータタイプ必須説明
body文字列はいノートの内容。
url文字列いいえ作業アイテムのURL。group_idまたはproject_idとwork_item_iidが指定されていない場合は必須。
group_id文字列いいえグループのIDまたはパス。urlおよびproject_idが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlおよびgroup_idが指定されていない場合は必須。
work_item_iid整数いいえ作業アイテムの内部ID。urlが指定されていない場合は必須。
internalブール値いいえノートを内部ノートとしてマークします(プロジェクトのレポーター、デベロッパー、メンテナー、またはオーナーロールを持つユーザーのみに表示)。デフォルトはfalseです。
discussion_id文字列いいえ返信先となるディスカッションのグローバルID(形式はgid://gitlab/Discussion/<id>)。

例:

Add a comment "This looks good to me" to work item 42 in project gitlab-org/gitlab

get_workitem_notes

特定のGitLab作業アイテムのすべてのノート(コメント)を取得します。

パラメータタイプ必須説明
url文字列いいえ作業アイテムのURL。group_idまたはproject_idとwork_item_iidが指定されていない場合は必須。
group_id文字列いいえグループのIDまたはパス。urlおよびproject_idが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlおよびgroup_idが指定されていない場合は必須。
work_item_iid整数いいえ作業アイテムの内部ID。urlが指定されていない場合は必須。
after文字列いいえ順方向ページネーションのカーソル。
before文字列いいえ逆方向ページネーションのカーソル。
first整数いいえ順方向ページネーションで返すノート数。
last整数いいえ逆方向ページネーションで返すノート数。

例:

Show me all comments on work item 42 in project gitlab-org/gitlab

関係タイプを指定して、作業アイテムを1つ以上の他の作業アイテムにリンクします。

パラメータタイプ必須説明
work_items_ids文字列の配列はいリンク先の作業アイテムのグローバルID(形式はgid://gitlab/WorkItem/<id>)。最大10アイテム。
url文字列いいえソース作業アイテムのURL。group_idまたはproject_idとwork_item_iidが指定されていない場合は必須。
group_id文字列いいえグループのIDまたはパス。urlおよびproject_idが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlおよびgroup_idが指定されていない場合は必須。
work_item_iid整数いいえソース作業アイテムの内部ID。urlが指定されていない場合は必須。
link_type文字列いいえ関係のタイプ。relates_to、blocks、blocked_byのいずれかです。デフォルトはrelates_toです。blocksおよびblocked_byタイプには、PremiumまたはUltimateが必要です。

例:

Mark work item 42 in project gitlab-org/gitlab as blocked by work item 40

get_saved_view_work_items

ネームスペースから、保存済みのビューとその作業アイテムのリストを取得します。このツールは、保存済みのビューのフィルターと並び順を、返される作業アイテムに適用します。

パラメータタイプ必須説明
saved_view_id文字列はい保存済みのビューのグローバルID(形式はgid://gitlab/WorkItems::SavedViews::SavedView/<id>)。
url文字列いいえネームスペース(プロジェクトまたはグループ)のURL。group_idまたはproject_idが指定されていない場合は必須です。
group_id文字列いいえグループのIDまたはパス。urlおよびproject_idが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlおよびgroup_idが指定されていない場合は必須。
after文字列いいえ順方向ページネーションのカーソル。
first整数いいえ返される作業アイテムの数。最大値は100。

例:

Show me the work items in this saved view: <URL>

save_work_item

GitLab作業アイテム(イシュー、タスク、エピックなど)を作成または更新します。新しい作業アイテムを作成するにはwork_item_iidを省略します。既存の作業アイテムを更新するには、work_item_iidまたは作業アイテムのURLを指定します。ツール名create_work_itemとupdate_work_itemは、このツールのエイリアスです。

パラメータタイプ必須説明
url文字列いいえプロジェクト、グループ、または作業アイテムのGitLab URL。url、project_id、またはgroup_idのいずれか一方のみを指定してください。
group_id文字列いいえグループのIDまたはパス。urlおよびproject_idが指定されていない場合は必須。
project_id文字列いいえプロジェクトのIDまたはパス。urlおよびgroup_idが指定されていない場合は必須。
work_item_iid整数いいえ更新する作業アイテムの内部ID。新しい作業アイテムを作成するには省略します。
title文字列いいえ作業アイテムのタイトル。作業アイテムを作成する際に必要です。
type_name文字列いいえ作業アイテムのタイプ名。Issue、Task、またはEpicなど。作業アイテムを作成する際に必要です。有効なタイプは、ネームスペースとライセンスによって異なります。
description文字列いいえGitLab Flavored Markdownでの説明。最大1,048,576文字。
assignee_ids整数の配列いいえ作業アイテムに割り当てるユーザーID。最大100アイテム。
label_ids文字列の配列いいえラベルIDまたはグローバルID。作成のみ。更新時にはadd_label_idsまたはremove_label_idsを使用します。最大100アイテム。
add_label_ids文字列の配列いいえ更新のみ。追加するラベルIDまたはグローバルID。最大100アイテム。
remove_label_ids文字列の配列いいえ更新のみ。削除するラベルIDまたはグローバルID。最大100アイテム。
confidentialブール値いいえ作業アイテムの機密性を設定します。
start_date文字列いいえ開始日(YYYY-MM-DD形式)。
due_date文字列いいえ期日(YYYY-MM-DD形式)。
state文字列いいえ更新のみ。closedは作業アイテムを閉じ、openedは再オープンします。
parent_id文字列いいえ親作業アイテムのグローバルIDまたは数値ID。
todo_action文字列いいえ更新のみ。addは現在のユーザーのTo-Doを追加し、mark_as_doneはTo-Doを完了としてマークします。
todo_id文字列いいえ更新のみ。To-DoのグローバルIDまたは数値ID。作業アイテム上のすべてのTo-Doを更新するには省略します。
health_status文字列いいえヘルスステータス。onTrack、needsAttention、atRiskのいずれかです。Ultimateのみです。
weight整数いいえ作業アイテムのウェイト。0以上である必要があります。PremiumおよびUltimateのみです。
clear_weightブール値いいえ更新のみ。ウェイトを削除します。weightよりも優先されます。PremiumおよびUltimateのみです。
status_id文字列いいえ設定するステータスのグローバルID。PremiumおよびUltimateのみです。
is_fixedブール値いいえ開始日と期日が固定されているかどうか。falseの場合、日付は子アイテムから繰り上がり、start_dateとdue_dateは無視されます。PremiumおよびUltimateのみです。
agent_plan文字列いいえエージェントプランのMarkdownコンテンツ。Ultimateのみです。ワークプラン機能が必要です。

例:

Create a task "Update the onboarding guide" in project gitlab-org/gitlab and assign it to me

検索APIを使用して、GitLabインスタンス全体で用語を検索します。このツールは、グローバル、グループ、プロジェクトの検索に使用できます。利用可能なスコープは、検索タイプによって異なります。

パラメータタイプ必須説明
scope文字列はい検索スコープ(work_items、merge_requests、projectsなど)。
search文字列はい検索語句。
group_id文字列いいえ検索するグループのIDまたはURLエンコードされたパス。
project_id文字列いいえ検索するプロジェクトのIDまたはURLエンコードされたパス。
state文字列いいえ検索結果のステータス(work_items、merge_requestsの場合)。
confidentialブール値いいえ(work_itemsの場合)機密性で結果をフィルタリングします。デフォルトはfalseです。
fields文字列の配列いいえ検索するフィールドの配列(work_items、merge_requestsの場合)。
order_by文字列いいえ結果の並び替えに使用する属性。デフォルトは、基本的な検索の場合はcreated_at、高度な検索の場合はrelevance(関連度)です。
sort文字列いいえ結果の並び替え方向。デフォルトはdescです。
per_page整数いいえページあたりの結果数。デフォルトは20です。
page整数いいえ現在のページ番号。デフォルトは1です。

例:

Search issues for "flaky test" across GitLab

search_labels

GitLabプロジェクトまたはグループ内のラベルを検索します。

パラメータタイプ必須説明
full_path文字列はいプロジェクトまたはグループのフルパス(例: group/project)。
is_projectブール値はいプロジェクト(true)またはグループ(false)で検索するかどうか。
search文字列いいえラベルをタイトルでフィルタリングするための検索語句。

グループラベルを検索すると、祖先グループおよび子孫グループにあるラベルが結果に含まれます。

例:

Show me all labels in project gitlab-org/gitlab

list_wiki_pages

GitLabプロジェクトまたはグループ内のWikiページをリスト表示します。

パラメータタイプ必須説明
project_id文字列いいえプロジェクトのフルパスまたは数値ID(例: gitlab-org/gitlabまたは278964)。
group_id文字列いいえグループのフルパスまたは数値ID(例: gitlab-orgまたは9970)。
first整数いいえ順方向ページネーションで返すWikiページの数(最大100)。
after文字列いいえ順方向ページネーションのカーソル。

project_idまたはgroup_idのいずれか一方のみを指定してください。呼び出しごとに結果の単一ページが返されます。さらにページが存在する場合、レスポンスにはend_cursorが含まれており、これをafterとして渡して次のページをフェッチできます。

例:

List the wiki pages in gitlab-org/gitlab
  • アドオン: GitLab Duo Core、Pro、またはEnterprise
  • 提供形態: GitLab.com、GitLab Self-Managed

この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。

GitLabプロジェクト内の関連するコードスニペットを検索します。セットアップおよびイネーブルメントを含む詳細については、セマンティックコード検索を参照してください。

パラメータタイプ必須説明
semantic_query文字列はいコードの検索クエリ。
project_id文字列はいプロジェクトのIDまたはパス。
directory_path文字列いいえディレクトリのパス(app/services/など)。
knn整数いいえ類似のコードスニペットを検出するために使用される最近傍の数。デフォルトは64です。
limit整数いいえ返す結果の最大数。デフォルトは20です。

最良の結果を得るには、一般的なキーワードや特定の関数名または変数名を使用するのではなく、関心のある機能または動作について記述してください。

例:

How are authorizations managed in this project?

attach_scan_profile

指定したセキュリティスキャンプロファイルを、指定したプロジェクト、または指定したグループ配下のすべてのプロジェクトに関連付けます。

パラメータタイプ必須説明
security_scan_profile_id文字列はいセキュリティスキャンプロファイルのグローバルID(例: gid://gitlab/Security::ScanProfile/1)。
project_ids文字列の配列いいえプロジェクトのグローバルIDの配列(例: [gid://gitlab/Project/1])。group_idsが指定されていない限り、これは必須です。
group_ids文字列の配列いいえグループのグローバルIDの配列(例: [gid://gitlab/Group/1])。project_idsが指定されていない限り、これは必須です。

例:

Attach `gid://gitlab/Security::ScanProfile/1` to all projects under `gid://gitlab/Group/1`.