Skip to main content
Glama

Update release

gitlab_update_release
Idempotent

Update release details in a GitLab project by project ID and tag name, including description, milestone, and release date, to keep release information accurate.

Instructions

Update information about a release in a project.

Args: **kwargs: Additional parameters for the request (e.g., project_id, tag_name).

Returns: Response: A wrapper containing the original response and a Release model.

Raises: MissingParameterError: If the project_id or tag_name is missing. ParameterError: If invalid parameters are provided.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "gitlab_update_release"
  }
}

Input Schema

NameRequiredDescriptionDefault
refNo
dataNo
nameNo
pageNo
sortNo
simpleNo
group_idNo
order_byNo
per_pageNo
tag_nameNo
max_pagesNo
milestonesNo
project_idNo
descriptionNo
released_atNo
tag_messageNo
total_pagesNo
direct_asset_pathNo
include_html_descriptionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv27.3.20
    • removedInput schema / properties / api_parameters
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "additionalProperties": true,
      -      "type": "object"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ],
      -  "default": null
      -}
  2. First observedv27.3.13

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare non-read-only, non-destructive, idempotent, open-world behavior, so the safety profile is covered. The description does add real value beyond them by revealing that project_id and tag_name are effectively mandatory (MissingParameterError) and by describing the return wrapper with a Release model, but it never states what an update actually changes or whether omitted fields are preserved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The docstring is short and front-loads the purpose sentence, and the Raises section earns its place. However, the Args block contributes almost nothing ("**kwargs: Additional parameters for the request") and occupies space that should have gone to documenting the real parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with 19 params, no output schema, and 0% schema coverage, the definition is clearly incomplete — the parameter surface is essentially undocumented. It partially compensates by describing the return wrapper and the required-identifier errors, but an agent still cannot determine which arguments to supply to update a specific field.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 19 parameters at 0% schema description coverage, the description must carry the burden and does not. It names only project_id and tag_name; the remaining 17 parameters — name, description, milestones, released_at, tag_message, ref, direct_asset_path, include_html_description, and the pagination-ish page/per_page/sort/order_by/max_pages/total_pages/simple/group_id — are left entirely unexplained, so an agent cannot tell which ones actually mutate the release.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: "Update information about a release in a project." That is unambiguous and distinguishable from create/delete/get release siblings by verb alone. It stops short of naming any sibling or clarifying scope (e.g. which fields are updatable), so it is clear but not differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no pointer to alternatives such as gitlab_create_release or gitlab_delete_release. The only conditional information is the Raises section, which is error handling rather than invocation guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools