gcs — MCP-сервер для Claude Code: что делает и как установить
Интеграция с Google Cloud Storage для работы с бакетами и файлами. Позволяет передавать данные на диск напрямую, не засоряя контекст модели.
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Что делает gcs
Сервер связывает ИИ-ассистента с хранилищем Google Cloud Storage. Он умеет запрашивать списки бакетов, считывать метаданные, перемещать объекты и удалять устаревшие файлы. Доступ разграничивается через группы readonly, readwrite и delete, которые задаются переменной GCS_ENABLED_TOOLGROUPS. При необходимости работу можно запереть внутри единственного бакета с помощью GCS_BUCKET.
В отличие от базового чтения в виде текста, сервер поддерживает потоковую передачу байтов прямо на диск через утилиты download_object, put_object_from_path и пакетную выгрузку папок. Это позволяет скачивать архивы и медиафайлы без потерь, а также загружать тяжёлые каталоги в обход контекстного окна.
Без предварительно созданного ключа сервисного аккаунта или настроенного ADC сервер не сможет пройти аутентификацию в Google Cloud.
Какие задачи решает
- скачать дерево объектов из бакета GCS на локальный диск
- загрузить бинарные файлы в облако без переполнения контекста модели
- заблокировать опасные операции удаления через переменную окружения
- скопировать файлы между бакетами Google Cloud
Примеры запросов агенту
- Покажи список всех доступных бакетов в текущем проекте Google Cloud.
- Загрузи локальный архив
archive.tar.gzв бакетbackupsчерез потоковую отправку. - Выгрузи все файлы с префиксом
reports/2024/в локальную папку на диске.
Как установить gcs
Командой платформы
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 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 сервера
Файл настроек
{
"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 сервера
Файл настроек
{
"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 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 сервера
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о gcs
Как установить gcs в Claude Code?
Выполните команду `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`.
Чем потоковая передача файлов отличается от стандартного чтения?
Обычные инструменты передают содержимое объекта строкой через контекст модели, искажая бинарные данные. Потоковые команды вроде download_prefix сохраняют сырые байты сразу на диск, экономя лимиты токенов.
Как отключить возможность удаления файлов?
Задайте переменной окружения значение GCS_ENABLED_TOOLGROUPS="readonly,readwrite". В таком режиме операции удаления объектов и бакетов станут недоступны агенту.