mcpbeat

Google Cloud Storage Basics

google/google-cloud-storage-basics

>- Stores, retrieves, and manages data as objects in Cloud Storage (Google Cloud Storage, or GCS) buckets. Use when you need to interact with Cloud Storage — create or configure buckets, upload, download, stream, or transfer data, organize objects with folders, generate signed URLs, control access (IAM, ACLs, public access prevention), set storage classes and tiering (Standard, Nearline, Coldline, Archive), manage cost and lifecycle, protect data (versioning, encryption/CMEK, retention and Bucket Lock, object holds, soft delete), host static websites, trigger Pub/Sub notifications on object changes, mount buckets as a file system (gcsfuse), or optimize storage performance at any scale. Covers the gcloud storage / gsutil CLI, JSON and XML APIs, client libraries, Terraform, and Cloud Storage MCP servers. Don't use for block storage (Persistent Disk), data warehousing/analytics (BigQuery), or databases (Cloud SQL, Spanner, Bigtable, Firestore).

33k tokens
context cost
the whole folder, loaded on every use
11
files
instructions only
0
copies elsewhere
how many repositories repackaged it
15506
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/google/skills --skill google-cloud-storage-basics

What comes with it

123 878 bytes besides the instruction
references/cli-api-usage.md
references/client-library-usage.md
references/core-concepts.md
references/data-management.md
references/data-transfer.md
references/gcsfuse.md
references/high-performance-storage.md
references/iac-usage.md
references/mcp-usage.md
references/storage-intelligence.md

The instruction itself

4 sections, as written by the author

Google Cloud Storage Basics

Google Cloud Storage (GCS) is a managed service for storing data as objects at

any scale. You read and write whole objects rather than querying or updating

individual records in place. It stores immutable objects in buckets with strong

global consistency, offers multiple storage classes and location types to

balance cost, performance, and availability, and integrates with IAM for

fine-grained access control. GCS serves workloads ranging from website content

and backups to data lakes and high-throughput AI/ML training.

Attribution

Tag every Cloud Storage command you run or provide to the user while using this

skill, so usage can be attributed. The tag identifies only the skill and its

version; it carries no user data.

  • Prefix every gcloud invocation, whatever the subcommand, with the metrics

environment variables. Set them inline on each command; shell state may not

persist between commands:

    CLOUDSDK_METRICS_ENVIRONMENT="gcs-skills gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
    gcloud <command> [flags]

Do not use gcloud config set for this: it would persist beyond the current

task and mislabel unrelated usage.

  • On direct HTTP calls to the Cloud Storage APIs (for example with curl) or

HTTP requests to the Cloud Storage MCP server

(https://storage.googleapis.com/storage/mcp), set this exact User-Agent

header, verbatim — the collection pipeline parses the gcs-skills/<version>

and skill:<name> tokens, so any rewording breaks attribution:

    User-Agent: gcs-skills/1.0 (skill:google-cloud-storage-basics)
  • For client libraries, Terraform, and GCSFuse, use the user-agent options

shown in the corresponding references.

Quick Start

If a Cloud Storage MCP server is connected, prefer its structured tools (such as

create_bucket, list_objects, read_object, and upload_object) over the

CLI and API commands below — see MCP Usage. Fall back

to gcloud storage and the JSON API when no MCP server is available.

  • Enable the Cloud Storage API:
    CLOUDSDK_METRICS_ENVIRONMENT="gcs-skills gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
    gcloud services enable storage.googleapis.com --quiet
  • Create a Bucket:

Bucket names live in a single global namespace shared by all of Cloud

Storage — not scoped to your project or organization — so short or common

names are usually taken. If the location is omitted, the bucket defaults to

the US multi-region.

Using the gcloud CLI:

    CLOUDSDK_METRICS_ENVIRONMENT="gcs-skills gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
    gcloud storage buckets create gs://my-bucket --location=us-central1

Using the JSON API:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "User-Agent: gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
      -H "Content-Type: application/json" \
      -d '{"name": "my-bucket", "location": "US-CENTRAL1"}' \
      "https://storage.googleapis.com/storage/v1/b?project=$(gcloud config get-value project)"
  • Upload an Object:

Using the gcloud CLI:

    CLOUDSDK_METRICS_ENVIRONMENT="gcs-skills gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
    gcloud storage cp ./my-file.txt gs://my-bucket

Using the JSON API:

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "User-Agent: gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
      -H "Content-Type: text/plain" \
      --data-binary @my-file.txt \
      "https://storage.googleapis.com/upload/storage/v1/b/my-bucket/o?uploadType=media&name=my-file.txt"
  • Download an Object:

Using the gcloud CLI:

    CLOUDSDK_METRICS_ENVIRONMENT="gcs-skills gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
    gcloud storage cp gs://my-bucket/my-file.txt .

Using the JSON API:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "User-Agent: gcs-skills/1.0 (skill:google-cloud-storage-basics)" \
      "https://storage.googleapis.com/storage/v1/b/my-bucket/o/my-file.txt?alt=media"

Reference Directory

  • Core Concepts: Buckets, objects, folders,

prefixes, bucket location types, and storage classes.

  • CLI & API Usage: CRUD and list operations for

buckets and objects using gcloud storage and the JSON API, plus Pub/Sub

notifications for event-driven processing.

  • Client Libraries: Using Google Cloud

client libraries for Python, Java, Node.js, and Go, with pointers to all

other supported languages.

  • MCP Usage: Choosing between the Google-hosted

remote Cloud Storage MCP server and the local MCP Toolbox, setup for each,

their tool sets and limits, and securing remote MCP with Model Armor and IAM

deny policies.

  • Infrastructure as Code: Terraform examples for

buckets covering storage classes, location types, lifecycle, retention, and

encryption.

  • Data Transfer: Storage Transfer Service,

gcloud storage rsync, upload strategies for large files, and performance

guidelines and limits.

  • Data Management: IAM roles, authentication

(including signed URLs and HMAC), access control, network security,

automated security assessment, data protection, and pricing and cost

optimization (lifecycle rules, Autoclass).

  • Storage Intelligence: The subscription

for managing storage at scale — Storage Insights datasets (BigQuery metadata

and activity index), data insights with Gemini Cloud Assist, dashboards,

inventory reports, storage batch operations, bucket relocation, plus

configuration, trial, and pricing nuances.

  • High-Performance Storage: Rapid

Bucket, Rapid Cache (Anywhere Cache), and hierarchical namespace for AI/ML,

analytics, and other performance-critical workloads.

  • GCSFuse: Installing Cloud Storage FUSE, mounting

buckets, file operations, POSIX semantics and limitations (locking, writes,

renames, consistency), and caching.

How to use it

Copy the folder

Take google/google-cloud-storage-basics from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.