Инструмент: insert_dimension
Вставляет строки или столбцы в таблицу по определенному индексу.
Соответствует запросу InsertDimensionRequest в REST API spreadsheets.batchUpdate: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request.
Схема: spreadsheet_id (строка, обязательный параметр). Идентификатор таблицы, которую нужно обновить. - sheet_id (целое число, обязательно): идентификатор листа, в который нужно вставить данные. – dimension (строка, обязательно): "ROWS" или "COLUMNS". - start_index (целое число, обязательно) – начальный индекс вставки (включительно), отсчитываемый от нуля. – end_index (целое число, обязательно): конечный индекс вставки (не включительно). Нумерация начинается с 0. - inherit_from_before (логическое значение, необязательный параметр) – нужно ли расширять свойства параметра на параметры до (true) или после (false) него.
В приведенном ниже фрагменте кода показано, как использовать curl для вызова инструмента insert_dimension MCP.
| Запрос 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": "insert_dimension", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Схема ввода
InsertDimensionRequest
| JSON-представление |
|---|
{
"spreadsheetId": string,
"sheetId": integer,
"dimension": enum ( |
| Поля | |
|---|---|
spreadsheetId |
Обязательно. Идентификатор таблицы, которую нужно обновить. |
sheetId |
Обязательно. Идентификатор листа, в который нужно вставить данные. |
dimension |
Обязательно. Параметр, который нужно вставить. |
startIndex |
Обязательно. Начальный индекс вставки (включительно), отсчитываемый от нуля. |
endIndex |
Обязательно. Конечный индекс вставки (не включительно). Нумерация начинается с 0. |
inheritFromBefore |
Нужно ли распространять свойства параметров на новые параметры до или после их добавления. Если значение равно true, размеры наследуются от предыдущих измерений (в этом случае начальный индекс должен быть больше 0). Если значение равно false, размеры наследуются от последующих измерений. |
Параметр
Указывает, к какому параметру должна применяться операция.
| Перечисления | |
|---|---|
DIMENSION_UNSPECIFIED |
Значение по умолчанию, не используйте. |
COLUMNS |
Работает со столбцами таблицы. |
ROWS |
Работает со строками таблицы. |
Схема вывода
Представляет объект JSON.
Неупорядоченная карта "ключ-значение", которая точно передает семантику объекта JSON. Это позволяет анализировать любую полезную нагрузку JSON как поле сообщения в формате ProtoJSON.
Это соответствует рекомендациям RFC 8259 для совместимого JSON: в частности, этот тип не может представлять большие значения Int64 или числа NaN/Infinity, поскольку формат JSON обычно не поддерживает эти значения в своем числовом типе.
Если вы не планируете анализировать произвольный код JSON в своем сообщении, вместо этого типа следует использовать специальное типизированное сообщение.
Структура
| 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, заданным как JSON null, независимо от целочисленного значения, и поэтому будут выполнять преобразование в значение 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/spreadsheets