MCP Tools Reference: sheetsmcp.googleapis.com

Outil : insert_dimension

Insère des lignes ou des colonnes dans une feuille à un index particulier.

Correspond à une requête InsertDimensionRequest dans l'API REST spreadsheets.batchUpdate : https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request

Schéma : - spreadsheet_id (chaîne, obligatoire) : ID de la feuille de calcul à mettre à jour. - sheet_id (entier, obligatoire) : ID de la feuille dans laquelle insérer les données. - dimension (chaîne, obligatoire) : "ROWS" ou "COLUMNS". - start_index (entier, obligatoire) : index de début de l'insertion (inclusif), basé sur zéro. - end_index (entier, obligatoire) : index de fin de l'insertion (exclusif), basé sur zéro. - inherit_from_before (booléen, facultatif) : indique si les propriétés de dimension doivent être étendues à partir des dimensions avant (true) ou après (false).

L'exemple de code suivant montre comment utiliser curl pour appeler l'outil MCP insert_dimension.

Requête 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
}'

Schéma d'entrée

InsertDimensionRequest

Représentation JSON
{
  "spreadsheetId": string,
  "sheetId": integer,
  "dimension": enum (Dimension),
  "startIndex": integer,
  "endIndex": integer,
  "inheritFromBefore": boolean
}
Champs
spreadsheetId

string

Obligatoire. ID de la feuille de calcul à mettre à jour.

sheetId

integer

Obligatoire. ID de la feuille dans laquelle insérer les données.

dimension

enum (Dimension)

Obligatoire. Dimension à insérer.

startIndex

integer

Obligatoire. Index de début de l'insertion (basé sur 0, inclus).

endIndex

integer

Obligatoire. Index de fin de l'insertion (exclusif, basé sur 0).

inheritFromBefore

boolean

Indique si les propriétés de dimension doivent être étendues à partir des dimensions avant ou après les dimensions nouvellement insérées. "True" pour hériter des dimensions précédentes (auquel cas l'index de départ doit être supérieur à 0) et "False" pour hériter des dimensions suivantes.

Dimension

Indique la dimension à laquelle une opération doit s'appliquer.

Enums
DIMENSION_UNSPECIFIED Valeur par défaut, ne pas utiliser.
COLUMNS Opère sur les colonnes d'une feuille.
ROWS Opère sur les lignes d'une feuille.

Schéma de sortie

InsertDimensionResponse

Représentation JSON
{
  "content": {
    object
  }
}
Champs
content

object (Struct format)

La réponse spreadsheets.batchUpdate, au format JSON de l'API Sheets, plus un champ status.

Struct

Représentation JSON
{
  "fields": {
    string: value,
    ...
  }
}
Champs
fields

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

Mappage non ordonné de valeurs saisies de manière dynamique.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Représentation JSON
{
  "key": string,
  "value": value
}
Champs
key

string

value

value (Value format)

Valeur

Représentation JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Champs
Champ d'union kind. Type de valeur. kind ne peut être qu'un des éléments suivants :
nullValue

null

Représente un null JSON.

numberValue

number

Représente un nombre JSON. Ne doit pas être NaN, Infinity ni -Infinity, car ces valeurs ne sont pas acceptées en JSON. Il ne peut pas non plus représenter de grandes valeurs Int64, car le format JSON ne les accepte généralement pas dans son type de nombre.

stringValue

string

Représente une chaîne JSON.

boolValue

boolean

Représente une valeur booléenne JSON (littéral true ou false en JSON).

structValue

object (Struct format)

Représente un objet JSON.

listValue

array (ListValue format)

Représente un tableau JSON.

ListValue

Représentation JSON
{
  "values": [
    value
  ]
}
Champs
values[]

value (Value format)

Champ répété de valeurs saisies de manière dynamique.

NullValue

Représente un null JSON.

NullValue est une sentinelle qui utilise une énumération avec une seule valeur pour représenter la valeur nulle pour l'union de types Value.

Un champ de type NullValue avec une valeur autre que 0 est considéré comme non valide. La plupart des sérialiseurs ProtoJSON émettent un Value avec un null_value défini comme un null JSON, quelle que soit la valeur entière, et effectuent donc un aller-retour vers une valeur 0.

Enums
NULL_VALUE Valeur nulle.

Annotations d'outils

Les annotations d'outil sont envoyées aux clients MCP pour décrire le risque de base d'un outil donné. La plupart des clients considèrent ces indications comme non fiables, mais elles peuvent être utilisées pour décider quand envoyer une invite de confirmation à un utilisateur.

En plus de la chaîne de titre, les indices booléens suivants sont définis comme suit :

  • readOnlyHint : si la valeur est "true", l'outil ne modifie pas son environnement. Valeur par défaut : "false".
  • destructiveHint : si la valeur est "true", l'outil peut effectuer des actions destructrices. Si la valeur est "false", l'outil ne peut effectuer que des actions d'ajout. Valeur par défaut : "true".
  • idempotentHint : si la valeur est "true", l'appel répété de l'outil avec les mêmes arguments n'aura aucun effet supplémentaire sur son environnement. Valeur par défaut : "false".
  • openWorldHint : si la valeur est "true", l'outil peut interagir avec un "monde ouvert" d'entités externes. Si la valeur est "false", l'outil ne peut interagir qu'avec des entités internes. Par exemple, un outil de recherche sur le Web serait en monde ouvert, tandis qu'un outil de mémoire ne le serait pas.

Indice "Destructeur" : ❌ | Indice "Idempotent" : ❌ | Indice "Lecture seule" : ❌ | Indice "Monde ouvert" : ✅

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

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