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 123create_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 squashget_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 commitslist_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/gitlablist_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/gitlabget_merge_request_commits
特定のGitLabマージリクエスト内のコミットのリストを取得します。
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
id | 文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
merge_request_iid | 整数 | はい | マージリクエストの内部ID。 |
per_page | 整数 | いいえ | ページあたりのコミット数。 |
page | 整数 | いいえ | 現在のページ番号。 |
例:
Show me all commits in merge request 42 from project 123get_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/gitlabcreate_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/gitlabget_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/gitlabsave_merge_request_review
認証済みユーザーとしてマージリクエストのレビューアーティファクトを書き込みます。各呼び出しは、methodパラメータで選択された1つの操作のみを実行します:
| 方法 | Action |
|---|---|
create_note | トップレベルのコメントを追加します。 |
reply_discussion | 既存のディスカッションに返信します。 |
create_diff_note | 特定の差分行にコメントします。 |
resolve_discussion | ディスカッションを解決するか未解決にするか。 |
submit_review | 複数の差分コメントとオプションの要約を1回の呼び出しで投稿します。 |
post_duo_review | GitLab 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 summaryadd_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/gitlabget_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-projectget_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 statsget_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/gitlabget_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/gitlabsave_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/gitlabget_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/gitlablink_work_items
関係タイプを指定して、作業アイテムを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 40get_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 mesearch
検索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 GitLabsearch_labels
GitLabプロジェクトまたはグループ内のラベルを検索します。
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
full_path | 文字列 | はい | プロジェクトまたはグループのフルパス(例: group/project)。 |
is_project | ブール値 | はい | プロジェクト(true)またはグループ(false)で検索するかどうか。 |
search | 文字列 | いいえ | ラベルをタイトルでフィルタリングするための検索語句。 |
グループラベルを検索すると、祖先グループおよび子孫グループにあるラベルが結果に含まれます。
例:
Show me all labels in project gitlab-org/gitlablist_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/gitlabsemantic_code_search
- アドオン: 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`.