MCP Tools Reference: sheetsmcp.googleapis.com

Alat: update_spreadsheet

Menerapkan satu atau beberapa pembaruan pada spreadsheet.

Sesuai dengan spreadsheets.batchUpdate di REST API: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

Daftar kemungkinan update adalah:

  • updateSpreadsheetProperties: Memperbarui properti spreadsheet.
  • updateSheetProperties: Memperbarui properti sheet.
  • updateDimensionProperties: Memperbarui properti dimensi.
  • updateNamedRange: Memperbarui rentang bernama.
  • repeatCell: Mengulangi satu sel di seluruh rentang.
  • addNamedRange: Menambahkan rentang bernama.
  • deleteNamedRange: Menghapus rentang bernama.
  • addSheet: Menambahkan sheet.
  • deleteSheet: Menghapus sheet.
  • autoFill: Otomatis mengisi lebih banyak data berdasarkan data yang ada.
  • cutPaste: Memotong data dari satu area dan menempelkannya ke area lain.
  • copyPaste: Menyalin data dari satu area dan menempelkannya ke area lain.
  • mergeCells: Menggabungkan sel.
  • unmergeCells: Memisahkan sel yang digabungkan.
  • updateBorders: Memperbarui batas dalam rentang sel.
  • updateCells: Memperbarui banyak sel sekaligus.
  • addFilterView: Menambahkan tampilan filter.
  • appendCells: Menambahkan sel setelah baris terakhir dengan data dalam sheet.
  • clearBasicFilter: Menghapus filter dasar pada sheet.
  • deleteDimension: Menghapus baris atau kolom dalam sheet.
  • deleteEmbeddedObject: Menghapus objek sematan (misalnya, diagram, gambar) dalam sheet.
  • deleteFilterView: Menghapus tampilan filter dari sheet.
  • duplicateFilterView: Menduplikasi tampilan filter.
  • duplicateSheet: Menduplikasi sheet.
  • findReplace: Menemukan dan mengganti kemunculan beberapa teks dengan teks lain.
  • insertDimension: Menyisipkan baris atau kolom baru dalam sheet.
  • insertRange: Menyisipkan sel baru dalam sheet, menggeser sel yang ada.
  • moveDimension: Memindahkan baris atau kolom ke lokasi lain dalam spreadsheet.
  • updateEmbeddedObjectPosition: Memperbarui posisi objek sematan (misalnya, diagram, gambar).
  • pasteData: Menempelkan data (HTML atau berbatas) ke dalam sheet.
  • textToColumns: Mengonversi kolom teks menjadi banyak kolom teks.
  • updateFilterView: Memperbarui properti tampilan filter.
  • deleteRange: Menghapus rentang sel dari sheet, menggeser sel yang tersisa.
  • appendDimension: Menambahkan dimensi ke bagian akhir sheet.
  • addConditionalFormatRule: Menambahkan aturan format bersyarat baru.
  • updateConditionalFormatRule: Memperbarui aturan format bersyarat yang ada.
  • deleteConditionalFormatRule: Menghapus aturan format bersyarat yang ada.
  • sortRange: Mengurutkan data dalam rentang.
  • setDataValidation: Menetapkan validasi data untuk satu atau beberapa sel.
  • setBasicFilter: Menetapkan filter dasar pada sheet.
  • addProtectedRange: Menambahkan rentang terlindungi.
  • updateProtectedRange: Memperbarui rentang yang dilindungi.
  • deleteProtectedRange: Menghapus rentang yang dilindungi.
  • autoResizeDimensions: Secara otomatis mengubah ukuran satu atau beberapa dimensi berdasarkan konten sel dalam dimensi tersebut.
  • addChart: Menambahkan diagram.
  • updateChartSpec: Memperbarui spesifikasi diagram.
  • updateBanding: Memperbarui rentang berjalur
  • addBanding: Menambahkan rentang berjalur baru
  • deleteBanding: Menghapus rentang yang dikelompokkan
  • createDeveloperMetadata: Membuat metadata developer baru
  • updateDeveloperMetadata: Memperbarui entri metadata developer yang ada
  • deleteDeveloperMetadata: Menghapus metadata developer
  • randomizeRange: Mengacak urutan baris dalam rentang.
  • addDimensionGroup: Membuat grup dalam rentang yang ditentukan.
  • deleteDimensionGroup: Menghapus grup dalam rentang yang ditentukan.
  • updateDimensionGroup: Memperbarui status grup yang ditentukan.
  • trimWhitespace: Memangkas sel yang berisi ruang kosong (seperti spasi, tab, atau baris baru).
  • deleteDuplicates: Menghapus baris yang berisi nilai duplikat dalam kolom tertentu dari rentang sel.
  • updateEmbeddedObjectBorder: Memperbarui batas objek sematan.
  • addSlicer: Menambahkan pemotong.
  • updateSlicerSpec: Memperbarui spesifikasi pengiris.
  • addDataSource: Menambahkan sumber data.
  • updateDataSource: Memperbarui sumber data.
  • deleteDataSource: Menghapus sumber data.
  • refreshDataSource: Memuat ulang satu atau beberapa sumber data dan dbobject terkait.
  • cancelDataSourceRefresh: Membatalkan refresh satu atau beberapa sumber data dan dbobject terkait.
  • addTable: Menambahkan tabel.
  • updateTable: Memperbarui tabel.
  • deleteTable: Permintaan untuk menghapus tabel.

Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP update_spreadsheet.

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

