Tool: get_rollout
Gets a Rollout resource. Required parameter: 'name' (e.g. projects/my-project/locations/us-central1/rollouts/my-rollout).
The following sample demonstrate how to use curl
to invoke the get_rollout
MCP tool.
| Curl Request |
|---|
curl --location 'https://saasservicemgmt.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_rollout", "arguments": { // provide these details according to the tool' s MCP specification } } , "jsonrpc" : "2.0" , "id" : 1 } ' |
Input Schema
The request structure for the GetRollout method.
GetRolloutRequest
| JSON representation |
|---|
{ "name" : string } |
| Fields | |
|---|---|
name
|
Required. The resource name of the resource within a service. |
Output Schema
Represents a single rollout execution and its results
Rollout
| JSON representation |
|---|
{ "name" : string , "release" : string , "flagRelease" : string , "startTime" : string , "endTime" : string , "state" : enum ( |
| Fields | |
|---|---|
name
|
Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollout/{rollout_id}" |
release
|
Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified. |
flagRelease
|
Optional. Immutable. Name of the FlagRelease to be rolled out to the target Units. Release and FlagRelease are mutually exclusive. Note: |
startTime
|
Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
endTime
|
Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
state
|
Output only. Current state of the rollout. |
stateMessage
|
Output only. Human readable message indicating details about the last state transition. |
stateTransitionTime
|
Optional. Output only. The time when the rollout transitioned into its current state. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
rootRollout
|
Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollouts/{rollout_id}" |
parentRollout
|
Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollouts/{rollout_id}" |
rolloutOrchestrationStrategy
|
Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations. |
unitFilter
|
Optional. CEL( https://github.com/google/cel-spec ) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used. |
rolloutKind
|
Required. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to. |
stats
|
Optional. Output only. Details about the progress of the rollout. |
control
|
Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -> SUCCEEDED or RUNNING -> FAILED). Requests can only be made when the Rollout is in a non-terminal state. |
effectiveUnitFilter
|
Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL( https://github.com/google/cel-spec ) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here. |
labels
|
Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. An object containing a list of |
annotations
|
Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations An object containing a list of |
uid
|
Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. |
etag
|
Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. |
createTime
|
Output only. The timestamp when the resource was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime
|
Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
deleteTime
|
Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
Timestamp
| JSON representation |
|---|
{ "seconds" : string , "nanos" : integer } |
| Fields | |
|---|---|
seconds
|
Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z). |
nanos
|
Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive. |
RolloutStats
| JSON representation |
|---|
{ "operationsByState" : [ { object ( |
operationsByState[]
object (
Aggregate
)
Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated.
There will be at most one entry per group. Possible values for operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "FAILED" - "CANCELLED"
Union field _estimated_total_unit_count
.
_estimated_total_unit_count
can be only one of the following:
estimatedTotalUnitCount
string ( int64
format)
Optional. Output only. Estimated number of units based. The estimation is computed upon creation of the rollout.
Aggregate
| JSON representation |
|---|
{ "group" : string , "count" : integer } |
| Fields | |
|---|---|
group
|
Required. Group by which to aggregate. |
count
|
Required. Number of records in the group. |
RolloutControl
| JSON representation |
|---|
{ "action" : enum ( |
action
enum (
RolloutAction
)
Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state.
action_params
. Setting for the action. The setting must match the action e.g.: action=RUN may only set run_params or omit all parameters. It is an error to set a setting that is not applicable to the action. action_params
can be only one of the following:runParams
object (
RunRolloutActionParams
)
Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed.
RunRolloutActionParams
| JSON representation |
|---|
{ "retryFailedOperations" : boolean } |
| Fields | |
|---|---|
retryFailedOperations
|
Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN. |
LabelsEntry
| JSON representation |
|---|
{ "key" : string , "value" : string } |
| Fields | |
|---|---|
key
|
|
value
|
|
AnnotationsEntry
| JSON representation |
|---|
{ "key" : string , "value" : string } |
| Fields | |
|---|---|
key
|
|
value
|
|
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌

