Инструмент: update_values
Задает значения в диапазоне таблицы.
Соответствует spreadsheets.values.update в REST API: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets.values/update.
Схема: - spreadsheet_id (строка, обязательный): идентификатор таблицы, которую нужно обновить. - range (строка, обязательный): нотация A1 для обновляемых значений (например, "Sheet1!A1:B2"). - values (массив массивов, обязательный): двумерный массив значений ячеек. Поддерживаются следующие типы значений: логическое, строка и число (с плавающей запятой/целое).
В примере кода ниже показано, как использовать curl для вызова инструмента MCP update_values.
| Запрос cURL |
|---|
curl --location 'https://sheetsmcp.googleapis.com/mcp/v1' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "update_values", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Схема ввода
UpdateValuesRequest
| JSON-представление |
|---|
{ "spreadsheetId": string, "range": string, "values": [ array ] } |
| Поля | |
|---|---|
spreadsheetId |
Обязательно. Идентификатор таблицы, которую нужно обновить. |
range |
Обязательно. Обозначение A1 обновляемых значений. |
values[] |
Обязательно. Данные, которые были прочитаны или должны быть записаны. Это массив массивов, где внешний массив представляет все данные, а каждый внутренний массив – строку. Каждый элемент во внутреннем массиве соответствует одной ячейке. Поддерживаемые типы значений: bool, string и double. Пустые значения будут пропущены. Чтобы задать для ячейки пустое значение, задайте для строкового значения пустую строку. |
ListValue
| JSON-представление |
|---|
{ "values": [ value ] } |
| Поля | |
|---|---|
values[] |
Повторяющееся поле динамически типизированных значений. |
Значение
| JSON-представление |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Поля | |
|---|---|
Объединенное поле kind. Тип значения. kind может иметь одно из следующих значений: |
|
nullValue |
Представляет JSON |
numberValue |
Представляет число JSON. Не должно быть |
stringValue |
Представляет строку JSON. |
boolValue |
Представляет логическое значение JSON (литерал |
structValue |
Представляет объект JSON. |
listValue |
Представляет массив JSON. |
Структура
| JSON-представление |
|---|
{ "fields": { string: value, ... } } |
| Поля | |
|---|---|
fields |
Неупорядоченная карта динамически типизированных значений. Объект содержит список из нескольких пар ( |
FieldsEntry
| JSON-представление |
|---|
{ "key": string, "value": value } |
| Поля | |
|---|---|
key |
|
value |
|
NullValue
Представляет JSON null.
NullValue – это сигнальное значение, использующее перечисление только с одним значением для представления нулевого значения для объединения типов Value.
Поле типа NullValue с любым значением, кроме 0, считается недопустимым. Большинство сериализаторов ProtoJSON будут выдавать Value с null_value, заданным как null JSON, независимо от целочисленного значения, и поэтому будут округлять до значения 0.
| Перечисления | |
|---|---|
NULL_VALUE |
Нулевое значение. |
Схема вывода
UpdateValuesResponse
| JSON-представление |
|---|
{ "content": { object } } |
| Поля | |
|---|---|
content |
Ответ |
Структура
| JSON-представление |
|---|
{ "fields": { string: value, ... } } |
| Поля | |
|---|---|
fields |
Неупорядоченная карта динамически типизированных значений. Объект содержит список из нескольких пар ( |
FieldsEntry
| JSON-представление |
|---|
{ "key": string, "value": value } |
| Поля | |
|---|---|
key |
|
value |
|
Значение
| JSON-представление |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Поля | |
|---|---|
Объединенное поле kind. Тип значения. kind может иметь одно из следующих значений: |
|
nullValue |
Представляет JSON |
numberValue |
Представляет число JSON. Не должно быть |
stringValue |
Представляет строку JSON. |
boolValue |
Представляет логическое значение JSON (литерал |
structValue |
Представляет объект JSON. |
listValue |
Представляет массив JSON. |
ListValue
| JSON-представление |
|---|
{ "values": [ value ] } |
| Поля | |
|---|---|
values[] |
Повторяющееся поле динамически типизированных значений. |
NullValue
Представляет JSON null.
NullValue – это сигнальное значение, использующее перечисление только с одним значением для представления нулевого значения для объединения типов Value.
Поле типа NullValue с любым значением, кроме 0, считается недопустимым. Большинство сериализаторов ProtoJSON будут выдавать Value с null_value, заданным как null JSON, независимо от целочисленного значения, и поэтому будут округлять до значения 0.
| Перечисления | |
|---|---|
NULL_VALUE |
Нулевое значение. |
Аннотации инструментов
Аннотации инструментов отправляются клиентам MCP, чтобы описать базовый риск, связанный с определенным инструментом. Большинство клиентов считают эти подсказки ненадежными, но их можно использовать, чтобы решить, когда пользователю может быть отправлен запрос на подтверждение.
Помимо строки заголовка, определены следующие логические подсказки:
readOnlyHint: если задано значение true, инструмент не изменяет свою среду. Значение по умолчанию – false.destructiveHint: если задано значение True, инструмент может выполнять деструктивные действия. Если задано значение false, инструмент может выполнять только действия по добавлению. Значение по умолчанию: true.idempotentHint. Если задано значение True, повторный вызов инструмента с теми же аргументами не будет иметь дополнительного эффекта в его среде. Значение по умолчанию – false.openWorldHint: если задано значение true, инструмент может взаимодействовать с открытым миром внешних объектов. Если false, то инструмент может взаимодействовать только с внутренними объектами. Например, инструмент веб-поиска будет открытым миром, а инструмент памяти – нет.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ✅
Области авторизации
Требует одной из следующих областей применения OAuth:
https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.filehttps://www.googleapis.com/auth/spreadsheets