MCP Hub
Back to servers

gcloud-mcp

A Google Cloud MCP server that enables users to manage Cloud Build and Cloud Run resources. It allows for listing builds and services, as well as retrieving detailed logs and execution status.

glama
Updated
Mar 14, 2026

@prmichaelsen/gcloud-mcp

MCP server for Google Cloud — Cloud Build, Cloud Run, Artifact Registry, and Secret Manager. 17 tools for listing, inspecting, deploying, and managing GCP resources.

Installation

npm install @prmichaelsen/gcloud-mcp

Prerequisites

  • Node.js 20+
  • GCP Application Default Credentials: gcloud auth application-default login
  • Required IAM roles: roles/cloudbuild.builds.viewer, roles/logging.viewer, roles/run.viewer, roles/artifactregistry.reader, roles/secretmanager.viewer

Usage

Claude Code

claude mcp add -e GOOGLE_CLOUD_PROJECT=your-project-id -- gcloud-mcp node /path/to/dist/server.js

Or via npx (after npm publish):

claude mcp add -e GOOGLE_CLOUD_PROJECT=your-project-id -- gcloud-mcp npx -y @prmichaelsen/gcloud-mcp

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "gcloud-mcp": {
      "command": "npx",
      "args": ["-y", "@prmichaelsen/gcloud-mcp"],
      "env": {
        "GOOGLE_CLOUD_PROJECT": "your-project-id"
      }
    }
  }
}

Multi-Tenant (mcp-auth)

import { wrapServer, JWTAuthProvider } from '@prmichaelsen/mcp-auth';
import { createServer } from '@prmichaelsen/gcloud-mcp/factory';

const wrapped = wrapServer({
  serverFactory: createServer,
  authProvider: new JWTAuthProvider({
    jwtSecret: process.env.JWT_SECRET!,
  }),
  resourceType: 'gcloud',
  transport: { type: 'sse', port: 3000 },
});

await wrapped.start();

Tools

gcloud_whoami

Returns current GCP project, authenticated identity, and available permissions.

gcloud_list_builds

List Cloud Build builds with optional filters for status, trigger, and branch.

ParameterTypeRequiredDescription
projectIdstringNoGCP project ID (defaults to env)
statusstringNoFilter: SUCCESS, FAILURE, WORKING, etc.
triggerIdstringNoFilter by trigger ID
branchNamestringNoFilter by branch
limitnumberNoMax results (default 10, max 100)

gcloud_get_build

Get full build details including steps, substitutions, and per-step timing.

ParameterTypeRequiredDescription
buildIdstringYesCloud Build build ID
projectIdstringNoGCP project ID

gcloud_get_build_logs

Fetch build logs from Cloud Logging with step filtering and line limits.

ParameterTypeRequiredDescription
buildIdstringYesCloud Build build ID
projectIdstringNoGCP project ID
stepNamestringNoFilter by step name
limitnumberNoMax lines (default 100)
tailbooleanNoReturn last N lines

gcloud_get_service

Get full Cloud Run service details including URL, env vars, resource limits, scaling, and traffic splits.

ParameterTypeRequiredDescription
serviceNamestringYesCloud Run service name
regionstringNoGCP region (defaults to env)
projectIdstringNoGCP project ID

gcloud_list_revisions

List Cloud Run revisions for a service. Shows deployment history with image tags and creation times.

ParameterTypeRequiredDescription
serviceNamestringYesCloud Run service name
regionstringNoGCP region
projectIdstringNoGCP project ID
limitnumberNoMax revisions (default 10, max 50)

gcloud_list_services

List Cloud Run services in a region.

ParameterTypeRequiredDescription
regionstringNoGCP region (defaults to env)
projectIdstringNoGCP project ID

gcloud_get_service_logs

Fetch Cloud Run service logs with severity, time, and revision filters.

ParameterTypeRequiredDescription
serviceNamestringYesCloud Run service name
regionstringNoGCP region
projectIdstringNoGCP project ID
severitystringNoMin severity: DEBUG, INFO, WARNING, ERROR, CRITICAL
sincestringNoTime range: "1h", "30m", "2d" (default "1h")
revisionstringNoFilter by revision
limitnumberNoMax entries (default 50, max 500)

gcloud_list_triggers

List Cloud Build triggers in a project.

ParameterTypeRequiredDescription
projectIdstringNoGCP project ID

gcloud_get_trigger

Get full Cloud Build trigger configuration including repo, branch filter, build steps, and substitutions.

ParameterTypeRequiredDescription
triggerIdstringYesCloud Build trigger ID
projectIdstringNoGCP project ID

gcloud_list_jobs

List Cloud Run Jobs in a region.

ParameterTypeRequiredDescription
regionstringNoGCP region (defaults to env)
projectIdstringNoGCP project ID

gcloud_get_job_execution

Get Cloud Run Job execution details or list recent executions.

ParameterTypeRequiredDescription
jobNamestringYesCloud Run Job name
executionNamestringNoSpecific execution name (omit to list recent)
regionstringNoGCP region
projectIdstringNoGCP project ID
limitnumberNoMax executions to list (default 5, max 20)

gcloud_list_artifacts

List Docker images in an Artifact Registry repository, or list repositories.

ParameterTypeRequiredDescription
repositorystringNoRepository name (omit to list repos)
regionstringNoGCP region
projectIdstringNoGCP project ID
limitnumberNoMax images (default 10, max 50)

gcloud_list_secrets

List Secret Manager secret names (NOT values).

ParameterTypeRequiredDescription
projectIdstringNoGCP project ID
filterstringNoFilter string (e.g. "name:remember-")

gcloud_run_trigger

Manually trigger a Cloud Build. Returns the build ID of the triggered build.

ParameterTypeRequiredDescription
triggerIdstringYesCloud Build trigger ID
branchNamestringNoBranch to build from
tagNamestringNoTag to build from
substitutionsobjectNoKey-value substitution variables
projectIdstringNoGCP project ID

gcloud_deploy_service

Deploy a new revision to a Cloud Run service by updating the container image.

ParameterTypeRequiredDescription
serviceNamestringYesCloud Run service name
imagestringYesContainer image (e.g. "gcr.io/project/image:tag")
regionstringNoGCP region
projectIdstringNoGCP project ID
envobjectNoEnvironment variables to set (key-value)
memorystringNoMemory limit (e.g. "512Mi")
cpustringNoCPU limit (e.g. "1")
minInstancesnumberNoMin instances
maxInstancesnumberNoMax instances

gcloud_set_traffic

Set traffic splitting between Cloud Run revisions for canary deployments and rollbacks.

ParameterTypeRequiredDescription
serviceNamestringYesCloud Run service name
trafficarrayYesTraffic entries: [{revision, percent}]. Use "LATEST" for latest. Must sum to 100.
regionstringNoGCP region
projectIdstringNoGCP project ID

Environment Variables

VariableRequiredDescription
GOOGLE_CLOUD_PROJECTYesDefault GCP project ID
GOOGLE_CLOUD_REGIONNoDefault Cloud Run region (default: us-central1)
LOG_LEVELNoServer log level: debug, info, warn, error

Development

npm install
npm run build
npm run dev      # watch mode
npm run typecheck

License

MIT

Reviews

No reviews yet

Sign in to write a review