# google-docs

Даёт агенту доступ к Google Документам: читать, создавать, править и экспортировать файлы, если у вас есть OAuth2 или сервисный аккаунт Workspace.

- 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/google-docs
- Обновлён: 2026-10-09
- HTML: https://affpapa.org/nevibecode/mcp/google-docs

## Что делает

Сервер работает с Google Документами через API Docs и Drive. Агенту доступны чтение тела документа или его оглавления по ID либо по ссылке, создание нового файла с начальным текстом, добавление текста в конец, вставка по индексу, замена всех вхождений строки и произвольные запросы `documents.batchUpdate` для правки структуры. Ещё он умеет отправлять документ в корзину Drive или удалять насовсем, экспортировать в Markdown, HTML, PDF, DOCX и другие форматы.

Авторизация двух видов. Личный аккаунт `@gmail.com` подключается через OAuth2: в Google Cloud Console включаются Google Docs API и Google Drive API, создаются креды типа Desktop app, затем refresh token добывается командой `npx google-docs-workspace-mcp-server oauth-setup <client_id> <client_secret>`. Аккаунт Google Workspace идёт через сервисный аккаунт с доменной делегацией, а в Admin Console ему выдаются scopes на `documents` и `drive`.

Отдельные группы инструментов отключаются переменной `GOOGLE_DOCS_ENABLED_TOOLGROUPS` — так доступ сужается до нужного набора, включая шаринг документов. Без опубликованного OAuth consent screen refresh token живёт семь дней, поэтому настройку придётся повторять; публикация снимает эту проблему и полной верификации Google не требует.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `GOOGLE_DOCS_OAUTH_CLIENT_ID`, `GOOGLE_DOCS_OAUTH_CLIENT_SECRET`, `GOOGLE_DOCS_OAUTH_REFRESH_TOKEN`, `GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL`, `GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY`, `GOOGLE_DOCS_IMPERSONATE_EMAIL`, `GOOGLE_DOCS_ENABLED_TOOLGROUPS` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.
- Работает с: Google Workspace

## Установка

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

**Командой платформы**
```bash
claude mcp add --env GOOGLE_DOCS_OAUTH_CLIENT_ID=<GOOGLE_DOCS_OAUTH_CLIENT_ID> --env GOOGLE_DOCS_OAUTH_CLIENT_SECRET=<GOOGLE_DOCS_OAUTH_CLIENT_SECRET> --env GOOGLE_DOCS_OAUTH_REFRESH_TOKEN=<GOOGLE_DOCS_OAUTH_REFRESH_TOKEN> --env GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL=<GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL> --env GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY=<GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY> --transport stdio google-docs -- npx -y google-docs-workspace-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Codex

**Командой платформы**
```bash
codex mcp add google-docs --env GOOGLE_DOCS_OAUTH_CLIENT_ID=<GOOGLE_DOCS_OAUTH_CLIENT_ID> --env GOOGLE_DOCS_OAUTH_CLIENT_SECRET=<GOOGLE_DOCS_OAUTH_CLIENT_SECRET> --env GOOGLE_DOCS_OAUTH_REFRESH_TOKEN=<GOOGLE_DOCS_OAUTH_REFRESH_TOKEN> --env GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL=<GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL> --env GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY=<GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY> -- npx -y google-docs-workspace-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "google-docs": {
            "command": "npx",
            "args": [
                "-y",
                "google-docs-workspace-mcp-server"
            ],
            "env": {
                "GOOGLE_DOCS_OAUTH_CLIENT_ID": "<GOOGLE_DOCS_OAUTH_CLIENT_ID>",
                "GOOGLE_DOCS_OAUTH_CLIENT_SECRET": "<GOOGLE_DOCS_OAUTH_CLIENT_SECRET>",
                "GOOGLE_DOCS_OAUTH_REFRESH_TOKEN": "<GOOGLE_DOCS_OAUTH_REFRESH_TOKEN>",
                "GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL": "<GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL>",
                "GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY": "<GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "google-docs": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "google-docs-workspace-mcp-server"
            ],
            "env": {
                "GOOGLE_DOCS_OAUTH_CLIENT_ID": "<GOOGLE_DOCS_OAUTH_CLIENT_ID>",
                "GOOGLE_DOCS_OAUTH_CLIENT_SECRET": "<GOOGLE_DOCS_OAUTH_CLIENT_SECRET>",
                "GOOGLE_DOCS_OAUTH_REFRESH_TOKEN": "<GOOGLE_DOCS_OAUTH_REFRESH_TOKEN>",
                "GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL": "<GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL>",
                "GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY": "<GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e GOOGLE_DOCS_OAUTH_CLIENT_ID=<GOOGLE_DOCS_OAUTH_CLIENT_ID> -e GOOGLE_DOCS_OAUTH_CLIENT_SECRET=<GOOGLE_DOCS_OAUTH_CLIENT_SECRET> -e GOOGLE_DOCS_OAUTH_REFRESH_TOKEN=<GOOGLE_DOCS_OAUTH_REFRESH_TOKEN> -e GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL=<GOOGLE_DOCS_SERVICE_ACCOUNT_CLIENT_EMAIL> -e GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY=<GOOGLE_DOCS_SERVICE_ACCOUNT_PRIVATE_KEY> google-docs npx -y google-docs-workspace-mcp-server
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

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

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