Skip to content

Runners

Runners: list the ones the user owns, every runner of the instance (an administrator’s), a group’s or a project’s; read, update (pausing included) and remove one; list its jobs and its managers; enable or disable it for a project; register one with a registration token, verify a runner authentication token, and delete a runner by its token; and reset the registration tokens of the instance, a group or a project, or a runner’s own authentication token.

Runner controllers, the experimental control plane administrators use to manage runners, are the actions served from Ultimate: controllers, their scopes and their tokens.

  • “List the runners available to project 42”
  • “Show the details of runner 5”
  • “Which jobs has runner 5 run today?”
  • “Pause the runner tagged gpu”
  • Dynamic, the default surface: call gitlab_execute_action with action set to the action’s ID, such as runner.controller_create, and its parameters in params. gitlab_find_action finds an ID from a description of the task.
  • Meta (GITLAB_MCP_TOOL_SURFACE=meta): call gitlab_runner with action set to the action’s name, such as controller_create, and its parameters in params.
  • Individual (GITLAB_MCP_TOOL_SURFACE=individual): call the action’s own tool, such as gitlab_runner_controller_create, with its parameters as the arguments.

How many of these actions an instance serves at each tier, out of a total of 34:

  • Free: 19
  • Premium: 19
  • Ultimate: 34

Read-only actions: 13 of 34, the ones a deployment in read-only mode keeps.

The description of each action, and of each of its parameters, is the text the server serves for it on the default surface, quoted as served. A destructive action runs only once confirmed, unless GITLAB_MCP_YOLO_MODE (or AUTOPILOT) skips that step: the dynamic surface needs confirm: true on gitlab_execute_action, and the other two take a confirm parameter or the client’s prompt (Destructive actions).

ActionTierIndividual
runner.controller_createUltimategitlab_runner_controller_create
runner.controller_deleteUltimategitlab_runner_controller_delete
runner.controller_getUltimategitlab_runner_controller_get
runner.controller_listUltimategitlab_runner_controller_list
runner.controller_scope_add_instanceUltimategitlab_runner_controller_scope_add_instance
runner.controller_scope_add_runnerUltimategitlab_runner_controller_scope_add_runner
runner.controller_scope_listUltimategitlab_runner_controller_scope_list
runner.controller_scope_remove_instanceUltimategitlab_runner_controller_scope_remove_instance
runner.controller_scope_remove_runnerUltimategitlab_runner_controller_scope_remove_runner
runner.controller_token_createUltimategitlab_runner_controller_token_create
runner.controller_token_getUltimategitlab_runner_controller_token_get
runner.controller_token_listUltimategitlab_runner_controller_token_list
runner.controller_token_revokeUltimategitlab_runner_controller_token_revoke
runner.controller_token_rotateUltimategitlab_runner_controller_token_rotate
runner.controller_updateUltimategitlab_runner_controller_update
runner.delete_by_tokenFreegitlab_runner_delete_by_token
runner.delete_registeredFreegitlab_runner_delete_registered
runner.disable_projectFreegitlab_runner_disable_project
runner.enable_projectFreegitlab_runner_enable_project
runner.getFreegitlab_runner_get
runner.jobsFreegitlab_runner_jobs
runner.listFreegitlab_runner_list
runner.list_allFreegitlab_runner_list_all
runner.list_groupFreegitlab_runner_list_group
runner.list_managersFreegitlab_runner_list_managers
runner.list_projectFreegitlab_runner_list_project
runner.registerFreegitlab_runner_register
runner.removeFreegitlab_runner_remove
runner.reset_group_reg_tokenFreegitlab_runner_reset_group_reg_token
runner.reset_instance_reg_tokenFreegitlab_runner_reset_instance_reg_token
runner.reset_project_reg_tokenFreegitlab_runner_reset_project_reg_token
runner.reset_tokenFreegitlab_runner_reset_token
runner.updateFreegitlab_runner_update
runner.verifyFreegitlab_runner_verify

