# environment — gitlab

> 18 actions
> This page as plain markdown. Index: https://mcp.jmrp.io/llms.txt

Canonical: https://mcp.jmrp.io/servers/gitlab/actions/environment/
Language: en
Alternate: https://mcp.jmrp.io/es/servers/gitlab/actions/environment/index.md
Updated: 2026-09-22T17:10:10+02:00
License: https://mcp.jmrp.io/license/

Counted with a Free-tier token against gitlab.com, which is the only host this endpoint talks to: to use it against a self-managed instance, run the server yourself — its documentation covers that. The catalog is scoped to the token that asks, so the count moves with both its tier and its permissions: higher tiers expose more actions, and administration domains only appear to tokens allowed to use them. That is why the figures differ elsewhere: the upstream project catalogues 1,006 actions across 162 domains, and 851 on the Free/CE surface, while this deployment publishes 747 because it is OAuth-only and acts with your token, so the administration domains a non-admin account cannot call never appear. All three describe the same catalog, counted from three vantage points.

## Actions

### `environment.create` — Environment Create

Create an environment in a project. Use when introducing new runtime targets such as review, staging, or production environments.

**Required parameters:** `name (string)`, `project_id (string|integer)`

### `environment.delete` — Environment Delete

_destructive_

Delete a stopped environment from a project. Returns: a success confirmation naming the deleted environment. See also: environment.stop, environment.list, environment.get.

**Required parameters:** `environment_id (integer)`, `project_id (string|integer)`

### `environment.deployment_approve_or_reject` — Deployment Approve Or Reject

Approve or reject a blocked deployment awaiting protected-environment approval, optionally with a comment and an approval rule to represent. Returns: a confirmation message naming the deployment and the applied status. See also: environment.deployment_get, environment.deployment_update.

**Required parameters:** `deployment_id (integer)`, `project_id (string|integer)`, `status (string)`

### `environment.deployment_create` — Deployment Create

Create a deployment record for an environment at a given ref and sha with an initial status. Returns: the created deployment with id, iid, ref, sha, status, and nested user, environment, and deployable objects. See also: environment.get, environment.deployment_list, environment.deployment_update.

**Required parameters:** `environment (string)`, `project_id (string|integer)`, `ref (string)`, `sha (string)`

### `environment.deployment_delete` — Deployment Delete

_destructive_

Delete a deployment record by deployment_id within a project. Returns: a confirmation that the deployment was deleted. See also: environment.deployment_get, environment.deployment_list.

**Required parameters:** `deployment_id (integer)`, `project_id (string|integer)`

### `environment.deployment_get` — Deployment Get

_read-only_

Get one deployment by deployment_id for a project. Use when investigating a specific deployment state, environment, or actor metadata.

**Required parameters:** `deployment_id (integer)`, `project_id (string|integer)`

### `environment.deployment_list` — Deployment List

_read-only_

List deployments in a project with environment, status, and date filters plus offset or keyset pagination. Returns: matching deployments with ref, sha, status, user, environment, and deployable (CI job) objects, and pagination metadata. See also: environment.deployment_get, environment.list, pipeline.get.

**Required parameters:** `project_id (string|integer)`

### `environment.deployment_merge_requests` — List Deployment Merge Requests

_read-only_

List the merge requests associated with a deployment, with merge-request filtering (state, approval, author, assignee, draft, created date) and offset or keyset pagination. Returns: matching merge requests with full metadata (author, assignees, reviewers, labels, milestone, pipelines, time stats, timestamps) and pagination metadata. See also: merge_request.get, merge_request.list, environment.deployment_list.

**Required parameters:** `deployment_id (integer)`, `project_id (string|integer)`

### `environment.deployment_update` — Deployment Update

Update a deployment's status by deployment_id within a project. Returns: the updated deployment with id, iid, ref, sha, status, and nested user, environment, and deployable objects. See also: environment.deployment_get, environment.deployment_list, environment.deployment_approve_or_reject.

**Required parameters:** `deployment_id (integer)`, `project_id (string|integer)`, `status (string)`

### `environment.freeze_create` — Create Freeze Period

Create a deploy freeze period for a project. Returns: the created freeze period with id, freeze_start/freeze_end cron expressions, and cron_timezone.

**Required parameters:** `freeze_end (string)`, `freeze_start (string)`, `project_id (string|integer)`

### `environment.freeze_delete` — Delete Freeze Period

_destructive_

Delete a deploy freeze period. Returns: no content on success (HTTP 204).

**Required parameters:** `freeze_period_id (integer)`, `project_id (string|integer)`

### `environment.freeze_get` — Get Freeze Period

_read-only_

Get a specific deploy freeze period. Returns: the freeze period's id, freeze_start/freeze_end cron expressions, cron_timezone, and created/updated timestamps.

**Required parameters:** `freeze_period_id (integer)`, `project_id (string|integer)`

### `environment.freeze_list` — List Freeze Periods

_read-only_

List deploy freeze periods for a project. Returns: each freeze period's id, freeze_start/freeze_end cron expressions, cron_timezone, and created/updated timestamps.

**Required parameters:** `project_id (string|integer)`

### `environment.freeze_update` — Update Freeze Period

Update an existing deploy freeze period. Returns: the updated freeze period with id, freeze_start/freeze_end cron expressions, and cron_timezone.

**Required parameters:** `freeze_period_id (integer)`, `project_id (string|integer)`

### `environment.get` — Environment Get

_read-only_

Get one environment by environment_id. Use when inspecting state, tier, external URL, and stop behavior of a specific environment.

**Required parameters:** `environment_id (integer)`, `project_id (string|integer)`

### `environment.list` — Environment List

_read-only_

List environments in one project with filters and pagination. Use this to discover environment IDs before get/update/stop/delete operations.

**Required parameters:** `project_id (string|integer)`

### `environment.stop` — Environment Stop

_destructive_

Stop an active environment. This is modeled as a delete-style action but intentionally marked non-destructive because it changes runtime state without deleting the environment resource.

**Required parameters:** `environment_id (integer)`, `project_id (string|integer)`

### `environment.update` — Environment Update

Update an existing environment in a project. Returns: the updated environment with state, tier, external URL, cluster agent, Kubernetes namespace, Flux resource path, and auto-stop settings. See also: environment.get, environment.list, environment.stop.

**Required parameters:** `environment_id (integer)`, `project_id (string|integer)`
