# Примеры использования Google Sheets MCP сервера
## 🎯 Получение ID таблицы
Прежде чем использовать примеры, найди ID своей таблицы:
```
URL: https://docs.google.com/spreadsheets/d/1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P/edit
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ID = 1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
```
Замени в примерах ниже `SPREADSHEET_ID` на свой реальный ID.
---
## 📖 Пример 1: Чтение данных
### Сценарий
Ты хочешь чтобы Claude прочитал данные из твоей таблицы.
### Команда для Claude
```
Прочитай данные из моей Google Sheets таблицы с ID:
1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
Диапазон: Sheet1!A1:D10
После этого:
- Скажи мне сколько строк данных
- Какие есть колонки
- Есть ли пустые ячейки
```
### Что происходит за сценами
Claude использует инструмент `read_sheet`:
```
Инструмент: read_sheet
Параметры:
- spreadsheet_id: "1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P"
- range: "Sheet1!A1:D10"
Результат:
{
"success": true,
"data": [
["Name", "Age", "City", "Salary"],
["John", "30", "NYC", "50000"],
["Jane", "28", "LA", "55000"],
...
],
"rowCount": 10,
"columnCount": 4
}
```
---
## 🖊️ Пример 2: Запись данных в таблицу
### Сценарий
Claude анализирует данные и пишет результаты в таблицу.
### Команда для Claude
```
Напиши результаты анализа в мою Google Sheets таблицу:
ID таблицы: 1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
Диапазон: Sheet1!F1
Данные которые нужно написать:
- Заголовок в F1: "Analysis Result"
- F2: "Average Age: 29"
- F3: "Total Salary: $105,000"
- F4: "Most common city: NYC"
```
### Что происходит
Claude использует инструмент `write_sheet`:
```
Инструмент: write_sheet
Параметры:
- spreadsheet_id: "1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P"
- range: "Sheet1!F1"
- values: [
["Analysis Result"],
["Average Age: 29"],
["Total Salary: $105,000"],
["Most common city: NYC"]
]
Результат:
{
"success": true,
"updatedRows": 4,
"updatedColumns": 1,
"updatedCells": 4
}
```
---
## ➕ Пример 3: Добавление новой строки (append)
### Сценарий
Твой GAS скрипт выполнился, и нужно добавить результат в конец таблицы.
### Команда для Claude
```
Добавь новую строку в мою Google Sheets таблицу:
ID таблицы: 1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
Диапазон: Sheet1!A:A (добавить в конец)
Новые данные:
["2025-01-20", "Script executed", "Success", "Processed 150 rows"]
```
### Что происходит
Claude использует инструмент `append_sheet`:
```
Инструмент: append_sheet
Параметры:
- spreadsheet_id: "1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P"
- range: "Sheet1!A:A"
- values: [
["2025-01-20", "Script executed", "Success", "Processed 150 rows"]
]
Результат:
{
"success": true,
"updatedRows": 1,
"updatedColumns": 4,
"updatedCells": 4
}
```
---
## 🔍 Пример 4: Получение информации о таблице
### Сценарий
Нужно узнать какие листы есть в таблице и их размеры.
### Команда для Claude
```
Дай мне информацию о моей Google Sheets таблице:
ID: 1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
Покажи:
- Названия всех листов
- Размер каждого листа
- ID каждого листа
```
### Результат
```
Инструмент: get_metadata
Результат:
{
"success": true,
"spreadsheetId": "1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P",
"title": "My Data Sheet",
"sheets": [
{
"title": "Logs",
"sheetId": 0,
"gridProperties": {
"rowCount": 1000,
"columnCount": 6
}
},
{
"title": "Results",
"sheetId": 123456,
"gridProperties": {
"rowCount": 500,
"columnCount": 4
}
},
{
"title": "Analysis",
"sheetId": 234567,
"gridProperties": {
"rowCount": 100,
"columnCount": 8
}
}
]
}
```
---
## 🗑️ Пример 5: Очистка данных
### Сценарий
Нужно очистить старые логи перед новым запуском.
### Команда для Claude
```
Очисти мою таблицу:
ID: 1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P
Диапазон для очистки: Sheet1!A2:D1000
(Очисти всё кроме заголовков в первой строке)
```
### Результат
```
Инструмент: clear_sheet
Результат:
{
"success": true,
"clearedRange": "Sheet1!A2:D1000"
}
```
---
## 🔄 Пример 6: Цикл "Читай → Анализируй → Пиши"
### Сценарий
Типичный рабочий процесс:
1. Читаешь данные из таблицы
2. Claude анализирует
3. Пишет результаты обратно
### Команда для Claude
```
Выполни анализ моих данных:
1. Прочитай данные из таблицы (ID: 1A2B3C4D..., диапазон: Sheet1!A1:C100)
2. Найди максимальное, минимальное и среднее значение в колонке C
3. Напиши результаты в:
- Sheet1!E1: "Max Value"
- Sheet1!E2: [результат максимума]
- Sheet1!F1: "Min Value"
- Sheet1!F2: [результат минимума]
- Sheet1!G1: "Average Value"
- Sheet1!G2: [результат среднего]
```
### Что происходит
1. Claude читает данные: `read_sheet`
2. Claude анализирует
3. Claude пишет результаты: `write_sheet`
4. Таблица обновляется в реальном времени ✨
---
## 🎯 Пример 7: GAS скрипт + Claude интеграция
### Сценарий: Мониторинг выполнения скрипта
**Шаг 1: GAS скрипт логирует результаты**
```javascript
function myScript() {
const sheet = SpreadsheetApp.getActiveSheet();
try {
// Твой код
const result = doSomething();
// Логируй результат в таблицу
sheet.appendRow([
new Date(),
"Success",
result,
"Processed 100 rows"
]);
} catch (error) {
sheet.appendRow([
new Date(),
"Error",
error.message,
""
]);
}
}
```
**Шаг 2: Claude читает логи и отлаживает**
```
Прочитай логи из моей таблицы (ID: ..., диапазон: Logs!A:D)
Скажи:
- Сколько успешных запусков?
- Сколько ошибок?
- Какие ошибки были?
- В какой момент начались ошибки?
- Что нужно исправить?
```
**Результат**: Claude видит что произошло и помогает отладить! 🚀
---
## 💡 Пример 8: Диапазоны и форматы
### Различные форматы диапазонов
```
# Одна ячейка
"A1"
# Диапазон в одном листе
"A1:D10"
# С названием листа
"Sheet1!A1:D10"
# Целая колонка
"A:A"
# Целая строка
"1:1"
# Несколько листов (если нужно)
"'My Sheet'!A1:D10" (если имя содержит пробелы)
```
### Примеры команд
```
Прочитай последние 10 строк из колонки A:
"Sheet1!A:A"
Напиши заголовки в первую строку:
range: "A1:D1"
values: [["Name", "Email", "Phone", "Status"]]
Добавь новую запись в конец:
range: "A:A"
values: [["John Doe", "john@example.com", "555-1234", "Active"]]
```
---
## 🚀 Практический пример: Google Forms → Таблица → Claude анализ
### Сценарий
1. Google Form собирает ответы в таблицу
2. Claude анализирует в реальном времени
3. Результаты пишутся в отдельный лист
### Команды для Claude
```
# Шаг 1: Прочитай ответы
Прочитай все ответы из Google Form (таблица ID: ..., диапазон: "Form Responses!A:F")
# Шаг 2: Анализируй
- Сколько всего ответов?
- Какой самый частый ответ на вопрос 1?
- Какие ответы содержат ошибки?
- Кого нужно связаться для уточнения?
# Шаг 3: Пиши результаты
Напиши результаты анализа в "Analysis!A1":
[
["Analysis Results"],
["Total Responses", "50"],
["Most Common Answer", "Option A"],
["Responses with Errors", "3"],
["Follow-up Needed", "Yes"]
]
```
**Результат**: Автоматический анализ данных в реальном времени! 💪
---
## ⚠️ Частые ошибки
### Ошибка 1: Неправильный ID таблицы
```
❌ НЕПРАВИЛЬНО:
"https://docs.google.com/spreadsheets/d/..."
✅ ПРАВИЛЬНО:
"1A2B3C4D5E6F7G8H9I0J1K2L3M4N5O6P"
```
### Ошибка 2: Неправильный формат диапазона
```
❌ НЕПРАВИЛЬНО:
"A1-D10" или "A1..D10"
✅ ПРАВИЛЬНО:
"A1:D10" или "Sheet1!A1:D10"
```
### Ошибка 3: Забыли включить заголовок колонок
```
❌ НЕПРАВИЛЬНО:
range: "A1:D10" (начинаешь с данных)
✅ ПРАВИЛЬНО:
range: "A1:D10" (включи заголовки в первую строку)
```
### Ошибка 4: Забыли дать доступ сервис-аккаунту
```
❌ НЕПРАВИЛЬНО:
Не дал доступ к таблице → "Permission denied"
✅ ПРАВИЛЬНО:
Дал доступ в шаге 8 GOOGLE_CLOUD_SETUP.md
```
---
## 🎓 Советы и трюки
### Совет 1: Используй разные листы для разных целей
```
- "Logs" → логи выполнения скриптов
- "Data" → основные данные
- "Results" → результаты анализа
- "Errors" → ошибки и исключения
```
### Совет 2: Добавляй временные метки
```
values: [
[new Date().toISOString(), "Status", "Details"],
["2025-01-20T10:30:00Z", "Success", "Processed 150 rows"]
]
```
### Совет 3: Пиши в стандартизированном формате
```
values: [
[
"2025-01-20", // Дата
"08:30", // Время
"Script Name", // Имя скрипта
"Success", // Статус
"150 rows processed", // Детали
"5.2 seconds" // Время выполнения
]
]
```
### Совет 4: Используй метаданные для навигации
```
Сначала получи информацию о таблице (get_metadata),
затем используй названия листов в остальных операциях
```
---
## 📞 Если что-то не работает
1. **Проверь ID таблицы** - правильно ли скопировал?
2. **Проверь диапазон** - правильный ли формат?
3. **Проверь права доступа** - дал ли доступ сервис-аккаунту?
4. **Проверь credentials.json** - находится ли он в папке?
5. **Перезагрузи Claude Code** - иногда помогает
**Если всё ещё не работает - спроси меня!** 🆘
---
Готово! Теперь ты знаешь как использовать Google Sheets MCP сервер! 🚀