Gcs MCP server
MCP server for Google Cloud Storage with fine-grained tool access control.
80 stars
Reviews
Write oneNobody has reviewed Gcs yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Gcs tools (13, 6 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
copy_objectCopy an object within GCS (same bucket or across buckets). Copies an object from one location to another. Can be used to rename objects or move them between buckets. Example response: { "success": true, "message": "Object copied from gs://source-bucket/file.txt to gs://dest-bucket/file.txt", "etag": "\"abc123\"", "generation": "1234567890" } Use cases: - Create backups of files - Move files betwee
create_bucketwrite actionCreate a new GCS bucket. Creates an empty bucket with the specified name in the given location. Example response: { "success": true, "message": "Bucket created: my-new-bucket", "bucket": "my-new-bucket" } Bucket naming rules: - Must be globally unique across all Google Cloud projects - 3-63 characters long - Only lowercase letters, numbers, hyphens, underscores, and dots - Must start and end with
delete_bucketwrite actionDelete a GCS bucket. Permanently removes the specified bucket. The bucket must be empty before deletion. Example response: { "success": true, "message": "Bucket deleted: my-old-bucket" } Use cases: - Clean up unused buckets - Remove test/temporary buckets - Decommission old storage Note: The bucket must be completely empty (no objects) before it can be deleted.
delete_objectwrite actionDelete an object from GCS. Permanently removes the specified object from the bucket. Example response: { "success": true, "message": "Object deleted: gs://my-bucket/path/to/file.txt" } Use cases: - Remove outdated files - Clean up temporary data - Delete processed files - Remove incorrect uploads Note: This operation is irreversible. For versioned buckets, this creates a delete marker.
download_objectDownload a single object to a local file path, writing raw bytes (binary-safe). Unlike get_object (which returns content inline as UTF-8 text and is lossy for binary or large files), this tool streams the object to disk and returns the local path. Example response: { "bucket": "my-bucket", "key": "exports/archive.tar.gz", "localPath": "/tmp/gcs-download-my-bucket-1700000000000/exports/archive.tar.
download_prefixRecursively download every object under a prefix to a local directory, preserving the key path structure as subdirectories. Unlike get_object (which returns a single object inline as UTF-8 text), this tool streams raw bytes to disk and is binary-safe. It is the right tool for bulk-fetching a sub-prefix so you can run local data-wrangling over the files. Returns a manifest: { "destinationDir": "/tm
get_objectGet the contents of an object from GCS. Returns the object content as text along with metadata. Example response: { "content": "{\"name\": \"example\", \"value\": 123}", "contentType": "application/json", "contentLength": 35, "lastModified": "2024-03-01T10:00:00Z", "etag": "\"abc123\"", "metadata": {"custom-key": "custom-value"} } Use cases: - Read configuration files - Retrieve JSON data - Downlo
head_bucketCheck if a GCS bucket exists and is accessible. Returns whether the bucket exists and the caller has permission to access it. Example response: { "exists": true, "bucket": "my-bucket" } Use cases: - Verify bucket exists before operations - Check bucket accessibility - Validate bucket names
list_bucketsList all GCS buckets in the Google Cloud project. Returns a list of bucket names and their creation dates. Example response: { "buckets": [ {"name": "my-app-data", "creationDate": "2024-01-15T10:30:00Z"}, {"name": "logs-archive", "creationDate": "2024-02-20T14:45:00Z"} ] } Use cases: - Discover available buckets in the project - Audit bucket inventory - Find bucket names for subsequent operations
list_objectsList objects in a GCS bucket with optional prefix filtering and pagination. Example response: { "objects": [ {"key": "data/file1.json", "size": 1234, "lastModified": "2024-03-01T10:00:00Z"}, {"key": "data/file2.json", "size": 5678, "lastModified": "2024-03-02T11:00:00Z"} ], "commonPrefixes": ["data/subdir/"], "isTruncated": false } Use cases: - Browse bucket contents - Find files matching a prefix
put_objectwrite actionUpload or update an object in GCS. Creates a new object or overwrites an existing one with the provided content. Example response: { "etag": "\"abc123def456\"", "generation": "1234567890" } Use cases: - Store configuration files - Upload JSON data - Create text files - Save generated content Note: This tool handles text content. For binary files, use base64 encoding or a different approach.
put_object_from_pathwrite actionUpload a single local file to GCS by streaming it directly from disk (binary-safe). Unlike put_object (which takes the object content inline as a string argument — routing every byte through the model context and requiring base64 for binary data), this tool reads from a local filesystem path and streams the bytes to GCS server-side. It is the right tool for uploading images, archives, or any large
upload_prefixwrite actionRecursively upload every file under a local directory to GCS, preserving the directory structure as key paths beneath a destination prefix. Unlike put_object (which takes content inline as a string and routes every byte through the model context), this tool streams each file directly from disk to GCS server-side. It is the right tool for bulk-uploading many files or folders — including binary file
Public scan report
scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it
- Code scan48 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 27 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
How Gcs compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 85/100
- higher than 70% of 48,243 servers
- Tools
- 13
- the typical server has 7
- Tools that change things
- 46%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 80
- more than 95% of 28,706 servers
What its tools let an agent do: 7 read · 2 create · 2 change · 2 delete
Install Gcs in Claude Code, Cursor or VS Code
Runs npx -y gcs-google-mcp-server on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add gcs -- npx -y gcs-google-mcp-server
What the publisher says
From the Gcs repository's README, as published. We do not edit it. Read it on GitHub
PulseMCP's MCP Servers
We build reliable servers thoughtfully designed for MCP Client-powered workflows.
Design principles
You can have confidence that any Pulse-branded MCP server was built with these north stars in mind:
- Purpose-built. LLM-powered MCP clients offer uniquely new user interaction patterns that necessitate a different layer of abstraction than the REST API's from a pre-AI era. We thoughtfully scope drawing lines like building a new server, versus incorporating a new feature in another server. Or deciding where one slew of REST API endpoints might be better packaged as a single Tool call. And more.
- Easy set up. Many MCP servers die before ever getting a chance to be used. We offer guides and a frustration-free experience to get going with our MCP servers inside your favorite MCP clients.
- Time savings. By minimizing the number of tool chain steps or conversational turns you need to accomplish a task, our MCP servers will save you (and your agents) time waiting for a task to be completed.
- Inference cost savings. By minimizing the number of tokens you need to consume to a accomplish a task, our MCP servers will save you on your LLM inference bills.
- Reliability. You should have confidence that you can deploy our servers in a production application serving mass market consumers or business clients.
- Future-proof. We sit on the bleeding edge of the MCP specification, working to push the ecosystem forward. As such, you can be sure that if you commit to baking our server into your workflow, it will self-improve over time to take advantage of the latest and greatest MCP features.
Servers Available
Productionized Servers
These are PulseMCP-branded servers that we intend to maintain indefinitely as our own offerings.
The MCP Registry column controls whether the server is published to the official MCP Registry (com.pulsemcp/) by the publish-mcp-registry.yml workflow.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Gcs: common questions
- Is Gcs MCP server safe?
- Yes, by our scan: it is graded A (85/100). Read the Gcs safety report
- How do I install Gcs?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Gcs need an API key?
- Yes. The registry entry asks for
GCS_SERVICE_ACCOUNT_KEY_FILE,GCS_SERVICE_ACCOUNT_KEY_JSON. - Is Gcs maintained?
- The last commit was 66 days ago (2026-08-30). The latest release is v0.1.14.
- What can I use instead of Gcs?
- Servers from other publishers that do the same job: Mobilerun MCP server.
- How does Gcs compare with other MCP servers?
- safety score 85/100 (higher than 70% of 48,243 servers); tools 13 (the typical server has 7); tools that change things 46% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Gcs
Same job from other publishers: the closest match first, then the best rated.
- MobilerunLet AI agents control Android and iOS devices on Mobilerun Cloud: screen, input, apps, workflows.not reviewedEstablishedA