Skip to content

Project aliases

A project alias is a short name an administrator gives a project, which git clones the project by. These actions list the aliases, read one, create one and delete one, and are administrator actions.

  • “List the project aliases”
  • “Create the alias gitlab for project 42”
  • “Delete the alias legacy-api”
  • Dynamic, the default surface: call gitlab_execute_action with action set to the action’s ID, such as project_alias.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_project_alias with action set to the action’s name, such as create, and its parameters in params.
  • Individual (GITLAB_MCP_TOOL_SURFACE=individual): call the action’s own tool, such as gitlab_create_project_alias, with its parameters as the arguments.

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

  • Free: 0
  • Premium: 4
  • Ultimate: 4

Listed only for a token that carries admin_mode: the server removes the group from every surface for a token whose scopes it knows and that lacks it.

Read-only actions: 2 of 4, the ones a deployment in read-only mode keeps. A token with read_api and not api is served 2 of the 4.

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. The token lines say what GitLab 19.4.1 requires of a token for the requests each action sends; on an instance with Admin Mode turned on, an action only an administrator may run also needs admin_mode. 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).

ActionIndividual
project_alias.creategitlab_create_project_alias
project_alias.deletegitlab_delete_project_alias
project_alias.getgitlab_get_project_alias
project_alias.listgitlab_list_project_aliases

Create a project alias mapping a unique name to a numeric project_id (admin-only). Returns: the created alias with id, project_id, and name. See also: project_alias.list, project_alias.get, project_alias.delete.

  • Meta-tool: gitlab_project_alias, action create
  • Individual tool: gitlab_create_project_alias
  • Tier: Premium
  • Classic or OAuth token: api; this server lists the group only to a token that also carries admin_mode
  • Fine-grained token: Alias: Create at instance (permissions page)
  • Behavior: writes, not idempotent
ParameterTypeMandatoryDescription
namestringyesThe alias name to create
project_idintegeryesThe numeric project ID to alias

Delete a project alias by its exact name (admin-only). Returns: deletion confirmation. See also: project_alias.list, project_alias.get, project_alias.create.

  • Meta-tool: gitlab_project_alias, action delete
  • Individual tool: gitlab_delete_project_alias
  • Tier: Premium
  • Classic or OAuth token: api; this server lists the group only to a token that also carries admin_mode
  • Fine-grained token: Alias: Delete at instance (permissions page)
  • Behavior: writes, destructive (needs confirmation), idempotent
ParameterTypeMandatoryDescription
namestringyesThe alias name to delete

Get one project alias by its exact name. Returns: the alias id, project_id, and name. See also: project_alias.list, project_alias.create, project_alias.delete.

  • Meta-tool: gitlab_project_alias, action get
  • Individual tool: gitlab_get_project_alias
  • Tier: Premium
  • Classic or OAuth token: read_api (or api); this server lists the group only to a token that also carries admin_mode
  • Fine-grained token: Alias: Read at instance (permissions page)
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
namestringyesThe alias name to look up

List the project aliases the authenticated administrator can see. Returns: each alias with id, project_id, and name, with pagination metadata. See also: project_alias.get, project_alias.create, project_alias.delete.

  • Meta-tool: gitlab_project_alias, action list
  • Individual tool: gitlab_list_project_aliases
  • Tier: Premium
  • Classic or OAuth token: read_api (or api); this server lists the group only to a token that also carries admin_mode
  • Fine-grained token: Alias: Read at instance (permissions page)
  • Behavior: read-only, idempotent
ParameterTypeMandatoryDescription
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.