You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(sheets): expose spreadsheets.batchUpdate for formatting and structural edits #450
The sheets service exposes only read tools (getText, getRange, getMetadata). There is no tool to apply any formatting or structural edit to a spreadsheet — bold, colors, number formats, borders, column widths, text wrapping, frozen rows, conditional formatting, merges, or sheet properties.
Grounded in the source: the sheets.write feature group in feature-config.ts is empty (tools: []) and defaultEnabled: false, so no write tool is registered. The underlying Google spreadsheets.batchUpdate endpoint is only called internally (to build addSheet/deleteSheet requests); it is not surfaced as a tool. Any attempt to apply formatting via batchUpdate therefore has no MCP tool to route to.
This is distinct from #291 (Sheets write/create support), which covered value/structure write operations. Formatting is a separate, still-missing primitive.
What I expected
A tool that exposes spreadsheets.batchUpdate so formatting and structural edits can be applied — matching the precedent of slides.updateShapeProperties, which takes a JSON request string plus a field mask.
Register it as a write tool in index.ts and add it to the sheets.write group in feature-config.ts, flipping the group defaultEnabled: true consistent with the other write groups.
Coupled test updates for the two tests that encoded the old sheets.write = OFF default, plus new batchUpdate coverage.
Activity
tmack8001 commentedon Oct 28, 2026
/assign
tmack8001 commentedon Oct 28, 2026
Fix in flight: #449 (from fork
tmack8001/workspace). Cross-repo PRs don't auto-close via the keyword, so linking here explicitly.