Skip to main content
Glama

@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.

Parameter

Type

Required

Description

projectId

string

No

GCP project ID (defaults to env)

status

string

No

Filter: SUCCESS, FAILURE, WORKING, etc.

triggerId

string

No

Filter by trigger ID

branchName

string

No

Filter by branch

limit

number

No

Max results (default 10, max 100)

gcloud_get_build

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

Parameter

Type

Required

Description

buildId

string

Yes

Cloud Build build ID

projectId

string

No

GCP project ID

gcloud_get_build_logs

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

Parameter

Type

Required

Description

buildId

string

Yes

Cloud Build build ID

projectId

string

No

GCP project ID

stepName

string

No

Filter by step name

limit

number

No

Max lines (default 100)

tail

boolean

No

Return last N lines

gcloud_get_service

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

Parameter

Type

Required

Description

serviceName

string

Yes

Cloud Run service name

region

string

No

GCP region (defaults to env)

projectId

string

No

GCP project ID

gcloud_list_revisions

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

Parameter

Type

Required

Description

serviceName

string

Yes

Cloud Run service name

region

string

No

GCP region

projectId

string

No

GCP project ID

limit

number

No

Max revisions (default 10, max 50)

gcloud_list_services

List Cloud Run services in a region.

Parameter

Type

Required

Description

region

string

No

GCP region (defaults to env)

projectId

string

No

GCP project ID

gcloud_get_service_logs

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

Parameter

Type

Required

Description

serviceName

string

Yes

Cloud Run service name

region

string

No

GCP region

projectId

string

No

GCP project ID

severity

string

No

Min severity: DEBUG, INFO, WARNING, ERROR, CRITICAL

since

string

No

Time range: "1h", "30m", "2d" (default "1h")

revision

string

No

Filter by revision

limit

number

No

Max entries (default 50, max 500)

gcloud_list_triggers

List Cloud Build triggers in a project.

Parameter

Type

Required

Description

projectId

string

No

GCP project ID

gcloud_get_trigger

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

Parameter

Type

Required

Description

triggerId

string

Yes

Cloud Build trigger ID

projectId

string

No

GCP project ID

gcloud_list_jobs

List Cloud Run Jobs in a region.

Parameter

Type

Required

Description

region

string

No

GCP region (defaults to env)

projectId

string

No

GCP project ID

gcloud_get_job_execution

Get Cloud Run Job execution details or list recent executions.

Parameter

Type

Required

Description

jobName

string

Yes

Cloud Run Job name

executionName

string

No

Specific execution name (omit to list recent)

region

string

No

GCP region

projectId

string

No

GCP project ID

limit

number

No

Max executions to list (default 5, max 20)

gcloud_list_artifacts

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

Parameter

Type

Required

Description

repository

string

No

Repository name (omit to list repos)

region

string

No

GCP region

projectId

string

No

GCP project ID

limit

number

No

Max images (default 10, max 50)

gcloud_list_secrets

List Secret Manager secret names (NOT values).

Parameter

Type

Required

Description

projectId

string

No

GCP project ID

filter

string

No

Filter string (e.g. "name:remember-")

gcloud_run_trigger

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

Parameter

Type

Required

Description

triggerId

string

Yes

Cloud Build trigger ID

branchName

string

No

Branch to build from

tagName

string

No

Tag to build from

substitutions

object

No

Key-value substitution variables

projectId

string

No

GCP project ID

gcloud_deploy_service

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

Parameter

Type

Required

Description

serviceName

string

Yes

Cloud Run service name

image

string

Yes

Container image (e.g. "gcr.io/project/image:tag")

region

string

No

GCP region

projectId

string

No

GCP project ID

env

object

No

Environment variables to set (key-value)

memory

string

No

Memory limit (e.g. "512Mi")

cpu

string

No

CPU limit (e.g. "1")

minInstances

number

No

Min instances

maxInstances

number

No

Max instances

gcloud_set_traffic

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

Parameter

Type

Required

Description

serviceName

string

Yes

Cloud Run service name

traffic

array

Yes

Traffic entries: [{revision, percent}]. Use "LATEST" for latest. Must sum to 100.

region

string

No

GCP region

projectId

string

No

GCP project ID

Environment Variables

Variable

Required

Description

GOOGLE_CLOUD_PROJECT

Yes

Default GCP project ID

GOOGLE_CLOUD_REGION

No

Default Cloud Run region (default: us-central1)

LOG_LEVEL

No

Server log level: debug, info, warn, error

Development

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

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/prmichaelsen/gcloud-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server