Skip to main content
Glama

Reset token

gitlab_reset_token

Resets the authentication token for a GitLab runner using its runner ID and returns updated runner details.

Instructions

Reset authentication token for a runner.

Args: **kwargs: Additional parameters for the request (e.g., runner_id, token).

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

Raises: MissingParameterError: If the runner_id or token 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_reset_token"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataNo
infoNo
tokenNo
activeNo
lockedNo
pausedNo
statusNo
group_idNo
tag_listNo
max_pagesNo
runner_idNo
project_idNo
all_runnersNo
descriptionNo
runner_typeNo
access_levelNo
run_untaggedNo
maximum_timeoutNo
maintenance_noteNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv27.3.20
    • changedInput schema / properties / all_runners / default
      Previous value: -falseNew value: +null
    • removedInput schema / properties / api_parameters
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "additionalProperties": true,
      -      "type": "object"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ],
      -  "default": null
      -}
    • addedInput schema / properties / max_pages
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  2. First observedv27.3.13

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the burden is lower. The description usefully adds the error contract (MissingParameterError when runner_id or token is absent) and names the return wrapper containing a Runner model, but it never says what happens to the previously issued token (revoked immediately? still valid briefly?) or whether the reset is reversible - important for a security-sensitive operation.

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 purpose sentence is front-loaded and clear, and the Returns/Raises block carries real information. But the 'Args: **kwargs: Additional parameters for the request' line is misleading boilerplate - the schema sets additionalProperties to false and enumerates fixed fields - so part of the text is wasted and inaccurate.

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

Completeness2/5

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

For a non-idempotent, security-sensitive mutation with 19 undocumented optional parameters and no output schema, the definition is far too thin. An agent cannot know which of the 17 unspecified parameters matter, what the returned Runner wrapper contains, or what scope/permission the call requires before invoking it.

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?

Schema coverage is 0% across 19 parameters, so the description must compensate and it does not. It mentions only runner_id and token (as 'e.g.' examples) and never explains what active, locked, paused, status, all_runners, group_id, project_id, tag_list, runner_type, or maximum_timeout mean in the context of a token reset - many of which look like runner-update fields that may be ignored or may alter the runner.

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 first sentence states a specific verb and resource: reset the authentication token for a runner. However, it does not distinguish itself from three close siblings in the tool list (gitlab_reset_project_runner_token, gitlab_reset_group_runner_token, gitlab_reset_gitlab_runner_token), leaving the agent unable to tell when this generic variant is the right one.

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 mention of which sibling token-reset tool to prefer, no prerequisites, and no note on required permissions (e.g. admin vs owner scope). The only usage-adjacent text is the Raises block, which describes failure modes rather than selection criteria.

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