MCP Tools Reference: compute.googleapis.com

Tool: list_instance_group_managers

Lists Compute Engine managed instance groups (MIGs). Details for each MIG include name, ID, instance template, base instance name, target size, target stopped size, target suspended size, status and creation timestamp. Requires project and zone as input.

The following sample demonstrate how to use curl to invoke the list_instance_group_managers MCP tool.

Curl Request
                  
curl --location 'https://compute.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_instance_group_managers",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Input Schema

Request message for listing instance group managers basic info.

JSON representation
{
  "project": string,
  "zone": string,
  "pageSize": integer,
  "pageToken": string
}
Fields
project

string

Required. Project ID for this request.

zone

string

Required. The zone of the instance group managers.

pageSize

integer

Optional. The maximum number of instance group managers to return.

pageToken

string

Optional. A page token received from a previous call to list instance group managers.

Output Schema

Response message for listing instance group managers basic info.

JSON representation
{
  "instanceGroupManagers": [
    {
      object (InstanceGroupManagerBasicInfo)
    }
  ],
  "nextPageToken": string
}
Fields
instanceGroupManagers[]

object (InstanceGroupManagerBasicInfo)

The list of instance group managers.

nextPageToken

string

A token that can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.

JSON representation
{
  "name": string,
  "id": string,
  "createTime": string,
  "instanceTemplate": string,
  "baseInstanceName": string,
  "targetSize": integer,
  "targetStoppedSize": integer,
  "targetSuspendedSize": integer,
  "status": {
    object (Status)
  }
}
Fields
name

string

Name of the instance group manager.

id

string (uint64 format)

The unique identifier for the instance group manager.

createTime

string (Timestamp format)

Creation timestamp of the instance group manager.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

instanceTemplate

string

The instance template of the instance group manager.

baseInstanceName

string

The base instance name of the instance group manager.

targetSize

integer

The target size of the instance group manager.

targetStoppedSize

integer

The target stopped size of the instance group manager.

targetSuspendedSize

integer

The target suspended size of the instance group manager.

status

object (Status)

The status of the instance group manager.

JSON representation
{
  "seconds": string,
  "nanos": integer
}
Fields
seconds

string (int64 format)

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

integer

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.

JSON representation
{
  "isStable": boolean,
  "allInstancesConfig": {
    object (AllInstancesConfig)
  },
  "versionTarget": {
    object (VersionTarget)
  },
  "stateful": {
    object (Stateful)
  },
  "autoscaler": string
}
Fields
isStable

boolean

Output only. [Output Only] A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.

allInstancesConfig

object (AllInstancesConfig)

Output only. [Output only] Status of all-instances configuration on the group.

versionTarget

object (VersionTarget)

Output only. [Output Only] A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.

stateful

object (Stateful)

Output only. [Output Only] Stateful status of the given Instance Group Manager.

autoscaler

string

Output only. [Output Only] The URL of the Autoscaler that targets this instance group manager.

JSON representation
{
  "effective": boolean,
  "currentRevision": string
}
Fields
effective

boolean

Output only. [Output Only] A bit indicating whether this configuration has been applied to all managed instances in the group.

currentRevision

string

Output only. [Output Only] Current all-instances configuration revision. This value is in RFC3339 text format.

JSON representation
{
  "isReached": boolean
}
Fields
isReached

boolean

Output only. [Output Only] A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.

JSON representation
{
  "hasStatefulConfig": boolean,
  "perInstanceConfigs": {
    object (PerInstanceConfigs)
  }
}
Fields
hasStatefulConfig

boolean

Output only. [Output Only] A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.

perInstanceConfigs

object (PerInstanceConfigs)

Output only. [Output Only] Status of per-instance configurations on the instances.

JSON representation
{
  "allEffective": boolean
}
Fields
allEffective

boolean

Output only. A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.

Tool Annotations

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