MCP Tools Reference: sheetsmcp.googleapis.com

เครื่องมือ: update_spreadsheet

ใช้การอัปเดตอย่างน้อย 1 รายการกับสเปรดชีต

สอดคล้องกับ spreadsheets.batchUpdate ใน REST API: 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: ตั้งค่าการตรวจสอบข้อมูลสำหรับเซลล์อย่างน้อย 1 เซลล์
  • setBasicFilter: ตั้งค่าตัวกรองพื้นฐานในชีต
  • addProtectedRange: เพิ่มช่วงที่ป้องกันไว้
  • updateProtectedRange: อัปเดตช่วงที่ป้องกันไว้
  • deleteProtectedRange: ลบช่วงที่ป้องกันไว้
  • autoResizeDimensions: ปรับขนาดมิติข้อมูลอย่างน้อย 1 รายการโดยอัตโนมัติตามเนื้อหาของเซลล์ในมิติข้อมูลนั้น
  • addChart: เพิ่มแผนภูมิ
  • updateChartSpec: อัปเดตข้อกำหนดของแผนภูมิ
  • updateBanding: อัปเดตช่วงที่มีแถบสี
  • addBanding: เพิ่มช่วงที่มีการแรเงาใหม่
  • deleteBanding: นำช่วงที่มีแถบสีออก
  • createDeveloperMetadata: สร้างข้อมูลเมตาของนักพัฒนาซอฟต์แวร์ใหม่
  • updateDeveloperMetadata: อัปเดตรายการข้อมูลเมตาของนักพัฒนาซอฟต์แวร์ที่มีอยู่
  • deleteDeveloperMetadata: ลบข้อมูลเมตาของนักพัฒนาแอป
  • randomizeRange: สุ่มลำดับแถวในช่วง
  • addDimensionGroup: สร้างกลุ่มในช่วงที่ระบุ
  • deleteDimensionGroup: ลบกลุ่มในช่วงที่ระบุ
  • updateDimensionGroup: อัปเดตสถานะของกลุ่มที่ระบุ
  • trimWhitespace: ตัดช่องว่าง (เช่น ช่องว่าง แท็บ หรือบรรทัดใหม่) ในเซลล์
  • deleteDuplicates: นำแถวที่มีค่าที่ซ้ำกันในคอลัมน์ที่ระบุของช่วงเซลล์ออก
  • updateEmbeddedObjectBorder: อัปเดตเส้นขอบของออบเจ็กต์ที่ฝัง
  • addSlicer: เพิ่มตัวควบคุมตัวกรอง
  • updateSlicerSpec: อัปเดตข้อกำหนดของ Slicer
  • addDataSource: เพิ่มแหล่งข้อมูล
  • updateDataSource: อัปเดตแหล่งข้อมูล
  • deleteDataSource: ลบแหล่งข้อมูล
  • refreshDataSource: รีเฟรชแหล่งข้อมูลอย่างน้อย 1 รายการและ dbobject ที่เชื่อมโยง
  • cancelDataSourceRefresh: ยกเลิกการรีเฟรชแหล่งข้อมูลอย่างน้อย 1 รายการและ 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

ต้องระบุ รหัสของสเปรดชีตที่จะอัปเดต

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
}
ช่อง
ฟิลด์ Union 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 เป็นค่า Sentinel ที่ใช้ Enum ที่มีค่าเพียงค่าเดียวเพื่อแสดงค่า Null สำหรับการรวมประเภท Value

ฟิลด์ประเภท NullValue ที่มีค่าอื่นที่ไม่ใช่ 0 จะถือว่าไม่ถูกต้อง โปรแกรมซีเรียลไลซ์ ProtoJSON ส่วนใหญ่จะส่ง Value ที่มี null_value ตั้งค่าเป็น JSON null โดยไม่คำนึงถึงค่าจำนวนเต็ม และจะส่งกลับค่า 0

Enum
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
}
ช่อง
ฟิลด์ Union 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 เป็นค่า Sentinel ที่ใช้ Enum ที่มีค่าเพียงค่าเดียวเพื่อแสดงค่า Null สำหรับการรวมประเภท Value

ฟิลด์ประเภท NullValue ที่มีค่าอื่นที่ไม่ใช่ 0 จะถือว่าไม่ถูกต้อง โปรแกรมซีเรียลไลซ์ ProtoJSON ส่วนใหญ่จะส่ง Value ที่มี null_value ตั้งค่าเป็น JSON null โดยไม่คำนึงถึงค่าจำนวนเต็ม และจะส่งกลับค่า 0

Enum
NULL_VALUE ค่า Null

คำอธิบายประกอบเครื่องมือ

คำแนะนำที่ทำลายล้าง: ❌ | คำแนะนำที่ทำซ้ำได้: ❌ | คำแนะนำแบบอ่านอย่างเดียว: ❌ | คำแนะนำแบบโลกเปิด: ✅