MCP Tools Reference: sheetsmcp.googleapis.com

Herramienta: insert_dimension

Inserta filas o columnas en una hoja en un índice específico.

Corresponde a un InsertDimensionRequest en la API de REST spreadsheets.batchUpdate: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request

Esquema: - spreadsheet_id (cadena, obligatorio): Es el ID de la hoja de cálculo que se actualizará. - sheet_id (número entero, obligatorio): Es el ID de la hoja en la que se insertará. - dimension (cadena, obligatorio): "ROWS" o "COLUMNS". - start_index (número entero, obligatorio): Es el índice de inicio de la inserción basado en 0 (inclusive). - end_index (número entero, obligatorio): Es el índice de finalización de la inserción basado en 0 (exclusivo). - inherit_from_before (booleano, opcional): Indica si las propiedades de la dimensión se deben extender desde las dimensiones anteriores (true) o posteriores (false).

En la siguiente muestra de código, se indica cómo usar curl para llamar a la herramienta de MCP insert_dimension.

Solicitud de 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
}'

Esquema de entrada

InsertDimensionRequest

Representación JSON
{
  "spreadsheetId": string,
  "sheetId": integer,
  "dimension": enum (Dimension),
  "startIndex": integer,
  "endIndex": integer,
  "inheritFromBefore": boolean
}
Campos
spreadsheetId

string

Obligatorio. Es el ID de la hoja de cálculo que se actualizará.

sheetId

integer

Obligatorio. Es el ID de la hoja en la que se insertará.

dimension

enum (Dimension)

Obligatorio. Es la dimensión que se insertará.

startIndex

integer

Obligatorio. Es el índice de inicio basado en 0 de la inserción (inclusive).

endIndex

integer

Obligatorio. Es el índice final basado en 0 de la inserción (exclusivo).

inheritFromBefore

boolean

Indica si las propiedades de las dimensiones se deben extender desde las dimensiones anteriores o posteriores a las dimensiones recién insertadas. Es verdadero para heredar de las dimensiones anteriores (en cuyo caso el índice de inicio debe ser mayor que 0) y falso para heredar de las dimensiones posteriores.

Dimensión

Indica a qué dimensión se debe aplicar una operación.

Enums
DIMENSION_UNSPECIFIED Es el valor predeterminado, no lo uses.
COLUMNS Opera en las columnas de una hoja.
ROWS Opera en las filas de una hoja.

Esquema de salida

InsertDimensionResponse

Representación JSON
{
  "content": {
    object
  }
}
Campos
content

object (Struct format)

La respuesta spreadsheets.batchUpdate, en el formato JSON de la API de Sheets, más un campo status.

Struct

Representación JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

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

Es un mapa sin ordenar de valores con tipo dinámico.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representación JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

Valor

Representación JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Campos
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes:
nullValue

null

Representa un null JSON.

numberValue

number

Representa un número JSON. No debe ser NaN, Infinity ni -Infinity, ya que no se admiten en JSON. Tampoco puede representar valores Int64 grandes, ya que el formato JSON, por lo general, no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un booleano JSON (literal true o false en JSON).

structValue

object (Struct format)

Representa un objeto JSON.

listValue

array (ListValue format)

Representa un array JSON.

ListValue

Representación JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Es un campo repetido de valores con tipo dinámico.

NullValue

Representa un null JSON.

NullValue es un centinela que usa una enumeración con un solo valor para representar el valor nulo de la unión de tipos Value.

Un campo de tipo NullValue con cualquier valor que no sea 0 se considera no válido. La mayoría de los serializadores de ProtoJSON emitirán un Value con un null_value establecido como un null de JSON, independientemente del valor entero, por lo que se realizará un recorrido de ida y vuelta a un valor 0.

Enums
NULL_VALUE Valor nulo.

Anotaciones de herramientas

Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se puede enviar un mensaje de confirmación a un usuario.

Junto con la cadena de título, las siguientes sugerencias booleanas se definen de la siguiente manera:

  • readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.
  • destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.
  • idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.
  • openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.

Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ✅

Alcances de la autorización

Se necesita uno de los siguientes alcances de OAuth:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/spreadsheets