Skip to main content
Glama

Create project deploy token

gitlab_create_project_deploy_token

Create a GitLab project deploy token with defined name, scopes, and expiration so CI/CD or deployment jobs can authenticate without using personal credentials.

Instructions

Create a deploy token for a project.

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

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

Raises: ParameterError: If invalid parameters are provided. MissingParameterError: If required parameters are missing.

Input Schema

NameRequiredDescriptionDefault
nameNo
pageNo
tokenNo
scopesNo
group_idNo
per_pageNo
usernameNo
max_pagesNo
expires_atNo
project_idNo
api_parametersNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. 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 readOnlyHint=false, destructiveHint=false, openWorldHint=true, and idempotentHint=false, so the safety/mutation profile is covered. The description adds some value by describing the return wrapper and the ParameterError/MissingParameterError failure modes, but it omits important mutation context, notably that GitLab only reveals the deploy token secret once at creation and that scopes/expiry are effectively required.

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 text is short but largely autogenerated docstring scaffolding: a generic '**kwargs: Additional parameters' line and boilerplate Returns/Raises sections. The one substantive sentence is front-loaded, but the kwargs sentence is effectively filler that adds no information.

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 mutation tool with 11 undocumented parameters, no output schema, and 0% schema coverage, the description should explain parameter meanings and the secrets-are-returned-once behavior. It gives only a partial return description and generic error classes, leaving an agent unable to construct a correct call without guessing.

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 description coverage is 0% across 11 parameters, so the description carries the full burden. It only names three fields inside a generic '**kwargs (e.g., project_id, name, scopes)' clause and says nothing about expires_at, username, token, per_page, max_pages, group_id, or api_parameters. That falls well short of compensating for the coverage gap.

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?

States a specific verb and resource ('Create a deploy token for a project'), and the project scoping distinguishes it from the sibling gitlab_create_group_deploy_token. It does not explicitly name or contrast with the group-level or list/get deploy-token siblings, but the purpose is unambiguous.

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?

No guidance on when to create a project deploy token versus a group deploy token, versus a runner token, or versus the many other create_* siblings. No prerequisites, permission requirements, or exclusion conditions are given; the agent must infer everything from the name.

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