Skip to main content
Glama

list_managed_instances

Read-onlyIdempotent

Lists managed instances for a given managed instance group (MIG). For each instance, details include id, instance URL, instance status, and current action. Requires project, zone, and MIG name as input.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. Identifier. The instance group manager name.
zoneYesRequired. The zone of the instance group manager.
projectYesRequired. Project ID for this request.
pageSizeNoOptional. The maximum number of managed instances to return.
pageTokenNoOptional. A page token received from a previous call to list managed instances.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nextPageTokenNoA token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
managedInstancesNoThe list of managed instances.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • addedOutput schema / $defs / ManagedInstance / properties / targetStatus
      Added value: +{
      +  "description": "Output only. The eventual status of the instance. The instance group manager will not be identified as stable till each managed instance reaches its targetStatus.",
      +  "enum": [
      +    "ABANDONED",
      +    "DELETED",
      +    "INVALID",
      +    "RUNNING",
      +    "STOPPED",
      +    "SUSPENDED"
      +  ],
      +  "readOnly": true,
      +  "type": "string",
      +  "x-google-enum-descriptions": [
      +    "The managed instance will eventually be ABANDONED, i.e. dissociated from the managed instance group.",
      +    "The managed instance will eventually be DELETED.",
      +    "Only present to map the STATUS_INVALID value.",
      +    "The managed instance will eventually reach status RUNNING.",
      +    "The managed instance will eventually reach status TERMINATED.",
      +    "The managed instance will eventually reach status SUSPENDED."
      +  ]
      +}
  2. Changed2 schema fields changed
    • changedOutput schema / $defs / ManagedInstance / properties / instanceStatus / enum
      Previous value: -[
      -  "DEPROVISIONING",
      -  "PENDING",
      -  "PROVISIONING",
      -  "REPAIRING",
      -  "RUNNING",
      -  "STAGING",
      -  "STOPPED",
      -  "STOPPING",
      -  "SUSPENDED",
      -  "SUSPENDING",
      -  "TERMINATED"
      -]New value: +[
      +  "DEPROVISIONING",
      +  "PENDING",
      +  "PENDING_STOP",
      +  "PROVISIONING",
      +  "REPAIRING",
      +  "RUNNING",
      +  "STAGING",
      +  "STOPPED",
      +  "STOPPING",
      +  "SUSPENDED",
      +  "SUSPENDING",
      +  "TERMINATED"
      +]
    • changedOutput schema / $defs / ManagedInstance / properties / instanceStatus / x-google-enum-descriptions
      Previous value: -[
      -  "The instance is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc.",
      -  "For Flex Start provisioning instance is waiting for available capacity from Dynamic Workload Scheduler (DWS).",
      -  "Resources are being allocated for the instance.",
      -  "The instance is in repair.",
      -  "The instance is running.",
      -  "All required resources have been allocated and the instance is being started.",
      -  "The instance has stopped successfully.",
      -  "The instance is currently stopping (either being deleted or killed).",
      -  "The instance has suspended.",
      -  "The instance is suspending.",
      -  "The instance has stopped (either by explicit action or underlying failure)."
      -]New value: +[
      +  "The instance is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc.",
      +  "For Flex Start provisioning instance is waiting for available capacity from Dynamic Workload Scheduler (DWS).",
      +  "The instance is gracefully shutting down.",
      +  "Resources are being allocated for the instance.",
      +  "The instance is in repair.",
      +  "The instance is running.",
      +  "All required resources have been allocated and the instance is being started.",
      +  "The instance has stopped successfully.",
      +  "The instance is currently stopping (either being deleted or killed).",
      +  "The instance has suspended.",
      +  "The instance is suspending.",
      +  "The instance has stopped (either by explicit action or underlying failure)."
      +]
  3. Changed6 schema fields changed
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / description
      Added value: +"Represents a single error encountered during the processing of an operation."
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / properties / errorDetails / items / description
      Added value: +"Container for structured error details providing additional context specific to the encountered error code."
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / properties / errorDetails / items / properties / errorInfo / description
      Added value: +"Error information containing structured domain, reason, and metadata."
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / properties / errorDetails / items / properties / help / description
      Added value: +"Links and information to help the user resolve the error."
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / properties / errorDetails / items / properties / localizedMessage / description
      Added value: +"A localized human-readable error message intended for end users."
    • addedOutput schema / $defs / LastAttempt / properties / errors / properties / errors / items / properties / errorDetails / items / properties / quotaInfo / description
      Added value: +"Details about quota limits and metrics when a quota is exceeded."
  4. Changed5 schema fields changed
    • addedOutput schema / $defs / Duration
      Added value: +{
      +  "description": "A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". Range is approximately 10,000 years.",
      +  "properties": {
      +    "nanos": {
      +      "description": "Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 `seconds` field and a positive `nanos` field. Must be from 0 to 999,999,999 inclusive.",
      +      "format": "int32",
      +      "type": "integer"
      +    },
      +    "seconds": {
      +      "description": "Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years",
      +      "format": "int64",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ManagedInstance / properties / scheduling
      Added value: +{
      +  "$ref": "#/$defs/Scheduling",
      +  "description": "Output only. Information about the termination timestamp of the instance, if applicable.",
      +  "readOnly": true
      +}
    • addedOutput schema / $defs / ManagedInstance / properties / shutdownDetails
      Added value: +{
      +  "$ref": "#/$defs/ShutdownDetails",
      +  "description": "Output only. Specifies the graceful shutdown details if the instance is in `PENDING_STOP` state or there is a programmed stop scheduled.",
      +  "readOnly": true
      +}
    • addedOutput schema / $defs / Scheduling
      Added value: +{
      +  "properties": {
      +    "gracefulShutdownTimestamp": {
      +      "description": "Output only. The timestamp at which the underlying instance will be triggered for graceful shutdown if it is configured. This is in RFC3339 <https://www.ietf.org/rfc/rfc3339.txt> text format.",
      +      "format": "date-time",
      +      "readOnly": true,
      +      "type": "string"
      +    },
      +    "terminationTimestamp": {
      +      "description": "Output only. The timestamp at which the managed instance will be terminated. This is in RFC3339 <https://www.ietf.org/rfc/rfc3339.txt> text format.",
      +      "format": "date-time",
      +      "readOnly": true,
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ShutdownDetails
      Added value: +{
      +  "properties": {
      +    "maxDuration": {
      +      "$ref": "#/$defs/Duration",
      +      "description": "Output only. The duration for graceful shutdown. Only applicable when the instance is in `PENDING_STOP` state.",
      +      "readOnly": true
      +    },
      +    "requestTimestamp": {
      +      "description": "Output only. Past timestamp indicating the beginning of `PENDING_STOP` state of instance in RFC3339 <https://www.ietf.org/rfc/rfc3339.txt> text format.",
      +      "format": "date-time",
      +      "readOnly": true,
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  5. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish the tool as read-only, idempotent, and non-destructive. The description adds useful context by listing what information is returned for each instance (id, instance URL, status, current action) and reiterating required inputs. No contradiction with annotations exists.

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?

The description is two concise sentences with no filler. The primary action and resource are front-loaded, followed by the key output details and required inputs. Every sentence earns its place.

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

Completeness5/5

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

Given the read-only annotations, a complete input schema, and an output schema, the description covers what the tool does, what it returns, and what it requires. Nothing essential is missing for an agent to select and invoke the tool correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents all five parameters, including the optional pageSize and pageToken. The description only restates that project, zone, and MIG name are required, which adds little beyond the schema. The baseline 3 is appropriate because the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Lists') and identifies the exact resource being acted on ('managed instances for a given managed instance group (MIG)'). It also states the kind of details returned, which makes the tool's purpose unambiguous and distinguishes it from siblings like list_instances or list_instance_group_managers.

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

Usage Guidelines4/5

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

The description makes the usage context clear by specifying that this is for a given MIG and explicitly stating the required inputs: project, zone, and MIG name. It does not explicitly name alternatives or exclusion cases, but the 'for a given MIG' framing is enough to guide correct selection in most situations.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.6/5.0
Disambiguation5/5

Each tool targets a distinct resource-action combination. For resources with both basic and detailed getters (reservations, templates), the suffixes clearly differentiate them, and list vs get distinctions are unambiguous. No two tools appear to do the same thing.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case (e.g., create_instance, list_disks, get_zone_operation). Getters consistently use descriptive suffixes like basic_info, details, or properties. No mixed naming conventions or vague verbs.

Tool Count4/5

29 tools is slightly above the ideal range but justified given the breadth of Google Compute Engine resources covered (instances, disks, templates, reservations, commitments, MIGs, snapshots, images, machine types, accelerator types). Each tool serves a specific purpose and contributes to the overall scope.

Completeness2/5

The toolset is heavily read-oriented. While instances have full lifecycle coverage (create, delete, start, stop, reset, set machine type), most other resources lack write operations: disks, templates, reservations, commitments, snapshots, and MIGs only have get/list tools. This creates dead ends for agents needing to create or modify these resources, which is a significant gap for a GCE management server.

Resources