Skip to main content
MCP server CX Codex

remote-filesystem — Claude Code MCP server for GCS files

An MCP server that lets your agent work with a Google Cloud Storage bucket: upload, download, list, edit properties and delete files.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env GCS_BUCKET=<GCS_BUCKET> --env GCS_PROJECT_ID=<GCS_PROJECT_ID> --env GCS_CLIENT_EMAIL=<GCS_CLIENT_EMAIL> --env GCS_PRIVATE_KEY=<GCS_PRIVATE_KEY> --env GOOGLE_APPLICATION_CREDENTIALS=<GOOGLE_APPLICATION_CREDENTIALS> --transport stdio remote-filesystem -- npx -y remote-filesystem-mcp-server
Open on GitHub

What remote-filesystem does

Five tools come with the server: upload, download, list_files, modify and delete_file. Uploads take a file://... path or base64 data, downloads return text or base64 for binaries, and private objects can be handed out as signed URLs. Listing accepts a prefix filter and a result cap.

Access is fenced in two ways. GCS_ROOT_PATH pins the server to one prefix inside the bucket. Setting ENABLED_TOOLGROUPS=readonly strips everything except download and list_files, which is what you want when the agent should only look. Files stay private unless you flip GCS_MAKE_PUBLIC or pass makePublic on a single call.

Only GCS_BUCKET is required. Pick one auth route: inline credentials with GCS_CLIENT_EMAIL and GCS_PRIVATE_KEY, a key file via GOOGLE_APPLICATION_CREDENTIALS, or ADC after gcloud auth application-default login. No working credentials means no bucket. Google Cloud Storage is the only provider today; S3 and Cloudflare R2 are listed as future work.

What it helps with

  • push a screenshot to the bucket and get a public link
  • pull a binary object back as base64
  • browse a bucket folder with a prefix filter
  • change an object's content type and metadata
  • drop a temp file from cloud storage inside the agent session

Example prompts for the agent

  • Upload screenshots/pr-123.png to the bucket and make it public
  • List files under uploads/, cap at 50
  • Download reports/doc.pdf from GCS as base64

How to install remote-filesystem

Platform CLI

claude mcp add --env GCS_BUCKET=<GCS_BUCKET> --env GCS_PROJECT_ID=<GCS_PROJECT_ID> --env GCS_CLIENT_EMAIL=<GCS_CLIENT_EMAIL> --env GCS_PRIVATE_KEY=<GCS_PRIVATE_KEY> --env GOOGLE_APPLICATION_CREDENTIALS=<GOOGLE_APPLICATION_CREDENTIALS> --transport stdio remote-filesystem -- npx -y remote-filesystem-mcp-server

Replace <…> with your own values. 3 more environment variables are in the server README

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about remote-filesystem

How do I install remote-filesystem in Claude Code?

Run claude mcp add remote-filesystem -e GCS_BUCKET=<GCS_BUCKET> -e GCS_PRIVATE_KEY=<GCS_PRIVATE_KEY> -- npx -y remote-filesystem-mcp-server. Or register it with the full variable set: `claude mcp add --env GCS_BUCKET=<GCS_BUCKET> --env GCS_PROJECT_ID=<GCS_PROJECT_ID> --env GCS_CLIENT_EMAIL=<GCS_CLIENT_EMAIL> --env GCS_PRIVATE_KEY=<GCS_PRIVATE_KEY> --env GOOGLE_APPLICATION_CREDENTIALS=<GOOGLE_APPLICATION_CREDENTIALS> --transport stdio remote-filesystem -- npx -y remote-filesystem-mcp-server`.

What does remote-filesystem do?

It exposes file operations on a Google Cloud Storage bucket to your agent: upload, download, listing, property changes and deletion. You can narrow it to read-only or lock it to a root prefix.

Which variables does it need?

GCS_BUCKET is the only required one. For auth, choose inline credentials (GCS_CLIENT_EMAIL, GCS_PRIVATE_KEY), a key file through GOOGLE_APPLICATION_CREDENTIALS, or ADC.

Similar MCP servers

Everything for Cloud: AWS, Azure, GCP →

From the same set9

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor