MCP Tools Reference: sheetsmcp.googleapis.com

Инструмент: 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 (целое число, обязательный): начальный индекс вставки, начиная с 0 (включительно). - end_index (целое число, обязательный): конечный индекс вставки (не включительно). Нумерация начинается с 0. - inherit_from_before (логическое значение, необязательно): нужно ли расширять свойства параметров из параметров до (true) или после (false).

В примере кода ниже показано, как использовать curl для вызова инструмента MCP insert_dimension.

Запрос 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 (Dimension),
  "startIndex": integer,
  "endIndex": integer,
  "inheritFromBefore": boolean
}
Поля
spreadsheetId

string

Обязательно. Идентификатор таблицы, которую нужно обновить.

sheetId

integer

Обязательно. Идентификатор листа, на который нужно вставить данные.

dimension

enum (Dimension)

Обязательно. Параметр, который нужно вставить.

startIndex

integer

Обязательно. Начальный индекс вставки (включительно). Нумерация начинается с 0.

endIndex

integer

Обязательно. Конечный индекс вставки (не включительно). Нумерация начинается с 0.

inheritFromBefore

boolean

Должны ли свойства параметров расширяться из параметров до или после вновь вставленных параметров. True, чтобы наследовать от предыдущих размеров (в этом случае начальный индекс должен быть больше 0), и false, чтобы наследовать от последующих размеров.

Параметр

Указывает, к какому параметру должна применяться операция.

Перечисления
DIMENSION_UNSPECIFIED Значение по умолчанию, не использовать.
COLUMNS Выполняет операции со столбцами листа.
ROWS Выполняет операции со строками таблицы.

Схема вывода

InsertDimensionResponse

JSON-представление
{
  "content": {
    object
  }
}
Поля
content

object (Struct format)

Ответ spreadsheets.batchUpdate в формате JSON Sheets API, а также поле status.

Структура

JSON-представление
{
  "fields": {
    string: value,
    ...
  }
}
Поля
fields

map (key: string, value: value (Value format))

Неупорядоченная карта динамически типизированных значений.

Объект содержит список из нескольких пар ("key": value). Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

JSON-представление
{
  "key": string,
  "value": value
}
Поля
key

string

value

value (Value format)

Значение

JSON-представление
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Поля
Объединенное поле kind. Тип значения. kind может иметь одно из следующих значений:
nullValue

null

Представляет JSON null.

numberValue

number

Представляет число JSON. Не должно быть NaN, Infinity или -Infinity, поскольку они не поддерживаются в JSON. Кроме того, в этом формате нельзя представить большие значения Int64, поскольку формат JSON обычно не поддерживает их в своем числовом типе.

stringValue

string

Представляет строку JSON.

boolValue

boolean

Представляет логическое значение JSON (литерал true или false в JSON).

structValue

object (Struct format)

Представляет объект JSON.

listValue

array (ListValue format)

Представляет массив JSON.

ListValue

JSON-представление
{
  "values": [
    value
  ]
}
Поля
values[]

value (Value format)

Повторяющееся поле динамически типизированных значений.

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/drive
  • https://www.googleapis.com/auth/spreadsheets