Register a new runner controller (admin-only, experimental API) with optional description and state (enabled/disabled/dry_run). Returns: the created controller with id, description, state, and timestamps. See also: runner.controller_get, runner.controller_update, runner.controller_list.

  • Meta-tool: gitlab_runner, action controller_create
  • Individual tool: gitlab_runner_controller_create
  • Tier: Ultimate
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
descriptionstringnoDescription of the runner controller
statestring (disabled, enabled, dry_run)noState: enabled, disabled, or dry_run

Delete a runner controller by controller_id (destructive, admin-only, experimental API). Returns: a success confirmation. See also: runner.controller_list, runner.controller_get, runner.controller_update.

  • Meta-tool: gitlab_runner, action controller_delete
  • Individual tool: gitlab_runner_controller_delete
  • Tier: Ultimate
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID

Get one runner controller by controller_id (admin-only, experimental API). Returns: the controller with id, description, state, connected flag, and created/updated timestamps. See also: runner.controller_list, runner.controller_update, runner.controller_delete.

  • Meta-tool: gitlab_runner, action controller_get
  • Individual tool: gitlab_runner_controller_get
  • Tier: Ultimate
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID

List registered runner controllers (admin-only, experimental API) with offset or keyset pagination. Returns: controllers with id, description, state, created/updated timestamps, plus pagination metadata. See also: runner.controller_get, runner.controller_create, runner.controller_update.

  • Meta-tool: gitlab_runner, action controller_list
  • Individual tool: gitlab_runner_controller_list
  • Tier: Ultimate
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
order_bystringnoColumn to order the result set by (e.g. id, created_at)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort order: asc or desc

Grant a runner controller the instance-level scope (admin only). Returns: the created instance-level scoping with created/updated timestamps. See also: runner.controller_scope_remove_instance, runner.controller_scope_list, runner.controller_scope_add_runner.

  • Meta-tool: gitlab_runner, action controller_scope_add_instance
  • Individual tool: gitlab_runner_controller_scope_add_instance
  • Tier: Ultimate
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID

Scope a runner controller to a specific instance runner by runner ID (admin only). Returns: the created runner-level scoping with the runner ID and created/updated timestamps. See also: runner.controller_scope_remove_runner, runner.controller_scope_list, runner.controller_scope_add_instance.

  • Meta-tool: gitlab_runner, action controller_scope_add_runner
  • Individual tool: gitlab_runner_controller_scope_add_runner
  • Tier: Ultimate
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
runner_idintegeryesInstance-level runner ID to scope

List every scope assigned to a runner controller (admin only). Returns: instance-level scopings with timestamps and runner-level scopings with runner IDs and timestamps. See also: runner.controller_scope_add_instance, runner.controller_scope_add_runner, runner.controller_scope_remove_runner.

  • Meta-tool: gitlab_runner, action controller_scope_list
  • Individual tool: gitlab_runner_controller_scope_list
  • Tier: Ultimate
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID

Revoke a runner controller’s instance-level scope (admin only, destructive). Returns: a success confirmation naming the removed instance-level scope. See also: runner.controller_scope_add_instance, runner.controller_scope_list, runner.controller_scope_remove_runner.

  • Meta-tool: gitlab_runner, action controller_scope_remove_instance
  • Individual tool: gitlab_runner_controller_scope_remove_instance
  • Tier: Ultimate
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID

Remove a specific runner from a runner controller’s scope by runner ID (admin only, destructive). Returns: a success confirmation naming the removed runner scope. See also: runner.controller_scope_add_runner, runner.controller_scope_list, runner.controller_scope_remove_instance.

  • Meta-tool: gitlab_runner, action controller_scope_remove_runner
  • Individual tool: gitlab_runner_controller_scope_remove_runner
  • Tier: Ultimate
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
runner_idintegeryesRunner ID to remove from scope

Create a runner controller token (admin-only). Returns: the new token including its one-time secret value, id, runner controller id, and description. See also: runner.controller_token_list, runner.controller_token_rotate, runner.controller_token_revoke.

  • Meta-tool: gitlab_runner, action controller_token_create
  • Individual tool: gitlab_runner_controller_token_create
  • Tier: Ultimate
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
descriptionstringnoDescription of the token

