com.googleapis.container/mcp
REMOTE · CONTAINER.GOOGLEAPIS.COM · SCANNED AUG 3
Provides read access to your GKE and Kubernetes resources.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security46
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (update_cluster). See how to fix → View diagnostics → Fail
- HTTPS not yet verified: we couldn't determine whether a plaintext access path exists. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability71
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3084 tokens (~134/item across 23 items; 23 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · container.googleapis.com
claude mcp add --transport http com-googleapis-container-mcp https://container.googleapis.com/mcp
[mcp_servers.com-googleapis-container-mcp] url = "https://container.googleapis.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-googleapis-container-mcp": {
"type": "remote",
"url": "https://container.googleapis.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-googleapis-container-mcp --url https://container.googleapis.com/mcp --transport streamable-http
mcp_servers:
com-googleapis-container-mcp:
url: "https://container.googleapis.com/mcp" {
"mcpServers": {
"com-googleapis-container-mcp": {
"type": "http",
"url": "https://container.googleapis.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 −2
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 59
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://container.googleapis.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=edgecert.googleapis.com | CN=WR2,O=Google Trust Services,C=US | 29 Jun 2026 | 21 Sept 2026 | ECDSA 256 | SHA256-RSA | ba12c5d603744ace10f5aabb9a4d111d |
| SANs: edgecert.googleapis.com, android.googleapis.com, bigtable.googleapis.com, clouderrorreporting.googleapis.com, cloudtrace.googleapis.com, container.googleapis.com, dataflow.googleapis.com, datastore.googleapis.com, dlp.googleapis.com, firestore.googleapis.com, iamcredentials.googleapis.com, logging.googleapis.com and 5 more | ||||||
| CN=WR2,O=Google Trust Services,C=US (CA) | CN=GTS Root R1,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | RSA 2048 | SHA256-RSA | 7ff005a07c4cded100ad9d66a5107b98 |
| CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 19 Jun 2020 | 28 Jan 2028 | RSA 4096 | SHA256-RSA | 77bd0d6cdb36f91aea210fc4f058d30d |
DNSSEC insecure
Validation of container.googleapis.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| googleapis.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://container.googleapis.com/mcp | Verified | 200 | |
| http (plaintext) | http://container.googleapis.com/mcp | Inconclusive | 405 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
apply_k8s_manifest ~118
Applies a Kubernetes manifest to a cluster using server-side apply. This is similar to running `kubectl apply --server-side`.
| Name | Type | Req | Description |
|---|---|---|---|
| dryRun | boolean | — | Optional. If true, run in dry-run mode. |
| forceConflicts | boolean | — | Optional. If true, force conflicts resolution when applying. |
| parent | string | yes | Required. The cluster to apply the manifest to. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| yamlManifest | string | yes | Required. The YAML manifest to apply. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during apply. If this field is populated, some resources may not have been applied. |
| result | string | — | Result of the apply operation, e.g., resources created/configured. This might be a summary string or structured data. |
No examples provided.
cancel_operation ~85
Cancels a specific GKE operation.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, operation id) of the operation to cancel. Specified in the format `projects/*/locations/*/operations/*`. |
| parent | string | yes | Required. The parent cluster of the operation. Specified in the format `projects/*/locations/*/clusters/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during operation cancellation. |
No examples provided.
check_k8s_auth ~174
Checks whether an action is allowed on a Kubernetes resource. This is similar to running `kubectl auth can-i`.
| Name | Type | Req | Description |
|---|---|---|---|
| namespace | string | — | Optional. The namespace of the resource. If not specified, "default" is used for namespace-scoped resources. |
| parent | string | yes | Required. The cluster to check authorization against. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| resource | string | — | Optional. The name of the resource to check. |
| resourceType | string | yes | Required. The type of resource to check. e.g. "pods", "deployments", "services". |
| verb | string | yes | Required. The verb to check. e.g. "get", "list", "watch", "create", "update", "patch", "delete". |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during auth check. |
| result | string | — | The result of auth can-i check. |
No examples provided.
create_cluster ~188
Creates a new GKE cluster in a given project and location. It's recommended to read the [GKE documentation](https://docs.cloud.google.com/kubernetes-engine/docs/concepts/configuration-overview) to understand cluster configuration options. Cluster creation will default to Autopilot mode, as recommended by GKE best practices. If the user explicitly wants to create a Standard cluster, you need to set autopilot.enabled=false in the cluster configuration. This is similar to running `gcloud container clusters create-auto` or `gcloud container clusters create`.
| Name | Type | Req | Description |
|---|---|---|---|
| cluster | string | yes | Required. A [cluster resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters) represented as a string using JSON format. |
| parent | string | yes | Required. The parent (project and location) where the cluster will be created. Specified in the format `projects/*/locations/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during the operation. |
| operation | string | — | JSON string of the GKE Operation object. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.
create_node_pool ~113
Creates a node pool for a specific GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| nodePool | string | yes | Required. The node pool to create represented as a string using JSON format. The full node pool object can be found at https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.… |
| parent | string | yes | Required. The parent (project, location, cluster name) where the node pool will be created. Specified in the format `projects/*/locations/*/clusters/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during the operation. |
| operation | string | — | JSON string of the GKE Operation object. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.
delete_k8s_resource ~198
Deletes a Kubernetes resource from a cluster. This is similar to running `kubectl delete`.
| Name | Type | Req | Description |
|---|---|---|---|
| cascade | string | — | Optional. The cascading deletion policy to use. If not specified, 'background' is used. Valid values are 'background', 'foreground', and 'orphan'. |
| dryRun | boolean | — | Optional. If true, run in dry-run mode. |
| name | string | yes | Required. The name of the resource to delete. |
| namespace | string | — | Optional. The namespace of the resource. If not specified, "default" is used. |
| parent | string | yes | Required. The cluster, which owns this collection of resources. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| resourceType | string | yes | Required. The type of resource to delete. Kubernetes resource/kind name in singular form, lower case. e.g. "pod", "deployment", "service". |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during deletion. |
| result | string | — | Result of the delete operation. |
No examples provided.
describe_k8s_resource ~101
Shows the details of a specific Kubernetes resource. This is similar to running `kubectl describe`.
| Name | Type | Req | Description |
|---|---|---|---|
| labelSelector | string | — | Optional. A label selector to filter resources. |
| name | string | — | Optional. The name of the resource. |
| namespace | string | — | Optional. The namespace of the resource. |
| parent | string | yes | Required. The parent cluster. |
| resourceType | string | yes | Required. The type of the resource. |
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | — | The description of the resource. |
| errors | array | — | Errors encountered during description retrieval. |
No examples provided.
get_cluster ~142
Gets the details of a specific GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, cluster) of the cluster to retrieve. Specified in the format `projects/*/locations/*/clusters/*`. |
| readMask | string | — | Optional. The field mask to specify the fields to be returned in the response. Use a single "*" to get all fields. Default: autopilot,createTime,currentMasterVersion,currentNodeCount,currentNodeVersi… |
| Name | Type | Req | Description |
|---|---|---|---|
| cluster | string | — | A string representing the Cluster object in JSON format. |
| errors | array | — | Errors encountered during cluster retrieval. |
No examples provided.
get_k8s_cluster_info ~54
Gets cluster endpoint information. This is similar to running `kubectl cluster-info`.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent cluster. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| Name | Type | Req | Description |
|---|---|---|---|
| clusterInfo | string | — | The cluster info of the resource. Displays address and port information about the Kubernetes control plane and other services running within the cluster such as CoreDNS and Metrics-server. Example: "… |
| errors | array | — | Errors encountered during cluster info retrieval. |
No examples provided.
get_k8s_logs ~319
Gets logs from a Kubernetes container in a pod. This is similar to running `kubectl logs`.
| Name | Type | Req | Description |
|---|---|---|---|
| allContainers | boolean | — | Optional. If true, retrieve logs from all containers in the pod. |
| container | string | — | Optional. The name of the container to retrieve logs from. If not specified, logs from the first container are returned. |
| name | string | yes | Required. The name of the resource to retrieve logs from. This can be a pod name (e.g. "my-pod") or a type/name (e.g. "deployment/my-deployment"). If a type is not specified, "pod" is assumed. |
| namespace | string | — | Optional. The namespace of the resource. If not specified, "default" is used. |
| parent | string | yes | Required. The cluster to retrieve logs from. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| previous | boolean | — | Optional. If true, retrieve logs from the previous instantiation of the container. |
| since | string | — | Optional. Retrieve logs since this duration ago (e.g. "1h", "10m"). |
| sinceTime | string | — | Optional. Retrieve logs since this time (RFC3339). e.g. "2024-08-30T06:00:00Z". |
| tail | string | — | Optional. The number of lines from the end of the logs to show. |
| timestamps | boolean | — | Optional. If true, include timestamps in the log output. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during log retrieval. |
| logs | string | — | The logs from the resources. |
No examples provided.
get_k8s_resource ~299
Gets one or more Kubernetes resources from a cluster. Resources can be filtered by type, name, namespace, and label selectors. Returns the resources in YAML format. This is similar to running `kubectl get`.
| Name | Type | Req | Description |
|---|---|---|---|
| customColumns | string | — | Optional. The field mask to specify columns to display. Use a single "*" to get all fields. When both custom_columns and output_format are specified, output_format is ignored. |
| fieldSelector | string | — | Optional. A field selector to filter resources. |
| labelSelector | string | — | Optional. A label selector to filter resources. |
| name | string | — | Optional. The name of the resource to retrieve. If not specified, all resources of the given type are returned. |
| namespace | string | — | Optional. The namespace of the resource. If not specified, all namespaces are searched. |
| outputFormat | string | — | Optional. The output format. One of: (table, wide, yaml, json). If not specified, defaults to table. When both custom_columns and output_format are specified, output_format is ignored. |
| parent | string | yes | Required. The cluster, which owns this collection of resources. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| resourceType | string | yes | Required. The type of resource to retrieve. Kubernetes resource/kind name in singular form, lower case. e.g. "pod", "deployment", "service". |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during retrieval. |
| output | string | — | The output of the command in the requested format. It may contain resources in YAML or JSON format, or a table in plain text, or errors. |
No examples provided.
get_k8s_rollout_status ~140
Checks the current rollout status of a Kubernetes resource. This is similar to running `kubectl rollout status`.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name of the resource to check. |
| namespace | string | — | Optional. The namespace of the resource. If not specified, "default" is used for namespace-scoped resources. |
| parent | string | yes | Required. The cluster to check rollout status in. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| resourceType | string | yes | Required. The type of resource to check. e.g. "deployment", "daemonset", "statefulset". |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during rollout status check. |
| result | string | — | The result of the rollout status check. |
No examples provided.
get_k8s_version ~61
Retrieves Kubernetes client and server versions for a given cluster. This is similar to running `kubectl version`.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The cluster to get version information from, in the format `projects/*/locations/*/clusters/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during version retrieval. |
| serverVersion | string | — | The server version. |
No examples provided.
get_node_pool ~70
Gets the details of a specific node pool within a GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, cluster, node pool id) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during node pool retrieval. |
| nodePool | string | — | A string representing the NodePool object in JSON format. |
No examples provided.
get_operation ~57
Gets the details of a specific GKE operation.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, operation id) of the operation to get. Specified in the format `projects/*/locations/*/operations/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during the operation. |
| operation | string | — | JSON string of the GKE Operation object. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.
list_clusters ~184
Lists GKE clusters in a given project and location. Location can be a region, zone, or '-' for all locations.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent (project and location) where the clusters will be listed. Specified in the format `projects/*/locations/*`. Location "-" matches all zones and all regions. |
| readMask | string | — | Optional. The field mask to specify the fields to be returned in the response. Use a single "*" to get all fields. Default: clusters.autopilot,clusters.createTime,clusters.currentMasterVersion,cluste… |
| Name | Type | Req | Description |
|---|---|---|---|
| clusters | array | — | A string representing the ListClustersResponse object. |
| errors | array | — | Errors encountered during cluster listing. |
No examples provided.
list_k8s_api_resources ~69
Retrieves the available API groups and resources from a Kubernetes cluster. This is similar to running `kubectl api-resources`.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The cluster, which owns this collection of resource types. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during discovery. |
| groups | array | — | The list of API group discovery. |
No examples provided.
list_k8s_events ~164
Retrieves events from a Kubernetes cluster. This is similar to running `kubectl events`.
| Name | Type | Req | Description |
|---|---|---|---|
| allNamespaces | boolean | — | Optional. If true, retrieve events from all namespaces. |
| limit | string | — | Optional. The maximum number of events to return. If not specified, 500 is used. |
| name | string | — | Optional. The name of the resource to retrieve events for. |
| namespace | string | — | Optional. The namespace of the resource. If not specified and all_namespaces is false, "default" is used. |
| parent | string | yes | Required. The parent cluster. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| resourceType | string | — | Optional. The type of the resource to retrieve events for. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during events retrieval. |
| events | string | — | The events in string format. |
No examples provided.
list_node_pools ~62
Lists the node pools for a specific GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent (project, location, cluster name) where the node pools will be listed. Specified in the format `projects/*/locations/*/clusters/*`. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during node pool listing. |
| nodePools | array | — | A string representing the ListNodePoolsResponse object. |
No examples provided.
list_operations ~76
Lists GKE operations in a given project and location. Location can be a region, zone, or '-' for all locations.
| Name | Type | Req | Description |
|---|---|---|---|
| parent | string | yes | Required. The parent (project and location) where the operations will be listed. Specified in the format `projects/*/locations/*`. Location "-" matches all zones and all regions. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during operations listing. |
| operations | array | — | A list of JSON strings of GKE Operation objects. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.
patch_k8s_resource ~185
Patches a Kubernetes resource. This is similar to running `kubectl patch`.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name of the resource to patch. |
| namespace | string | — | Optional. The namespace of the resource. If not specified, "default" is used. |
| parent | string | yes | Required. The cluster to patch the resource in. Format: projects/{project}/locations/{location}/clusters/{cluster} |
| patch | string | yes | Required. The patch to apply in JSON format. |
| patchType | string | — | Optional. The patch strategy to apply. Valid values are "strategic", "merge", or "json". If not specified, "strategic" patch type will be used. |
| resourceType | string | yes | Required. The type of resource to patch. e.g. "pods", "deployments", "services". |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during patching. |
| result | string | — | The result of the patch operation. |
No examples provided.
update_cluster ~117
Updates a specific GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, cluster) of the cluster to update. Specified in the format `projects/*/locations/*/clusters/*`. |
| update | string | yes | Required. A description of the update represented as a string using JSON format. The full update request object can be found at https://cloud.google.com/container-engine/reference/rest/v1/projects.lo… |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during the operation. |
| operation | string | — | JSON string of the GKE Operation object. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.
update_node_pool ~108
Updates a specific node pool within a GKE cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Required. The name (project, location, cluster, node pool) of the node pool to update. Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. |
| update | string | yes | Required. A [node pool update request](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters.nodePools/update) represented as a string using JSON format. |
| Name | Type | Req | Description |
|---|---|---|---|
| errors | array | — | Errors encountered during the operation. |
| operation | string | — | JSON string of the GKE Operation object. See: https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.operations |
No examples provided.