Skip to main content
Glama

gitlab_pipeline_create

Create a GitLab CI/CD pipeline for a branch or tag. Use dry_run (default true) to verify the ref exists before triggering a real pipeline.

Instructions

Create a pipeline for a branch or tag. dry_run (default true) only checks that the ref exists.

Input Schema

NameRequiredDescriptionDefault
refYes
dry_runNo
projectNogroup/name or numeric id; default: GITLAB_PROJECT or the origin remote

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

The disclosure that dry_run defaults to true and only verifies the ref exists adds real behavioral context beyond the annotations, which merely say readOnlyHint=false and openWorldHint=true. It does not cover required permissions, what a second call against the same ref does (duplicate pipelines), error behavior for a missing ref, or what is returned.

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

Conciseness5/5

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

Two short sentences with zero filler; the primary action leads, and the non-obvious default behavior follows immediately. Nothing redundant is included.

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

Completeness3/5

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

For a small three-parameter mutation tool with no output schema, the essentials of what the tool does and how dry_run behaves are present. What an agent still cannot infer is the result shape (pipeline id/url), permission requirements, and behavior on duplicate or nonexistent refs, which matters for an open-world write operation.

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

Parameters4/5

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

Schema coverage is only 33% — only project is described in the schema — but the description compensates by explaining that 'ref' is a branch or tag and that dry_run's default true performs an existence check only. That covers the two undocumented parameters with meaningful semantics rather than restating their names.

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 pipeline) and narrows scope to a branch or tag, which distinguishes it from read-oriented siblings like gitlab_pipeline_get and gitlab_pipeline_jobs. It doesn't explicitly name an alternative, but the create-vs-read split is obvious from the sibling set.

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

Usage Guidelines3/5

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

The dry_run sentence implicitly tells the agent that the default call is a validation no-op and that dry_run=false is required to actually create, which is useful usage context. However, there is no explicit when-to-use guidance versus alternatives (job_play, retrying a pipeline) and no prerequisites or exclusions stated.

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