Get one runner controller token by id (admin-only). Returns: the token’s id, runner controller id, description, last-used time, and timestamps. See also: runner.controller_token_list, runner.controller_token_rotate, runner.controller_token_revoke.

  • Meta-tool: gitlab_runner, action controller_token_get
  • Individual tool: gitlab_runner_controller_token_get
  • Tier: Ultimate
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
token_idintegeryesToken ID

List runner controller tokens for a controller (admin-only). Returns: each token’s id, runner controller id, description, last-used time, and timestamps, with pagination metadata. See also: runner.controller_token_get, runner.controller_token_create, runner.controller_token_revoke.

  • Meta-tool: gitlab_runner, action controller_token_list
  • Individual tool: gitlab_runner_controller_token_list
  • Tier: Ultimate
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
order_bystringnoColumn to order the result set by (e.g. id, created_at)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort order: asc or desc

Revoke a runner controller token permanently (admin-only). Returns: a success confirmation that the runner controller token was deleted. See also: runner.controller_token_list, runner.controller_token_get, runner.controller_token_rotate.

  • Meta-tool: gitlab_runner, action controller_token_revoke
  • Individual tool: gitlab_runner_controller_token_revoke
  • Tier: Ultimate
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
token_idintegeryesToken ID

Rotate a runner controller token (admin-only). Returns: the token with its newly issued one-time secret value and unchanged id. See also: runner.controller_token_get, runner.controller_token_list, runner.controller_token_revoke.

  • Meta-tool: gitlab_runner, action controller_token_rotate
  • Individual tool: gitlab_runner_controller_token_rotate
  • Tier: Ultimate
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
token_idintegeryesToken ID

Update a runner controller’s description or state (enabled/disabled/dry_run) by controller_id (admin-only, experimental API). Returns: the updated controller with id, description, state, and timestamps. See also: runner.controller_get, runner.controller_list, runner.controller_delete.

  • Meta-tool: gitlab_runner, action controller_update
  • Individual tool: gitlab_runner_controller_update
  • Tier: Ultimate
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
controller_idintegeryesRunner controller ID
descriptionstringnoNew description
statestring (disabled, enabled, dry_run)noNew state: enabled, disabled, or dry_run

Delete a registered runner by its authentication token. Returns: a success confirmation. See also: runner.delete_registered, runner.remove.

  • Meta-tool: gitlab_runner, action delete_by_token
  • Individual tool: gitlab_runner_delete_by_token
  • Tier: Free
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
tokenstringyesRunner authentication token

Delete a registered runner by its numeric runner_id. Returns: a success confirmation. See also: runner.delete_by_token, runner.remove.

  • Meta-tool: gitlab_runner, action delete_registered
  • Individual tool: gitlab_runner_delete_registered
  • Tier: Free
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID to delete

Remove a runner assignment from a project by project_id and runner_id. Returns: a success confirmation. See also: runner.enable_project, runner.list_project.

  • Meta-tool: gitlab_runner, action disable_project
  • Individual tool: gitlab_runner_disable_project
  • Tier: Free
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
project_idstring/integeryesProject ID or URL-encoded path
runner_idintegeryesRunner ID to remove from project

Assign an existing runner to a project by project_id and runner_id. Returns: the enabled runner. See also: runner.disable_project, runner.list_project.

  • Meta-tool: gitlab_runner, action enable_project
  • Individual tool: gitlab_runner_enable_project
  • Tier: Free
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
project_idstring/integeryesProject ID or URL-encoded path
runner_idintegeryesRunner ID to assign

Get full configuration for one runner by numeric runner_id. Returns: runner details including tags, locked, access level, maximum timeout, contact time, and associated groups/projects. See also: runner.list, runner.update, runner.jobs.

  • Meta-tool: gitlab_runner, action get
  • Individual tool: gitlab_runner_get
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID

