Releases
Una release envuelve un tag con sus notas, hitos y recursos descargables. Estas acciones listan releases, leen una o la última, crean una (para un tag existente o uno nuevo a partir de una referencia), actualizan y borran una, y gestionan los enlaces de recursos de una release, uno a uno o en lote tras una compilación. Borrar una release conserva su tag.
Preguntas de ejemplo
Sección titulada «Preguntas de ejemplo»- “Lista las releases del proyecto 42”
- “Crea la release v2.0.0 con el changelog como notas”
- “Adjunta los artefactos de la compilación a la release v2.0.0”
Cómo llamarlo
Sección titulada «Cómo llamarlo»- Dinámica, la superficie predeterminada: llama a
gitlab_execute_actionconactionigual al ID de la acción, comorelease.create, y sus parámetros enparams.gitlab_find_actionencuentra un ID a partir de una descripción de la tarea. - Meta (
GITLAB_MCP_TOOL_SURFACE=meta): llama agitlab_releaseconactionigual al nombre de la acción, comocreate, y sus parámetros enparams. - Individual (
GITLAB_MCP_TOOL_SURFACE=individual): llama a la herramienta propia de la acción, comogitlab_release_create, pasándole directamente sus parámetros.
Disponibilidad
Sección titulada «Disponibilidad»Todos los niveles sirven el grupo completo, tanto en instancias autogestionadas como en GitLab.com.
Acciones de solo lectura: 5 de 12, las que conserva un despliegue en modo de solo lectura. A un token con read_api y sin api se le sirven 5 de las 12.
Acciones
Sección titulada «Acciones»La descripción de cada acción, y la de cada uno de sus parámetros, es el texto que sirve el servidor para ella en la superficie predeterminada, citado tal cual; por eso está en inglés. Las líneas de token dicen lo que exige GitLab 19.4.1 a un token para las peticiones que envía cada acción; en una instancia con Admin Mode activado, una acción que solo puede ejecutar un administrador necesita además admin_mode. Una acción destructiva solo se ejecuta una vez confirmada, salvo que GITLAB_MCP_YOLO_MODE (o AUTOPILOT) se salte ese paso: la superficie dinámica necesita confirm: true en gitlab_execute_action, y las otras dos aceptan un parámetro confirm o la pregunta del cliente (Acciones destructivas).
| Acción | Individual |
|---|---|
release.create | gitlab_release_create |
release.delete | gitlab_release_delete |
release.get | gitlab_release_get |
release.get_latest | gitlab_release_latest |
release.link_create | gitlab_release_link_create |
release.link_create_batch | gitlab_release_link_create_batch |
release.link_delete | gitlab_release_link_delete |
release.link_get | gitlab_release_link_get |
release.link_list | gitlab_release_link_list |
release.link_update | gitlab_release_link_update |
release.list | gitlab_release_list |
release.update | gitlab_release_update |
release.create
Sección titulada «release.create»Create a release for a tag, optionally creating the tag from a ref and attaching asset links. Returns: the created release with author, commit, assets, milestones, and _links. See also:
release.update,release.link_create,tag.create.
- Meta-herramienta:
gitlab_release, accióncreate - Herramienta individual:
gitlab_release_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name associated with the release |
assets | object | no | Asset links to attach to the release at creation time |
description | string | no | Release notes (Markdown supported) |
milestones | string[] | no | Milestone titles to associate with the release |
name | string | no | Release title |
ref | string | no | Branch or commit SHA to create tag from when tag_name does not exist. Include this when the prompt says ref/from ref |
released_at | string | no | Date of the release in ISO 8601 format |
tag_message | string | no | Message to use for the annotated tag (creates annotated tag instead of lightweight) |
release.delete
Sección titulada «release.delete»Delete a release by tag_name (the Git tag itself is preserved). Returns: the deleted release details. See also:
release.get,release.list,tag.delete.
- Meta-herramienta:
gitlab_release, accióndelete - Herramienta individual:
gitlab_release_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release to delete |
release.get
Sección titulada «release.get»Get a single release by project_id and tag_name. Returns: release notes, author, commit, assets, milestones, evidences, and _links. See also:
release.list,release.update,release.delete,release.link_list.
- Meta-herramienta:
gitlab_release, acciónget - Herramienta individual:
gitlab_release_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Release: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
release.get_latest
Sección titulada «release.get_latest»Get the most recent release for a project. Returns: release notes, author, commit, assets, milestones, evidences, and _links. See also:
release.list,release.get,release.create.
- Meta-herramienta:
gitlab_release, acciónget_latest - Herramienta individual:
gitlab_release_latest - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Release: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
release.link_create
Sección titulada «release.link_create»Create a single release asset link. Returns: the created link with id, name, url, direct_asset_url, and link_type. See also:
release.link_create_batch,release.link_list,release.link_update.
- Meta-herramienta:
gitlab_release, acciónlink_create - Herramienta individual:
gitlab_release_link_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release Link: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | sí | Name of the link |
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
url | string | sí | Absolute http, https, or ftp URL of the link target. Do not use local file paths or relative paths. |
direct_asset_path | string | no | Optional path for a direct asset link relative to the release: redirects to url. Use instead of the deprecated filepath. |
filepath | string | no | Deprecated alias of direct_asset_path. Prefer direct_asset_path. |
link_type | string (other, runbook, image, package) | no | Type of the release link: other, runbook, image, or package. |
release.link_create_batch
Sección titulada «release.link_create_batch»Create multiple release asset links in one call. Returns: the created links (id, name, url, direct_asset_url, link_type) and any failed entries. See also:
release.link_create,release.link_list,package.publish.
- Meta-herramienta:
gitlab_release, acciónlink_create_batch - Herramienta individual:
gitlab_release_link_create_batch - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release Link: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
links | object[] | sí | Array of release asset links. Each item supports name, url, link_type, direct_asset_path, and the deprecated filepath. |
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
release.link_delete
Sección titulada «release.link_delete»Delete a release asset link by link_id. Returns: the deleted link with id, name, url, direct_asset_url, and link_type. See also:
release.link_get,release.link_list.
- Meta-herramienta:
gitlab_release, acciónlink_delete - Herramienta individual:
gitlab_release_link_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release Link: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
link_id | integer | sí | ID of the release link to delete |
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
release.link_get
Sección titulada «release.link_get»Get one release asset link by link_id. Returns: the link with id, name, url, direct_asset_url, and link_type. See also:
release.link_list,release.link_update,release.link_delete.
- Meta-herramienta:
gitlab_release, acciónlink_get - Herramienta individual:
gitlab_release_link_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Release Link: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
link_id | integer | sí | ID of the release link |
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
release.link_list
Sección titulada «release.link_list»List asset links for a release with offset or keyset pagination. Returns: matching links (id, name, url, direct_asset_url, link_type) and pagination metadata. See also:
release.link_get,release.link_create,release.link_create_batch.
- Meta-herramienta:
gitlab_release, acciónlink_list - Herramienta individual:
gitlab_release_link_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Release Link: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
order_by | string | no | Column to order keyset-paginated results by (e.g. created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc or desc) |
release.link_update
Sección titulada «release.link_update»Update an existing release asset link by link_id. Returns: the updated link with id, name, url, direct_asset_url, and link_type. See also:
release.link_get,release.link_list,release.link_delete.
- Meta-herramienta:
gitlab_release, acciónlink_update - Herramienta individual:
gitlab_release_link_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release Link: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
link_id | integer | sí | ID of the release link to update |
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
direct_asset_path | string | no | New direct asset path for the link. Pass an empty string to remove it. Omit the field to leave it untouched |
filepath | string | no | New filepath for a direct asset link. Pass an empty string to remove it. Omit the field to leave it untouched |
link_type | string (other, runbook, image, package) | no | Type of the release link: other, runbook, image, or package. |
name | string | no | New name of the link |
url | string | no | Absolute http, https, or ftp URL of the link target. Do not use local file paths or relative paths. |
Además necesita al menos uno de estos: name; url.
release.list
Sección titulada «release.list»List releases in a project with pagination. Returns: tag names, release names, release dates, and summary metadata. See also:
release.get,tag.list,release.link_list.
- Meta-herramienta:
gitlab_release, acciónlist - Herramienta individual:
gitlab_release_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Release: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
include_html_description | boolean | no | Include the description_html field rendered from the Markdown description |
order_by | string (released_at, created_at) | no | Order by field: released_at (default) or created_at |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
release.update
Sección titulada «release.update»Update an existing release’s title, notes, release date, or milestones. Returns: the updated release with author, commit, assets, milestones, and _links. See also:
release.get,release.create,release.delete.
- Meta-herramienta:
gitlab_release, acciónupdate - Herramienta individual:
gitlab_release_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Release: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
tag_name | string | sí | Tag name of the release |
description | string | no | Updated release notes |
milestones | string[] | no | Milestone titles to associate with the release. Pass [] to detach every milestone. Omit the field to leave them untouched |
name | string | no | New release title |
released_at | string | no | New release date in ISO 8601 format |