MCP Tools Reference: sheetsmcp.googleapis.com

工具:update_spreadsheet

对电子表格应用一项或多项更新。

对应于 REST API 中的 spreadsheets.batchUpdate:https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

可能的更新列表如下:

  • updateSpreadsheetProperties:更新电子表格的属性。
  • updateSheetProperties:更新工作表的属性。
  • updateDimensionProperties:更新维度的属性。
  • updateNamedRange:更新命名的范围。
  • repeatCell:在某个范围内重复单个单元格。
  • addNamedRange:添加命名的范围。
  • deleteNamedRange:删除命名的范围。
  • addSheet:添加工作表。
  • deleteSheet:删除工作表。
  • autoFill:根据现有数据自动填充更多数据。
  • cutPaste:剪切某个区域的数据并将其粘贴到另一个区域。
  • copyPaste:将数据从一个区域复制到另一个区域。
  • mergeCells:将单元格合并在一起。
  • unmergeCells:取消合并已合并的单元格。
  • updateBorders:更新某个单元格范围内的边框。
  • updateCells:一次更新多个单元格。
  • addFilterView:添加过滤视图。
  • appendCells:将单元格附加到工作表中包含数据的最后一行的后面。
  • clearBasicFilter:清除工作表上的基本过滤条件。
  • deleteDimension:删除工作表中的行或列。
  • deleteEmbeddedObject:删除工作表中的嵌入式对象(例如图表、图片)。
  • deleteFilterView:从工作表中删除过滤视图。
  • duplicateFilterView:复制过滤视图。
  • duplicateSheet:复制工作表。
  • findReplace:查找并替换某些文本。
  • insertDimension:在工作表中插入新行或新列。
  • insertRange:在工作表中插入新单元格,并移动现有单元格。
  • moveDimension:将行或列移到工作表中的其他位置。
  • updateEmbeddedObjectPosition:更新嵌入式对象(例如图表、图片)的位置。
  • pasteData:将数据(HTML 或分隔数据)粘贴到工作表中。
  • textToColumns:将文本列转换为多个文本列。
  • updateFilterView:更新过滤视图的属性。
  • deleteRange:从工作表中删除一定范围的单元格,并移动剩余的单元格。
  • appendDimension:将维度附加到工作表的末尾。
  • addConditionalFormatRule:添加新的条件格式规则。
  • updateConditionalFormatRule:更新现有的条件格式规则。
  • deleteConditionalFormatRule:删除现有的条件格式规则。
  • sortRange:对某个范围中的数据进行排序。
  • setDataValidation:为一个或多个单元格设置数据验证。
  • setBasicFilter:在工作表上设置基本过滤条件。
  • addProtectedRange:添加受保护的范围。
  • updateProtectedRange:更新受保护的范围。
  • deleteProtectedRange:删除受保护的范围。
  • autoResizeDimensions:根据相应维度中单元格的内容自动调整一个或多个维度的大小。
  • addChart:添加图表。
  • updateChartSpec:更新图表的规范。
  • updateBanding:更新分段范围
  • addBanding:添加新的分级范围
  • deleteBanding:移除分段范围
  • createDeveloperMetadata:创建新的开发者元数据
  • updateDeveloperMetadata:更新现有的开发者元数据条目
  • deleteDeveloperMetadata:删除开发者元数据
  • randomizeRange:随机化某个范围内各行的顺序。
  • addDimensionGroup:在指定范围内创建群组。
  • deleteDimensionGroup:删除指定范围内的群组。
  • updateDimensionGroup:更新指定群组的状态。
  • trimWhitespace:去除单元格中的空格(例如空格、制表符或换行符)。
  • deleteDuplicates:移除单元格范围的指定列中包含重复值的行。
  • updateEmbeddedObjectBorder:更新嵌入式对象的边框。
  • addSlicer:添加切片器。
  • updateSlicerSpec:更新切片器的规范。
  • addDataSource:添加数据源。
  • updateDataSource:更新数据源。
  • deleteDataSource:删除数据源。
  • refreshDataSource:刷新一个或多个数据源及关联的数据库对象。
  • cancelDataSourceRefresh:取消一个或多个数据源及关联的 dbobject 的刷新。
  • addTable:添加表格。
  • updateTable:更新表格。
  • deleteTable:用于删除表的请求。

以下示例演示了如何使用 curl 调用 update_spreadsheet MCP 工具。

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

输入架构

UpdateContentRequest

JSON 表示法
{
  "spreadsheetId": string,
  "requests": [
    {
      object
    }
  ]
}
字段
spreadsheetId

string

必需。要更新的电子表格的 ID。

requests[]

object (Struct format)

必需。要应用于电子表格的更新列表。每个请求都应是一个有效的 spreadsheets.batchUpdate 请求对象,使用文档中记录的架构:https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request。系统将按指定顺序应用请求。如果任何请求无效,则不会应用任何请求。

结构体

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 数字。不得为 NaNInfinity-Infinity,因为 JSON 不支持这些值。此类型也无法表示较大的 Int64 值,因为 JSON 格式通常不支持在其数字类型中使用这些值。

stringValue

string

表示 JSON 字符串。

boolValue

boolean

表示 JSON 布尔值(JSON 中的 truefalse 字面量)。

structValue

object (Struct format)

表示 JSON 对象。

listValue

array (ListValue format)

表示 JSON 数组。

ListValue

JSON 表示法
{
  "values": [
    value
  ]
}
字段
values[]

value (Value format)

动态类型值的重复字段。

NullValue

表示 JSON null

NullValue 是一个标记,使用仅包含一个值的枚举来表示 Value 类型联合的 null 值。

如果类型为 NullValue 的字段的值不是 0,则视为无效。大多数 ProtoJSON 序列化程序都会发出一个 Value,并将 null_value 设置为 JSON null,无论整数值是多少,因此都会往返于 0 值。

枚举
NULL_VALUE Null 值。

输出架构

表示 JSON 对象。

一个无序的键值对映射,旨在完美捕获 JSON 对象的语义。这样一来,便可将任何任意 JSON 载荷解析为 ProtoJSON 格式的消息字段。

这遵循了 RFC 8259 中有关可互操作 JSON 的准则:值得注意的是,此类型无法表示较大的 Int64 值或 NaN/Infinity 数字,因为 JSON 格式通常不支持其数字类型中的这些值。

如果您不打算将任意 JSON 解析到消息中,则应首选自定义类型的消息,而不是使用此类型。

结构体

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 数字。不得为 NaNInfinity-Infinity,因为 JSON 不支持这些值。此类型也无法表示较大的 Int64 值,因为 JSON 格式通常不支持在其数字类型中使用这些值。

stringValue

string

表示 JSON 字符串。

boolValue

boolean

表示 JSON 布尔值(JSON 中的 truefalse 字面量)。

structValue

object (Struct format)

表示 JSON 对象。

listValue

array (ListValue format)

表示 JSON 数组。

ListValue

JSON 表示法
{
  "values": [
    value
  ]
}
字段
values[]

value (Value format)

动态类型值的重复字段。

NullValue

表示 JSON null

NullValue 是一个标记,使用仅包含一个值的枚举来表示 Value 类型联合的 null 值。

如果类型为 NullValue 的字段的值不是 0,则视为无效。大多数 ProtoJSON 序列化程序都会发出一个 Value,并将 null_value 设置为 JSON null,无论整数值是多少,因此都会往返于 0 值。

枚举
NULL_VALUE Null 值。

工具注释

破坏性提示:❌ | 幂等性提示:❌ | 只读提示:❌ | 开放世界提示:✅