Skema Input

UpdateContentRequest

Representasi JSON
{
  "spreadsheetId": string,
  "requests": [
    {
      object
    }
  ]
}
Kolom
spreadsheetId

string

Wajib. ID spreadsheet yang akan diperbarui.

requests[]

object (Struct format)

Wajib. Daftar pembaruan yang akan diterapkan ke spreadsheet. Setiap permintaan harus berupa objek Permintaan spreadsheets.batchUpdate yang valid, menggunakan skema yang didokumentasikan di: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request Permintaan akan diterapkan dalam urutan yang ditentukan. Jika ada permintaan yang tidak valid, tidak ada permintaan yang akan diterapkan.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

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

Peta tidak berurutan dari nilai yang diketik secara dinamis.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

Nilai

Representasi JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Kolom
Kolom union kind. Jenis nilai. kind hanya dapat berupa salah satu dari berikut:
nullValue

null

Mewakili JSON null.

numberValue

number

Mewakili angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung dalam JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 yang besar, karena format JSON umumnya tidak mendukungnya dalam jenis angka.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Mewakili boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

NullValue

Mewakili JSON null.

NullValue adalah sentinel, menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom berjenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memancarkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, dan akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

Skema Output

Mewakili objek JSON.

Peta key-value yang tidak berurutan, yang dimaksudkan untuk menangkap semantik objek JSON dengan sempurna. Hal ini memungkinkan penguraian payload JSON arbitrer sebagai kolom pesan dalam format ProtoJSON.

Hal ini mengikuti pedoman RFC 8259 untuk JSON yang dapat dioperasikan: terutama jenis ini tidak dapat merepresentasikan nilai Int64 besar atau angka NaN/Infinity, karena format JSON umumnya tidak mendukung nilai tersebut dalam jenis angka.

Jika Anda tidak berniat mengurai JSON arbitrer ke dalam pesan, sebaiknya gunakan pesan yang diketik kustom daripada menggunakan jenis ini.

Struct

Representasi JSON
{
  "fields": {
    string: value,
    ...
  }
}
Kolom
fields

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

Peta tidak berurutan dari nilai yang diketik secara dinamis.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representasi JSON
{
  "key": string,
  "value": value
}
Kolom
key

string

value

value (Value format)

Nilai

Representasi JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Kolom
Kolom union kind. Jenis nilai. kind hanya dapat berupa salah satu dari berikut:
nullValue

null

Mewakili JSON null.

numberValue

number

Mewakili angka JSON. Tidak boleh NaN, Infinity, atau -Infinity, karena tidak didukung dalam JSON. Hal ini juga tidak dapat merepresentasikan nilai Int64 yang besar, karena format JSON umumnya tidak mendukungnya dalam jenis angka.

stringValue

string

Mewakili string JSON.

boolValue

boolean

Mewakili boolean JSON (literal true atau false dalam JSON).

structValue

object (Struct format)

Mewakili objek JSON.

listValue

array (ListValue format)

Mewakili array JSON.

ListValue

Representasi JSON
{
  "values": [
    value
  ]
}
Kolom
values[]

value (Value format)

Kolom berulang dari nilai yang diketik secara dinamis.

NullValue

Mewakili JSON null.

NullValue adalah sentinel, menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.

Kolom berjenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memancarkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, dan akan melakukan perjalanan pulang pergi ke nilai 0.

Enum
NULL_VALUE Nilai null.

Anotasi Alat

Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ❌ | Petunjuk Dunia Terbuka: ✅