MCP Tools Reference: sheetsmcp.googleapis.com

Công cụ: update_spreadsheet

Áp dụng một hoặc nhiều nội dung cập nhật cho bảng tính.

Tương ứng với spreadsheets.batchUpdate trong API REST: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/batchUpdate

Danh sách các bản cập nhật có thể có là:

  • updateSpreadsheetProperties: Cập nhật các thuộc tính của bảng tính. Giản đồ:
  • properties (đối tượng, bắt buộc): Các thuộc tính của bảng tính cần cập nhật ({"title": string, "locale": string, "timeZone": string}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các thuộc tính cần cập nhật (ví dụ: "title" hoặc "*").
  • updateSheetProperties: Cập nhật các thuộc tính của trang tính. Giản đồ:
  • properties (đối tượng, bắt buộc): Thuộc tính trang tính ({"sheetId": int, "title": string, "index": int, "gridProperties": {"rowCount": int, "columnCount": int, "frozenRowCount": int, "frozenColumnCount": int, "hideGridlines": bool}, "hidden": bool, "tabColorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các thuộc tính cần cập nhật (ví dụ: "title", "gridProperties.frozenRowCount").
  • updateDimensionProperties: Cập nhật các thuộc tính của phương diện (ví dụ: chiều cao hàng hoặc chiều rộng cột). Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi phương diện ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • properties (đối tượng, bắt buộc): Thuộc tính phương diện ({"pixelSize": int, "hiddenByUser": bool}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các thuộc tính cần cập nhật (ví dụ: "pixelSize").
  • updateNamedRange: Cập nhật dải ô được đặt tên. Giản đồ:
  • namedRange (đối tượng, bắt buộc): Định nghĩa dải ô được đặt tên ({"namedRangeId": string, "name": string, "range": {"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các trường cần cập nhật (ví dụ: "name,range" hoặc "*").
  • repeatCell: Lặp lại một ô trong một dải ô. Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi lưới để áp dụng dữ liệu/định dạng ô ({"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}).
  • cell (đối tượng, bắt buộc): Dữ liệu ô ({"userEnteredValue": {"stringValue": str, "numberValue": float, "formulaValue": str}, "userEnteredFormat": {"textFormat": {"bold": bool, "italic": bool, "fontSize": int}, "backgroundColorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}, "horizontalAlignment": "LEFT"|"CENTER"|"RIGHT", "wrapStrategy": "WRAP"|"CLIP"|"OVERFLOW_CELL"}}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các trường ô cần cập nhật (ví dụ: "userEnteredFormat.textFormat.bold" hoặc "userEnteredValue").
  • addNamedRange: Thêm dải ô được đặt tên. Giản đồ:
  • namedRange (đối tượng, bắt buộc): Dải ô được đặt tên cần thêm ({"namedRangeId": string (optional), "name": string, "range": {"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}}).
  • deleteNamedRange: Xoá một dải ô được đặt tên theo mã nhận dạng của dải ô đó. Giản đồ:
  • namedRangeId (chuỗi, bắt buộc): Mã nhận dạng của dải ô được đặt tên cần xoá.
  • addSheet: Thêm trang tính. Giản đồ:
  • properties (đối tượng, không bắt buộc): Thuộc tính trang tính ({"title": string, "sheetId": int (optional), "index": int (optional), "gridProperties": {"rowCount": int, "columnCount": int}}).
  • deleteSheet: Xoá một trang tính. Giản đồ:
  • sheetId (số nguyên, bắt buộc): Mã nhận dạng của trang tính cần xoá.
  • autoFill: Tự động điền thêm dữ liệu dựa trên dữ liệu hiện có. Giản đồ:
  • range (đối tượng, không bắt buộc): Dải ô cần kiểm tra và điền vào ({"sheetId": int, "startRowIndex": int, "endRowIndex": int, "startColumnIndex": int, "endColumnIndex": int}).
  • sourceAndDestination (đối tượng, không bắt buộc): Nguồn rõ ràng và độ dài lấp đầy ({"source": GridRange, "dimension": "ROWS"|"COLUMNS", "fillLength": int}).
  • useAlternateSeries (boolean, không bắt buộc): Có sử dụng chuỗi thay thế hay không.
  • cutPaste: Cắt dữ liệu từ một vùng và dán vào một vùng khác. Giản đồ:
  • source (đối tượng, bắt buộc): Dải ô lưới nguồn.
  • destination (đối tượng, bắt buộc): Toạ độ đích trên cùng bên trái ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
  • pasteType (chuỗi, không bắt buộc): "PASTE_NORMAL", "PASTE_VALUES", "PASTE_FORMAT", "PASTE_NO_BORDERS", "PASTE_FORMULA".
  • copyPaste: Sao chép dữ liệu từ một vùng và dán vào một vùng khác. Giản đồ:
  • source (đối tượng, bắt buộc): Dải ô lưới nguồn.
  • destination (đối tượng, bắt buộc): Phạm vi lưới đích.
  • pasteType (chuỗi, không bắt buộc): "PASTE_NORMAL", "PASTE_VALUES", "PASTE_FORMAT", "PASTE_NO_BORDERS", "PASTE_FORMULA".
  • pasteOrientation (chuỗi, không bắt buộc): "NORMAL" hoặc "TRANSPOSE".
  • mergeCells: Hợp nhất các ô với nhau. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới cần hợp nhất.
  • mergeType (chuỗi, bắt buộc): "MERGE_ALL", "MERGE_COLUMNS" hoặc "MERGE_ROWS".
  • unmergeCells: Huỷ hợp nhất các ô đã hợp nhất. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới để huỷ hợp nhất tất cả các ô.
  • updateBorders: Cập nhật đường viền trong một dải ô. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới để cập nhật đường viền.
  • top / bottom / left / right / innerHorizontal / innerVertical (đối tượng, không bắt buộc): Kiểu đường viền ({"style": "SOLID"|"DASHED"|"DOTTED"|"DOUBLE"|"NONE", "width": int, "colorStyle": {"rgbColor": {"red": float, "green": float, "blue": float}}}).
  • updateCells: Cập nhật nhiều ô cùng một lúc. Giản đồ:
  • Khu vực (bắt buộc phải có đúng một khu vực):
    • start (đối tượng): Toạ độ trên cùng bên trái ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
    • range (đối tượng): Dải ô trong lưới.
  • rows (mảng RowData, bắt buộc): Các hàng ô ([{"values": [{"userEnteredValue": {"stringValue": str, "numberValue": float, "formulaValue": str}}]}]).
  • fields (chuỗi, bắt buộc): Mặt nạ trường của các trường ô cần cập nhật (ví dụ: "userEnteredValue" hoặc "userEnteredFormat").
  • addFilterView: Thêm chế độ xem bộ lọc. Giản đồ:
  • filter (đối tượng, bắt buộc): Định nghĩa chế độ xem bộ lọc ({"title": string, "range": GridRange, "criteria": map, "sortSpecs": list}).
  • appendCells: Thêm các ô sau hàng cuối cùng có dữ liệu trong một trang tính. Giản đồ:
  • sheetId (số nguyên, bắt buộc): Mã trang tính để thêm dữ liệu vào.
  • rows (mảng RowData, bắt buộc): Các hàng dữ liệu cần nối.
  • fields (chuỗi, bắt buộc): Mặt nạ trường (ví dụ: "userEnteredValue").
  • clearBasicFilter: Xoá bộ lọc cơ bản trên một trang tính. Giản đồ:
  • sheetId (số nguyên, bắt buộc): Mã trang tính để xoá bộ lọc cơ bản.
  • deleteDimension: Xoá các hàng hoặc cột trong một trang tính. Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi phương diện cần xoá ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • deleteEmbeddedObject: Xoá một đối tượng được nhúng (ví dụ: biểu đồ, hình ảnh) trong một trang tính. Giản đồ:
  • objectId (số nguyên, bắt buộc): Mã của đối tượng được nhúng cần xoá.
  • deleteFilterView: Xoá chế độ xem bộ lọc khỏi trang tính. Giản đồ:
  • filterId (số nguyên, bắt buộc): Mã của chế độ xem bộ lọc cần xoá.
  • duplicateFilterView: Tạo bản sao của một chế độ xem bộ lọc. Giản đồ:
  • filterId (số nguyên, bắt buộc): Mã nhận dạng của chế độ xem bộ lọc cần sao chép.
  • duplicateSheet: Sao chép một trang tính. Giản đồ:
  • sourceSheetId (số nguyên, bắt buộc): Mã trang tính cần sao chép.
  • insertSheetIndex (số nguyên, không bắt buộc): Chỉ mục bắt đầu từ 0, nơi cần chèn trang tính mới.
  • newSheetId (số nguyên, không bắt buộc): Mã nhận dạng cho trang tính mới.
  • newSheetName (chuỗi, không bắt buộc): Tên của trang tính mới.
  • findReplace: Tìm và thay thế các lần xuất hiện của một số văn bản bằng văn bản khác. Giản đồ:
  • find (chuỗi, bắt buộc): Giá trị cần tìm.
  • replacement (chuỗi, bắt buộc): Giá trị thay thế.
  • Phạm vi (bắt buộc phải có đúng một phạm vi):
    • range (đối tượng): Dải ô trong lưới.
    • sheetId (số nguyên): Mã trang tính.
    • allSheets (boolean): true để tìm kiếm tất cả các trang tính.
  • matchCase / matchEntireCell / searchByRegex / includeFormulas (boolean, không bắt buộc).
  • insertDimension: Chèn hàng hoặc cột mới vào trang tính. Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi phương diện cần chèn ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • inheritFromBefore (boolean, không bắt buộc): true để kế thừa định dạng từ hàng/cột trước đó.
  • insertRange: Chèn các ô mới vào trang tính, dịch chuyển các ô hiện có. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô lưới để chèn ô vào.
  • shiftDimension (chuỗi, bắt buộc): "ROWS" hoặc "COLUMNS".
  • moveDimension: Di chuyển hàng hoặc cột đến một vị trí khác trong trang tính. Giản đồ:
  • source (đối tượng, bắt buộc): Dải ô phương diện nguồn ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • destinationIndex (số nguyên, bắt buộc): Chỉ mục đích đến dựa trên số 0.
  • updateEmbeddedObjectPosition: Cập nhật vị trí của đối tượng được nhúng (ví dụ: biểu đồ, hình ảnh). Giản đồ:
  • objectId (số nguyên, bắt buộc): Mã nhận dạng của đối tượng được nhúng.
  • newPosition (đối tượng, bắt buộc): Vị trí mới ({"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}, "widthPixels": int, "heightPixels": int}}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường (ví dụ: "overlayPosition.anchorCell").
  • pasteData: Dán dữ liệu (HTML hoặc được phân tách) vào một trang tính. Giản đồ:
  • coordinate (đối tượng, bắt buộc): Toạ độ trên cùng bên trái ({"sheetId": int, "rowIndex": int, "columnIndex": int}).
  • data (chuỗi, bắt buộc): Văn bản được phân tách hoặc dữ liệu HTML.
  • delimiter (chuỗi, không bắt buộc) hoặc html (boolean, không bắt buộc).
  • type (chuỗi, không bắt buộc): "PASTE_NORMAL", "PASTE_VALUES", v.v.
  • textToColumns: Chuyển đổi một cột văn bản thành nhiều cột văn bản. Giản đồ:
  • source (đối tượng, bắt buộc): Dải ô lưới một cột.
  • delimiterType (chuỗi, bắt buộc): "COMMA", "SEMICOLON", "PERIOD", "SPACE", "CUSTOM", "AUTODETECT".
  • delimiter (chuỗi, không bắt buộc): Ký tự phân tách khi delimiterType là "CUSTOM".
  • updateFilterView: Cập nhật các thuộc tính của một chế độ xem bộ lọc. Giản đồ:
  • filter (đối tượng, bắt buộc): Định nghĩa chế độ xem bộ lọc, bao gồm cả filterViewId.
  • fields (chuỗi, bắt buộc): Mặt nạ trường (ví dụ: "title,criteria" hoặc "*").
  • deleteRange: Xoá một dải ô khỏi trang tính, đồng thời dịch chuyển các ô còn lại. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô lưới cần xoá.
  • shiftDimension (chuỗi, bắt buộc): "ROWS" hoặc "COLUMNS".
  • appendDimension: Thêm các phương diện vào cuối trang tính. Giản đồ:
  • sheetId (số nguyên, bắt buộc): Mã trang tính.
  • dimension (chuỗi, bắt buộc): "ROWS" hoặc "COLUMNS".
  • length (số nguyên, bắt buộc): Số hàng hoặc cột cần thêm.
  • addConditionalFormatRule: Thêm một quy tắc định dạng có điều kiện mới. Giản đồ:
  • rule (đối tượng, bắt buộc): Quy tắc định dạng có điều kiện ({"ranges": [GridRange], "booleanRule": {"condition": {"type": "NUMBER_GREATER_THAN_EQ"|"TEXT_CONTAINS"|..., "values": [{"userEnteredValue": string}]}, "format": CellFormat}, "gradientRule": {...}}).
  • index (số nguyên, không bắt buộc): Chỉ mục dựa trên số 0, nơi cần chèn quy tắc.
  • updateConditionalFormatRule: Cập nhật quy tắc định dạng có điều kiện hiện có. Giản đồ:
  • rule (đối tượng, bắt buộc): Quy tắc định dạng có điều kiện mới.
  • Chỉ mục/Mã quy tắc (bắt buộc phải có một):
    • index (số nguyên): Chỉ mục dựa trên số 0 của quy tắc.
    • sheetId (số nguyên): Mã trang tính nếu cập nhật theo chỉ mục trang tính.
  • newIndex (số nguyên, không bắt buộc): Chỉ mục mới để di chuyển quy tắc.
  • deleteConditionalFormatRule: Xoá một quy tắc định dạng có điều kiện hiện có. Giản đồ:
  • index (số nguyên, bắt buộc): Chỉ mục bắt đầu từ 0 của quy tắc cần xoá.
  • sheetId (số nguyên, bắt buộc): Mã trang tính của quy tắc.
  • sortRange: Sắp xếp dữ liệu trong một dải ô. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới cần sắp xếp.
  • sortSpecs (mảng SortSpec, bắt buộc): Quy cách sắp xếp ([{"dimensionIndex": int, "sortOrder": "ASCENDING"|"DESCENDING"}]).
  • setDataValidation: Đặt quy tắc xác thực dữ liệu cho một hoặc nhiều ô. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới.
  • rule (đối tượng, không bắt buộc): Quy tắc xác thực ({"condition": {"type": "ONE_OF_LIST"|"NUMBER_BETWEEN"|..., "values": [{"userEnteredValue": string}]}, "strict": bool, "showCustomUi": bool}). Nếu bạn bỏ qua, quy tắc xác thực sẽ bị xoá.
  • setBasicFilter: Đặt bộ lọc cơ bản trên một trang tính. Giản đồ:
  • filter (đối tượng, bắt buộc): Định nghĩa bộ lọc cơ bản ({"range": GridRange, "criteria": map, "sortSpecs": list}).
  • addProtectedRange: Thêm một dải ô được bảo vệ. Giản đồ:
  • protectedRange (đối tượng, bắt buộc): Định nghĩa dải ô được bảo vệ ({"range": GridRange, "description": string, "warningOnly": bool, "editors": {"users": [string]}}).
  • updateProtectedRange: Cập nhật dải ô được bảo vệ. Giản đồ:
  • protectedRange (đối tượng, bắt buộc): Định nghĩa dải ô được bảo vệ bằng protectedRangeId.
  • fields (chuỗi, bắt buộc): Mặt nạ trường (ví dụ: "description,warningOnly" hoặc "*").
  • deleteProtectedRange: Xoá một dải ô được bảo vệ. Giản đồ:
  • protectedRangeId (số nguyên, bắt buộc): Mã nhận dạng của dải ô được bảo vệ cần xoá.
  • autoResizeDimensions: Tự động đổi kích thước một hoặc nhiều chiều dựa trên nội dung của ô. Giản đồ:
  • dimensions (đối tượng, bắt buộc): Phạm vi phương diện ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • addChart: Thêm biểu đồ. Giản đồ:
  • chart (đối tượng, bắt buộc): Định nghĩa biểu đồ ({"spec": {"title": string, "basicChart": {"chartType": "COLUMN"|"BAR"|"LINE"|"PIE"|"COMBO"|"SCATTER", "legendPosition": string, "axis": list, "domains": list, "series": list}}, "position": {"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}}}}).
  • updateChartSpec: Cập nhật thông số kỹ thuật của biểu đồ. Giản đồ:
  • chartId (số nguyên, bắt buộc): Mã nhận dạng của biểu đồ.
  • spec (đối tượng, bắt buộc): Quy cách biểu đồ mới.
  • updateBanding: Cập nhật dải ô có dải màu. Giản đồ:
  • bandedRange (đối tượng, bắt buộc): Định nghĩa dải ô có dải màu với bandedRangeId.
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • addBanding: Thêm một dải ô có dải màu mới. Giản đồ:
  • bandedRange (đối tượng, bắt buộc): Định nghĩa dải ô có dải màu ({"range": GridRange, "rowProperties": {"headerColorStyle": ColorStyle, "firstBandColorStyle": ColorStyle, "secondBandColorStyle": ColorStyle}}).
  • deleteBanding: Xoá dải ô có dải màu. Giản đồ:
  • bandedRangeId (số nguyên, bắt buộc): Mã nhận dạng của dải ô có dải màu cần xoá.
  • createDeveloperMetadata: Tạo siêu dữ liệu mới của nhà phát triển. Giản đồ:
  • developerMetadata (đối tượng, bắt buộc): Định nghĩa siêu dữ liệu ({"metadataKey": string, "metadataValue": string, "location": {"locationType": "ROW"|"COLUMN"|"SHEET"|"SPREADSHEET", "sheetId": int}, "visibility": "DOCUMENT"|"PROJECT"}).
  • updateDeveloperMetadata: Cập nhật một mục siêu dữ liệu hiện có của nhà phát triển. Giản đồ:
  • dataFilters (mảng DataFilter, bắt buộc): Bộ lọc để chọn siêu dữ liệu.
  • developerMetadata (đối tượng, bắt buộc): Giá trị siêu dữ liệu đã cập nhật.
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • deleteDeveloperMetadata: Xoá siêu dữ liệu của nhà phát triển. Giản đồ:
  • dataFilter (đối tượng, bắt buộc): Bộ lọc mô tả tiêu chí cho siêu dữ liệu cần xoá.
  • randomizeRange: Sắp xếp ngẫu nhiên thứ tự của các hàng trong một dải ô. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới cần xáo trộn.
  • addDimensionGroup: Tạo một nhóm trên dải ô được chỉ định. Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi phương diện cần nhóm ({"sheetId": int, "dimension": "ROWS"|"COLUMNS", "startIndex": int, "endIndex": int}).
  • deleteDimensionGroup: Xoá một nhóm trong dải ô đã chỉ định. Giản đồ:
  • range (đối tượng, bắt buộc): Phạm vi phương diện của nhóm cần xoá.
  • updateDimensionGroup: Cập nhật trạng thái của nhóm được chỉ định. Giản đồ:
  • dimensionGroup (đối tượng, bắt buộc): Định nghĩa nhóm ({"range": DimensionRange, "depth": int, "collapsed": bool}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường (ví dụ: "collapsed").
  • trimWhitespace: Cắt bỏ khoảng trắng trong ô (chẳng hạn như dấu cách, thẻ hoặc dòng mới). Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô trong lưới có các ô cần cắt bớt.
  • deleteDuplicates: Xoá các hàng chứa giá trị trùng lặp trong các cột được chỉ định của một dải ô. Giản đồ:
  • range (đối tượng, bắt buộc): Dải ô lưới để xoá các bản sao.
  • comparisonColumns (mảng DimensionRange, không bắt buộc): Các cột cụ thể cần phân tích.
  • updateEmbeddedObjectBorder: Cập nhật đường viền của đối tượng được nhúng. Giản đồ:
  • objectId (số nguyên, bắt buộc): Mã nhận dạng của đối tượng được nhúng.
  • border (đối tượng, bắt buộc): Định nghĩa đường viền ({"colorStyle": ColorStyle, "section": "ALL"}).
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • addSlicer: Thêm bộ cắt. Giản đồ:
  • slicer (đối tượng, bắt buộc): Định nghĩa về bộ cắt ({"spec": {"dataRange": GridRange, "columnIndex": int, "title": string}, "position": {"overlayPosition": {"anchorCell": {"sheetId": int, "rowIndex": int, "columnIndex": int}}}}).
  • updateSlicerSpec: Cập nhật thông số kỹ thuật của bộ cắt. Giản đồ:
  • slicerId (số nguyên, bắt buộc): Mã nhận dạng của bộ cắt dữ liệu.
  • spec (đối tượng, bắt buộc): Quy cách mới của bộ cắt.
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • addDataSource: Thêm nguồn dữ liệu. Giản đồ:
  • dataSource (đối tượng, bắt buộc): Định nghĩa nguồn dữ liệu ({"spec": {"bigQuery": {"projectId": string, "query": string}}}).
  • updateDataSource: Cập nhật nguồn dữ liệu. Giản đồ:
  • dataSource (đối tượng, bắt buộc): Định nghĩa nguồn dữ liệu bằng dataSourceId.
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • deleteDataSource: Xoá một nguồn dữ liệu. Giản đồ:
  • dataSourceId (chuỗi, bắt buộc): Mã nhận dạng của nguồn dữ liệu cần xoá.
  • refreshDataSource: Làm mới một hoặc nhiều nguồn dữ liệu và các đối tượng cơ sở dữ liệu liên quan. Giản đồ:
  • dataSourceId (chuỗi, không bắt buộc) hoặc isAll (boolean, không bắt buộc) hoặc references (đối tượng, không bắt buộc).
  • force (boolean, không bắt buộc): Có buộc làm mới hay không.
  • cancelDataSourceRefresh: Huỷ làm mới một hoặc nhiều nguồn dữ liệu và đối tượng cơ sở dữ liệu liên quan. Giản đồ:
  • dataSourceId (chuỗi, không bắt buộc) hoặc isAll (boolean, không bắt buộc) hoặc references (đối tượng, không bắt buộc).
  • addTable: Thêm bảng. Giản đồ:
  • table (đối tượng, bắt buộc): Định nghĩa bảng ({"range": GridRange, "name": string, "hasHeaderRow": bool, "hasTotalsRow": bool}).
  • updateTable: Cập nhật bảng. Giản đồ:
  • table (đối tượng, bắt buộc): Định nghĩa bảng có tableId.
  • fields (chuỗi, bắt buộc): Mặt nạ trường.
  • deleteTable: Yêu cầu xoá bảng. Giản đồ:
  • tableId (chuỗi, bắt buộc): Mã của bảng cần xoá.
  • insertComment: Chèn nhận xét vào bảng tính. Giản đồ:
  • content (chuỗi, bắt buộc): Nội dung bình luận bằng văn bản thuần túy.
  • coordinate (đối tượng, bắt buộc): Toạ độ lưới trong trang tính để neo nhận xét:
    • sheetId (số nguyên, bắt buộc): Mã trang tính.
    • rowIndex (số nguyên, bắt buộc): Chỉ mục hàng dựa trên số 0.
    • columnIndex (số nguyên, bắt buộc): Chỉ mục cột bắt đầu từ 0.
  • assigneeEmailAddress (chuỗi, không bắt buộc): Địa chỉ email của người được giao nhận xét.
  • addCommentReply: Thêm câu trả lời vào một chuỗi nhận xét hiện có. Cũng được dùng để giải quyết hoặc mở lại một chuỗi tin nhắn. Giản đồ:
  • commentId (chuỗi, bắt buộc): Mã nhận dạng của chuỗi bình luận.
  • post (đối tượng, bắt buộc):
    • content (chuỗi, bắt buộc trừ phi commentAction là RESOLVE hoặc REOPEN): Nội dung văn bản thuần túy của bài đăng trả lời.
    • commentAction (chuỗi, không bắt buộc): Hành động được thực hiện với thư trả lời này ("RESOLVE" hoặc "REOPEN").
    • assigneeEmail (chuỗi, không bắt buộc): Địa chỉ email để chỉ định chuỗi thư mới.
  • updateCommentPost: Cập nhật nội dung của một bài đăng bình luận trong một chuỗi nhận xét. Giản đồ:
  • commentId (chuỗi, bắt buộc): Mã nhận dạng của chuỗi bình luận.
  • postId (chuỗi, bắt buộc): Mã nhận dạng của bài đăng bình luận cần cập nhật.
  • content (chuỗi, bắt buộc): Nội dung mới của bài đăng bình luận.
  • deleteComment: Xoá một chuỗi nhận xét. Giản đồ:
  • commentId (chuỗi, bắt buộc): Mã nhận dạng của chuỗi bình luận cần xoá.
  • deleteCommentReply: Xoá bài đăng trả lời. Giản đồ:
  • commentId (chuỗi, bắt buộc): Mã nhận dạng của chuỗi bình luận.
  • postId (chuỗi, bắt buộc): Mã của bài đăng trả lời cần xoá.

Mã mẫu sau đây cho biết cách sử dụng curl để gọi công cụ MCP update_spreadsheet.

Yêu cầu 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": "update_spreadsheet",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Giản đồ đầu vào

UpdateContentRequest

Biểu diễn dưới dạng JSON
{
  "spreadsheetId": string,
  "requests": [
    {
      object
    }
  ],
  "writeControl": {
    object (WriteControl)
  }
}
Trường
spreadsheetId

string

Bắt buộc. Mã của bảng tính cần cập nhật.

requests[]

object (Struct format)

Bắt buộc. Danh sách các nội dung cập nhật cần áp dụng cho bảng tính. Mỗi yêu cầu phải là một đối tượng Request hợp lệ của spreadsheets.batchUpdate, sử dụng giản đồ được ghi lại trong: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request Các yêu cầu sẽ được áp dụng theo thứ tự được chỉ định. Nếu có yêu cầu không hợp lệ, thì không yêu cầu nào được áp dụng.

writeControl

object (WriteControl)

Không bắt buộc. Cung cấp quyền kiểm soát cách thực thi các yêu cầu ghi.

Cấu trúc

Biểu diễn dưới dạng JSON
{
  "fields": {
    string: value,
    ...
  }
}
Trường
fields

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

Bản đồ không theo thứ tự của các giá trị được nhập động.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Biểu diễn dưới dạng JSON
{
  "key": string,
  "value": value
}
Trường
key

string

value

value (Value format)

Giá trị

Biểu diễn dưới dạng JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Trường
Trường nhóm kind. Loại giá trị. kind chỉ có thể là một trong những trạng thái sau:
nullValue

null

Đại diện cho một null JSON.

numberValue

number

Biểu thị một số JSON. Không được là NaN, Infinity hoặc -Infinity vì JSON không hỗ trợ các giá trị này. Điều này cũng không thể biểu thị các giá trị Int64 lớn, vì định dạng JSON thường không hỗ trợ các giá trị này trong kiểu số.

stringValue

string

Biểu thị một chuỗi JSON.

boolValue

boolean

Biểu thị một boolean JSON (true hoặc false giá trị cố định trong JSON).

structValue

object (Struct format)

Đại diện cho một đối tượng JSON.

listValue

array (ListValue format)

Biểu thị một mảng JSON.

ListValue

Biểu diễn dưới dạng JSON
{
  "values": [
    value
  ]
}
Trường
values[]

value (Value format)

Trường lặp lại của các giá trị được nhập động.

WriteControl

Biểu diễn dưới dạng JSON
{

  "requiredRevisionId": string
}
Trường
Trường nhóm control. Xác định bản sửa đổi của bảng tính cần ghi vào và cách yêu cầu sẽ hoạt động nếu bản sửa đổi đó không phải là bản sửa đổi hiện tại của bảng tính. control chỉ có thể là một trong những trạng thái sau:
requiredRevisionId

string

Mã bản sửa đổi của bảng tính mà yêu cầu ghi sẽ được áp dụng. Nếu đây không phải là bản sửa đổi mới nhất của tài liệu, thì yêu cầu sẽ không được xử lý và sẽ trả về lỗi 400 yêu cầu không hợp lệ.

Khi mã bản sửa đổi bắt buộc được trả về trong một phản hồi, mã này cho biết mã bản sửa đổi của bảng tính sau khi yêu cầu được áp dụng.

NullValue

Đại diện cho một null JSON.

NullValue là một sentinel, sử dụng enum chỉ có một giá trị để biểu thị giá trị rỗng cho hợp kiểu Value.

Trường thuộc loại NullValue có giá trị khác với 0 được coi là không hợp lệ. Hầu hết các trình chuyển đổi tuần tự ProtoJSON sẽ phát ra một Value có null_value được đặt làm JSON null bất kể giá trị số nguyên, và do đó sẽ khứ hồi thành giá trị 0.

Enum
NULL_VALUE Giá trị rỗng.

Giản đồ đầu ra

UpdateContentResponse

Biểu diễn dưới dạng JSON
{
  "content": {
    object
  }
}
Trường
content

object (Struct format)

Phản hồi spreadsheets.batchUpdate, ở định dạng JSON của API Trang tính, cộng với trường status.

Cấu trúc

Biểu diễn dưới dạng JSON
{
  "fields": {
    string: value,
    ...
  }
}
Trường
fields

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

Bản đồ không theo thứ tự của các giá trị được nhập động.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Biểu diễn dưới dạng JSON
{
  "key": string,
  "value": value
}
Trường
key

string

value

value (Value format)

Giá trị

Biểu diễn dưới dạng JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Trường
Trường nhóm kind. Loại giá trị. kind chỉ có thể là một trong những trạng thái sau:
nullValue

null

Đại diện cho một null JSON.

numberValue

number

Biểu thị một số JSON. Không được là NaN, Infinity hoặc -Infinity vì JSON không hỗ trợ các giá trị này. Điều này cũng không thể biểu thị các giá trị Int64 lớn, vì định dạng JSON thường không hỗ trợ các giá trị này trong kiểu số.

stringValue

string

Biểu thị một chuỗi JSON.

boolValue

boolean

Biểu thị một boolean JSON (true hoặc false giá trị cố định trong JSON).

structValue

object (Struct format)

Đại diện cho một đối tượng JSON.

listValue

array (ListValue format)

Biểu thị một mảng JSON.

ListValue

Biểu diễn dưới dạng JSON
{
  "values": [
    value
  ]
}
Trường
values[]

value (Value format)

Trường lặp lại của các giá trị được nhập động.

NullValue

Đại diện cho một null JSON.

NullValue là một sentinel, sử dụng enum chỉ có một giá trị để biểu thị giá trị rỗng cho hợp kiểu Value.

Trường thuộc loại NullValue có giá trị khác với 0 được coi là không hợp lệ. Hầu hết các trình chuyển đổi tuần tự ProtoJSON sẽ phát ra một Value có null_value được đặt làm JSON null bất kể giá trị số nguyên, và do đó sẽ khứ hồi thành giá trị 0.

Enum
NULL_VALUE Giá trị rỗng.

Chú thích về công cụ

Chú thích về công cụ được gửi đến ứng dụng MCP để mô tả rủi ro cơ bản của một công cụ nhất định. Hầu hết ứng dụng đều coi những gợi ý này là không đáng tin cậy, nhưng có thể dùng chúng để quyết định thời điểm gửi lời nhắc xác nhận cho người dùng.

Cùng với chuỗi tiêu đề, các gợi ý boolean sau đây được xác định như sau:

  • readOnlyHint: Nếu đúng, công cụ sẽ không sửa đổi môi trường của nó. Mặc định: false.
  • destructiveHint: Nếu đúng, thì công cụ có thể thực hiện các hành động có tính huỷ diệt. Nếu là false, thì công cụ chỉ có thể thực hiện các hành động bổ sung. Mặc định: true.
  • idempotentHint: Nếu đúng, thì việc gọi công cụ nhiều lần với cùng một đối số sẽ không có thêm hiệu ứng nào đối với môi trường của công cụ. Mặc định: false.
  • openWorldHint: Nếu đúng, thì công cụ có thể tương tác với "thế giới mở" của các thực thể bên ngoài. Nếu là false, thì công cụ chỉ có thể tương tác với các thực thể nội bộ. Ví dụ: công cụ tìm kiếm trên web sẽ là công cụ thế giới mở, còn công cụ ghi nhớ sẽ không phải là công cụ thế giới mở.

Gợi ý về hành động huỷ diệt: ❌ | Gợi ý về hành động không thay đổi giá trị: ❌ | Gợi ý về hành động chỉ đọc: ❌ | Gợi ý về hành động thế giới mở: ✅

Phạm vi cấp phép

Yêu cầu một trong các phạm vi OAuth sau:

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