MCP Tools Reference: sheetsmcp.googleapis.com

Outil : update_spreadsheet

Applique une ou plusieurs mises à jour à la feuille de calcul.

Correspond à spreadsheets.batchUpdate dans l'API REST : https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

Voici la liste des mises à jour possibles :

  • updateSpreadsheetProperties : met à jour les propriétés de la feuille de calcul.
  • updateSheetProperties : met à jour les propriétés d'une feuille.
  • updateDimensionProperties : met à jour les propriétés des dimensions.
  • updateNamedRange : met à jour une plage nommée.
  • repeatCell : répète une seule cellule sur une plage.
  • addNamedRange : ajoute une plage nommée.
  • deleteNamedRange : supprime une plage nommée.
  • addSheet : ajoute une feuille.
  • deleteSheet : supprime une feuille.
  • autoFill : remplit automatiquement plus de données en fonction des données existantes.
  • cutPaste : coupe des données d'une zone et les colle dans une autre.
  • copyPaste : copie des données d'une zone et les colle dans une autre.
  • mergeCells : fusionne les cellules.
  • unmergeCells : annule la fusion des cellules.
  • updateBorders : met à jour les bordures d'une plage de cellules.
  • updateCells : met à jour plusieurs cellules à la fois.
  • addFilterView : ajoute une vue de filtre.
  • appendCells : ajoute des cellules après la dernière ligne contenant des données dans une feuille.
  • clearBasicFilter : efface le filtre de base d'une feuille.
  • deleteDimension : supprime des lignes ou des colonnes dans une feuille.
  • deleteEmbeddedObject : supprime un objet intégré (graphique, image, etc.) dans une feuille.
  • deleteFilterView : supprime une vue filtrée d'une feuille.
  • duplicateFilterView : duplique une vue filtrée.
  • duplicateSheet : duplique une feuille.
  • findReplace : recherche et remplace des occurrences de texte par un autre texte.
  • insertDimension : insère des lignes ou des colonnes dans une feuille.
  • insertRange : insère de nouvelles cellules dans une feuille, en décalant les cellules existantes.
  • moveDimension : déplace des lignes ou des colonnes vers un autre emplacement dans une feuille.
  • updateEmbeddedObjectPosition : met à jour la position d'un objet intégré (par exemple, un graphique ou une image).
  • pasteData : colle des données (HTML ou délimitées) dans une feuille.
  • textToColumns : convertit une colonne de texte en plusieurs colonnes de texte.
  • updateFilterView : met à jour les propriétés d'une vue filtrée.
  • deleteRange : supprime une plage de cellules d'une feuille et décale les cellules restantes.
  • appendDimension : ajoute des dimensions à la fin d'une feuille.
  • addConditionalFormatRule : ajoute une règle de mise en forme conditionnelle.
  • updateConditionalFormatRule : met à jour une règle de mise en forme conditionnelle existante.
  • deleteConditionalFormatRule : supprime une règle de mise en forme conditionnelle existante.
  • sortRange : trie les données d'une plage.
  • setDataValidation : définit la validation des données pour une ou plusieurs cellules.
  • setBasicFilter : définit le filtre de base sur une feuille.
  • addProtectedRange : ajoute une plage protégée.
  • updateProtectedRange : met à jour une plage protégée.
  • deleteProtectedRange : supprime une plage protégée.
  • autoResizeDimensions : redimensionne automatiquement une ou plusieurs dimensions en fonction du contenu des cellules de cette dimension.
  • addChart : ajoute un graphique.
  • updateChartSpec : met à jour les spécifications d'un graphique.
  • updateBanding : met à jour une plage avec bandes
  • addBanding : ajoute une plage avec bandes
  • deleteBanding : supprime une plage avec bande
  • createDeveloperMetadata : crée des métadonnées de développeur.
  • updateDeveloperMetadata : met à jour une entrée de métadonnées de développeur existante.
  • deleteDeveloperMetadata : supprime les métadonnées du développeur.
  • randomizeRange : mélange l'ordre des lignes d'une plage.
  • addDimensionGroup : crée un groupe sur la plage spécifiée.
  • deleteDimensionGroup : supprime un groupe dans la plage spécifiée.
  • updateDimensionGroup : met à jour l'état du groupe spécifié.
  • trimWhitespace : supprime les espaces (tels que les espaces, les tabulations ou les sauts de ligne) dans les cellules.
  • deleteDuplicates : supprime les lignes contenant des valeurs en double dans les colonnes spécifiées d'une plage de cellules.
  • updateEmbeddedObjectBorder : met à jour la bordure d'un objet intégré.
  • addSlicer : ajoute un sélecteur.
  • updateSlicerSpec : met à jour les spécifications d'un sélecteur.
  • addDataSource : ajoute une source de données.
  • updateDataSource : met à jour une source de données.
  • deleteDataSource : supprime une source de données.
  • refreshDataSource : actualise une ou plusieurs sources de données et les dbobjects associés.
  • cancelDataSourceRefresh : annule l'actualisation d'une ou de plusieurs sources de données et des dbobjects associés.
  • addTable : ajoute un tableau.
  • updateTable : met à jour une table.
  • deleteTable : demande de suppression d'une table.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP update_spreadsheet.

Requête curl
curl --location 'https://sheetsmcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_spreadsheet",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

UpdateContentRequest

Représentation JSON
{
  "spreadsheetId": string,
  "requests": [
    {
      object
    }
  ]
}
Champs
spreadsheetId

string

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

requests[]

object (Struct format)

Obligatoire. Liste des mises à jour à appliquer à la feuille de calcul. Chaque requête doit être un objet spreadsheets.batchUpdate valide, en utilisant le schéma documenté à l'adresse https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request. Les requêtes seront appliquées dans l'ordre dans lequel elles sont spécifiées. Si une demande n'est pas valide, aucune demande ne sera appliquée.

Struct

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

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

Carte non ordonnée de valeurs typées 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 au format 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 numérique.

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 typées 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 de l'union de type 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 null JSON, quelle que soit la valeur entière, et effectuent donc un aller-retour vers une valeur 0.

Enums
NULL_VALUE Valeur nulle.

Schéma de sortie

Représente un objet JSON.

Il s'agit d'une carte clé/valeur non ordonnée, destinée à capturer parfaitement la sémantique d'un objet JSON. Cela permet d'analyser n'importe quelle charge utile JSON arbitraire en tant que champ de message au format ProtoJSON.

Cela suit les consignes de la RFC 8259 pour un format JSON interopérable. Ce type ne peut notamment pas représenter de grandes valeurs Int64 ni des nombres NaN/Infinity, car le format JSON ne prend généralement pas en charge ces valeurs dans son type de nombre.

Si vous n'avez pas l'intention d'analyser du code JSON arbitraire dans votre message, il est préférable d'utiliser un message typé personnalisé plutôt que ce type.

Struct

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

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

Carte non ordonnée de valeurs typées 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 au format 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 numérique.

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 typées 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 de l'union de type 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 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

Indication de destruction : ❌ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication de monde ouvert : ✅