# gcs

Интеграция с Google Cloud Storage для работы с бакетами и файлами. Позволяет передавать данные на диск напрямую, не засоряя контекст модели.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 81
- Автор: pulsemcp
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/pulsemcp/mcp-servers/tree/HEAD/experimental/gcs
- Обновлён: 2026-10-09
- HTML: https://affpapa.org/nevibecode/mcp/gcs

## Что делает

Сервер связывает ИИ-ассистента с хранилищем Google Cloud Storage. Он умеет запрашивать списки бакетов, считывать метаданные, перемещать объекты и удалять устаревшие файлы. Доступ разграничивается через группы `readonly`, `readwrite` и `delete`, которые задаются переменной `GCS_ENABLED_TOOLGROUPS`. При необходимости работу можно запереть внутри единственного бакета с помощью `GCS_BUCKET`.

В отличие от базового чтения в виде текста, сервер поддерживает потоковую передачу байтов прямо на диск через утилиты `download_object`, `put_object_from_path` и пакетную выгрузку папок. Это позволяет скачивать архивы и медиафайлы без потерь, а также загружать тяжёлые каталоги в обход контекстного окна.

Без предварительно созданного ключа сервисного аккаунта или настроенного ADC сервер не сможет пройти аутентификацию в Google Cloud.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `GCS_PROJECT_ID`, `GCS_SERVICE_ACCOUNT_KEY_FILE`, `GCS_SERVICE_ACCOUNT_KEY_JSON`, `GCS_BUCKET`, `GCS_ENABLED_TOOLGROUPS`, `GCS_ENABLED_TOOLS`, `GCS_DISABLED_TOOLS`, `SKIP_HEALTH_CHECKS` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env GCS_PROJECT_ID=<GCS_PROJECT_ID> --env GCS_SERVICE_ACCOUNT_KEY_FILE=<GCS_SERVICE_ACCOUNT_KEY_FILE> --env GCS_SERVICE_ACCOUNT_KEY_JSON=<GCS_SERVICE_ACCOUNT_KEY_JSON> --env GCS_BUCKET=<GCS_BUCKET> --env GCS_ENABLED_TOOLGROUPS=<GCS_ENABLED_TOOLGROUPS> --transport stdio gcs -- npx -y gcs-google-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера

### Codex

**Командой платформы**
```bash
codex mcp add gcs --env GCS_PROJECT_ID=<GCS_PROJECT_ID> --env GCS_SERVICE_ACCOUNT_KEY_FILE=<GCS_SERVICE_ACCOUNT_KEY_FILE> --env GCS_SERVICE_ACCOUNT_KEY_JSON=<GCS_SERVICE_ACCOUNT_KEY_JSON> --env GCS_BUCKET=<GCS_BUCKET> --env GCS_ENABLED_TOOLGROUPS=<GCS_ENABLED_TOOLGROUPS> -- npx -y gcs-google-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "gcs": {
            "command": "npx",
            "args": [
                "-y",
                "gcs-google-mcp-server"
            ],
            "env": {
                "GCS_PROJECT_ID": "<GCS_PROJECT_ID>",
                "GCS_SERVICE_ACCOUNT_KEY_FILE": "<GCS_SERVICE_ACCOUNT_KEY_FILE>",
                "GCS_SERVICE_ACCOUNT_KEY_JSON": "<GCS_SERVICE_ACCOUNT_KEY_JSON>",
                "GCS_BUCKET": "<GCS_BUCKET>",
                "GCS_ENABLED_TOOLGROUPS": "<GCS_ENABLED_TOOLGROUPS>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "gcs": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "gcs-google-mcp-server"
            ],
            "env": {
                "GCS_PROJECT_ID": "<GCS_PROJECT_ID>",
                "GCS_SERVICE_ACCOUNT_KEY_FILE": "<GCS_SERVICE_ACCOUNT_KEY_FILE>",
                "GCS_SERVICE_ACCOUNT_KEY_JSON": "<GCS_SERVICE_ACCOUNT_KEY_JSON>",
                "GCS_BUCKET": "<GCS_BUCKET>",
                "GCS_ENABLED_TOOLGROUPS": "<GCS_ENABLED_TOOLGROUPS>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e GCS_PROJECT_ID=<GCS_PROJECT_ID> -e GCS_SERVICE_ACCOUNT_KEY_FILE=<GCS_SERVICE_ACCOUNT_KEY_FILE> -e GCS_SERVICE_ACCOUNT_KEY_JSON=<GCS_SERVICE_ACCOUNT_KEY_JSON> -e GCS_BUCKET=<GCS_BUCKET> -e GCS_ENABLED_TOOLGROUPS=<GCS_ENABLED_TOOLGROUPS> gcs npx -y gcs-google-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера

## Когда брать
- скачать дерево объектов из бакета GCS на локальный диск
- загрузить бинарные файлы в облако без переполнения контекста модели
- заблокировать опасные операции удаления через переменную окружения
- скопировать файлы между бакетами Google Cloud

## Примеры запросов агенту
- Покажи список всех доступных бакетов в текущем проекте Google Cloud.
- Загрузи локальный архив `archive.tar.gz` в бакет `backups` через потоковую отправку.
- Выгрузи все файлы с префиксом `reports/2024/` в локальную папку на диске.

## Похожие
- [google-cloud-storage-basics](https://affpapa.org/nevibecode/skills/google-cloud-storage-basics.md) — скилл · 5516 установок
- [google-cloud-storage-fuse](https://affpapa.org/nevibecode/skills/google-cloud-storage-fuse.md) — скилл · 3900 установок
- [c-files](https://affpapa.org/nevibecode/skills/c-files.md) — скилл · ★ 173
- [backup-recovery](https://affpapa.org/nevibecode/skills/backup-recovery.md) — скилл · 406 установок
- [gcp-expert](https://affpapa.org/nevibecode/skills/gcp-expert.md) — скилл · 547 установок
- [mcp-neo4j-aura-manager](https://affpapa.org/nevibecode/mcp/mcp-neo4j-aura-manager.md) — MCP-сервер · ★ 989

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