List jobs processed by a runner, with status/order/sort filters and pagination. Returns: jobs with id, name, status, stage, ref, and duration, plus pagination metadata. See also: runner.get, job.get.

  • Meta-tool: gitlab_runner, action jobs
  • Individual tool: gitlab_runner_jobs
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID
order_bystringnoOrder by field: id (default)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction: asc, desc
statusstring (created, waiting_for_resource, preparing, waiting_for_callback, pending, running, success, failed, canceling, canceled, skipped, manual, scheduled)noJob status filter: created, waiting_for_resource, preparing, waiting_for_callback, pending, running, success, failed, canceling, canceled, skipped, manual, or scheduled

List runners owned by the authenticated user, with type/status/tag/scope filters and pagination. Returns: runners with id, name, type, status, paused/shared/online flags, plus pagination metadata. See also: runner.get, runner.list_all, runner.list_project.

  • Meta-tool: gitlab_runner, action list
  • Individual tool: gitlab_runner_list
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
order_bystringnoField to order keyset-paginated results by, e.g. id
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
pausedbooleannoFilter by paused state
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
scopestring (active, paused, online, offline)noDeprecated runner scope filter: active, paused, online, or offline. Prefer type and status instead
sortstring (asc, desc)noSort direction: asc or desc
statusstring (online, offline, stale, never_contacted)noRunner status filter: online, offline, stale, or never_contacted.
tag_liststring[]noList of tags to filter by
typestring (instance_type, group_type, project_type)noRunner type filter: instance_type (instance-level shared runners), group_type (group runners), or project_type (project-specific runners).

List every runner on the instance (admin token required), with type/status/tag/scope filters and pagination. Returns: runners with id, name, type, status, flags, plus pagination metadata. See also: runner.list, runner.get.

  • Meta-tool: gitlab_runner, action list_all
  • Individual tool: gitlab_runner_list_all
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
order_bystringnoField to order keyset-paginated results by, e.g. id
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
pausedbooleannoFilter by paused state
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
scopestring (specific, shared, active, paused, online, offline)noDeprecated runner scope filter: specific, shared, active, paused, online, or offline. Prefer type and status instead
sortstring (asc, desc)noSort direction: asc or desc
statusstring (online, offline, stale, never_contacted)noRunner status filter: online, offline, stale, or never_contacted.
tag_liststring[]noList of tags to filter by
typestring (instance_type, group_type, project_type)noRunner type filter: instance_type (instance-level shared runners), group_type (group runners), or project_type (project-specific runners).

List runners available in a group (specific and shared), with type/status/tag filters and pagination. Returns: runners with id, name, type, status, flags, plus pagination metadata. See also: runner.list, runner.list_project.

  • Meta-tool: gitlab_runner, action list_group
  • Individual tool: gitlab_runner_list_group
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
group_idstring/integeryesGroup ID or URL-encoded path
order_bystringnoField to order keyset-paginated results by, e.g. id
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction: asc or desc
statusstring (online, offline, stale, never_contacted)noRunner status filter: online, offline, stale, or never_contacted.
tag_liststring[]noList of tags to filter by
typestring (instance_type, group_type, project_type)noRunner type filter: instance_type (instance-level shared runners), group_type (group runners), or project_type (project-specific runners).

List the managers of a runner by runner_id. Returns: runner managers with system id, version, revision, platform, architecture, status, and IP. See also: runner.get, runner.list.

  • Meta-tool: gitlab_runner, action list_managers
  • Individual tool: gitlab_runner_list_managers
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID

List runners assigned to a project, with type/status/tag/scope filters and pagination. Returns: runners with id, name, type, status, flags, plus pagination metadata. See also: runner.enable_project, runner.disable_project, runner.list.

  • Meta-tool: gitlab_runner, action list_project
  • Individual tool: gitlab_runner_list_project
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
project_idstring/integeryesProject ID or URL-encoded path
order_bystringnoField to order keyset-paginated results by, e.g. id
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
pausedbooleannoFilter by paused state
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
scopestring (active, paused, online, offline)noDeprecated runner scope filter: active, paused, online, or offline. Prefer type and status instead
sortstring (asc, desc)noSort direction: asc or desc
statusstring (online, offline, stale, never_contacted)noRunner status filter: online, offline, stale, or never_contacted.
tag_liststring[]noList of tags to filter by
typestring (instance_type, group_type, project_type)noRunner type filter: instance_type (instance-level shared runners), group_type (group runners), or project_type (project-specific runners).

Register a new runner with a registration token, optional info hashmap, tags, and configuration. Returns: the created runner including its authentication token. See also: runner.verify, runner.list.

  • Meta-tool: gitlab_runner, action register
  • Individual tool: gitlab_runner_register
  • Tier: Free
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
tokenstringyesRegistration token
access_levelstringnoAccess level: not_protected, ref_protected
activebooleannoDeprecated: registration active state. Prefer paused instead
descriptionstringnoRunner description
infoobjectnoRunner manager info hashmap (name, version, revision, platform, architecture)
lockedbooleannoLock runner to current project
maintenance_notestringnoMaintenance note
maximum_timeoutintegernoMaximum job timeout in seconds
pausedbooleannoRegister in paused state
run_untaggedbooleannoWhether to run untagged jobs
tag_liststring[]noList of runner tags

Remove (unregister) a runner by numeric runner_id. Returns: a success confirmation. See also: runner.disable_project, runner.delete_registered, runner.get.

  • Meta-tool: gitlab_runner, action remove
  • Individual tool: gitlab_runner_remove
  • Tier: Free
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID to remove

Reset a group’s runner registration token by group_id (deprecated). Returns: the new registration token and its expiry. See also: runner.reset_instance_reg_token, runner.reset_project_reg_token.

  • Meta-tool: gitlab_runner, action reset_group_reg_token
  • Individual tool: gitlab_runner_reset_group_reg_token
  • Tier: Free
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
group_idstring/integeryesGroup ID or URL-encoded path

Reset the instance-level runner registration token (deprecated, admin only). Returns: the new registration token and its expiry. See also: runner.reset_group_reg_token, runner.reset_project_reg_token.

  • Meta-tool: gitlab_runner, action reset_instance_reg_token
  • Individual tool: gitlab_runner_reset_instance_reg_token
  • Tier: Free
  • Behavior: writes, idempotent

No parameters.

Reset a project’s runner registration token by project_id (deprecated). Returns: the new registration token and its expiry. See also: runner.reset_instance_reg_token, runner.reset_group_reg_token.

  • Meta-tool: gitlab_runner, action reset_project_reg_token
  • Individual tool: gitlab_runner_reset_project_reg_token
  • Tier: Free
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
project_idstring/integeryesProject ID or URL-encoded path

Reset a runner’s authentication token by runner_id. Returns: the new token and its expiry. See also: runner.verify, runner.get.

  • Meta-tool: gitlab_runner, action reset_token
  • Individual tool: gitlab_runner_reset_token
  • Tier: Free
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID

Update a runner’s configuration (description, pause state, tags, locked, access level, timeout) by runner_id. Returns: the updated runner details. See also: runner.get, runner.remove.

  • Meta-tool: gitlab_runner, action update
  • Individual tool: gitlab_runner_update
  • Tier: Free
  • Behavior: writes, idempotent
ParameterTypeMandatoryDescription
runner_idintegeryesRunner ID
access_levelstringnoAccess level: not_protected, ref_protected
activebooleannoDeprecated: runner active state. Prefer paused instead
descriptionstringnoRunner description
lockedbooleannoWhether runner is locked to current project
maintenance_notestringnoMaintenance note for the runner
maximum_timeoutintegernoMaximum job timeout in seconds
pausedbooleannoPause/unpause the runner
run_untaggedbooleannoWhether to run untagged jobs
tag_liststring[]noList of runner tags

Verify that a runner authentication token is valid. Returns: a success confirmation when the token authenticates. See also: runner.register, runner.reset_token.

  • Meta-tool: gitlab_runner, action verify
  • Individual tool: gitlab_runner_verify
  • Tier: Free
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
tokenstringyesRunner authentication token to verify